Commit Graph

15 Commits

Author SHA1 Message Date
marecl
f83619e313 Fixed green artifacts in movies/animations (ffmpeg) (#3398)
* Fixed green artifacts in movies/animations (ffmpeg)

* cleanup&clang

* Avoid for-loop when source and target widths are equal
2025-08-06 22:08:59 +03:00
kalaposfos13
499451bb80 Standardize RegisterLib names for HLE libraries (#3234) 2025-07-16 12:23:03 +03:00
Stephen Miller
0a58ead5f6 Add alternate code paths for handling legacy struct behavior in sceVideodec2GetPictureInfo (#3154)
Older games aren't fond of how our sceVideodec2GetPictureInfo implementation outputs AVC picture info after the struct size increase.
Adding the old struct, and additional code using it for these games works around this problem.
2025-06-26 20:16:23 +03:00
Stephen Miller
69a50fa713 Struct update fixes (#3087)
Neither sceVideodec2Decode or sceVideodec2Flush should be modifying the output's `thisSize`, doing so breaks older games now that we have the updated structs.
We should also only set frameFormat and framePitchInBytes if the game inputted the newer struct, since otherwise we're modifying memory the game never gave us.
These changes might fix the regression in Hatsune Miku Project Diva X, though it's hard to tell due to some weird caching issue with Windows, and the ancient regression this game had on Linux.
2025-06-11 22:22:34 +03:00
Stephen Miller
b49340dff8 libSceVideodec2: Update structs to match newer firmwares (#3077)
* Update file_system.cpp

* libSceVideodec2 struct fixes

Our code was based on an old version of the libSceVideodec2 library. Based on what I've decompiled, these structs changed somewhere around firmware 6.50, and newer versions of the library have these flexible checks to accommodate both variants of the structs.

* Static assert for AvcPictureInfo struct

All the other Videodec2 structs have static asserts, might as well use one here too.

* Initialize new values

Set proper values for frameFormat and framePitchInBytes.
`frame->linesize[0]` appears to be in bytes already, I'm not sure if that means framePitch is being set wrong though.
2025-06-10 13:22:50 -07:00
georgemoralis
7eea1fc4d6 log error for videodec ,videodec2 (#2900) 2025-05-10 23:29:23 +03:00
squidbus
9bad66b24d hotfix: Raise videodec memory back up to 16MB.
Found a game that needs more, still should be low enough compared to before to fix some games.
2025-01-29 01:32:12 -08:00
squidbus
8379922f8a hotfix: Reduce requested videodec memory block sizes.
This really needs a more accurate implementation, but for the stub lowering the value helps games that run out of memory space if it is too large.
2025-01-28 02:33:17 -08:00
Daniel R.
c284cf72e1 Switch remaining CRLF terminated files to LF 2024-12-24 13:56:31 +01:00
Ada Ahmed
dad5953e8c fix: fix #1457 again by moving av_err2str to a common header (#1688) 2024-12-08 00:52:03 +02:00
TheTurtle
5b6e0ab238 core: Library cleanup (#1631)
* core: Split error codes into separate files

* Reduces build times and is cleaner

* core: Bring structs and enums to codebase style

* core: More style changes
2024-11-30 22:37:36 +02:00
squidbus
0c52d02043 videodec: Lower sceVideodecDecode log to trace. (#1527) 2024-11-13 18:04:13 +01:00
georgemoralis
7ab851592b Videocodec implementation (#1484)
* dummy videocodec

* filled videodec parameters

* vdec1 implementation

* clang format fix

* fixed codecType

* added crop offset info

* align output

* align all h/w

* some touchups

* small touch (last one)
2024-11-10 11:33:08 +02:00
Daniel R.
29183354cc libraries/videodec: Fix build errors with av_err2str 2024-11-02 19:11:57 +01:00
Daniel R.
9d6eee6acf core/libraries: Videodec2 implementation (#1241) 2024-10-24 18:39:31 +02:00