Commit graph

29 commits

Author SHA1 Message Date
Henrik Rydgård
4ea7f46f81 Atrac3+: Try to work around Code Lyoko issue
Now we don't generate an error code when the channel configuration doesn't match the packets.

See the code comment for what I've been able to figure out so far.

See issue #19994
2025-02-19 12:46:25 -06:00
Henrik Rydgård
d04074a542 Atrac3 (not +): Keep decoding even on broken frames.
Fixes some music in some unofficial game mods, whose music got broken
in 1.18. Was reported through e-mail by Miguel.
2025-01-04 01:11:26 +01:00
Henrik Rydgård
e5d28975fa Fix playback of mono Atrac3+ tracks in videos
This is rare, but does occur: #19782

I missed that setChannels could happen late in my refactor (#19033)
2025-01-03 17:28:29 +01:00
Henrik Rydgård
70cb1104dc Kirk: Remove use of uninitialized stack as a random number source
This confused Valgrind and made me think we had another memory bug.

Turns out this is NOT the cause of #13781, which I still don't
understand.
2024-07-16 22:04:41 +02:00
Henrik Rydgård
e01ca5b057
Logging API change (refactor) (#19324)
* Rename LogType to Log

* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.

* Mac/ARM64 buildfix

* Do the same with the hle result log macros

* Rename the log names to mixed case while at it.

* iOS buildfix

* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Henrik Rydgård
510cf1891b Random UWP text bugfix. Some warning fixes. 2024-06-05 12:38:43 +02:00
Henrik Rydgård
a653939380 Avoid crashing when atrac3 decoders fail to init due to bad params. Fixes Kosmodrones (though no music). 2024-06-03 12:01:42 +02:00
Henrik Rydgård
e5baebf139 Prevent a buffer overflow at the end of Atrac tracks.
Fixes #19177
2024-05-27 12:36:19 +02:00
Henrik Rydgård
1b366afa35 Refactor: Change *outBytes to *outSamples in AudioDecoder::Decode. 2024-04-16 15:31:11 +02:00
Henrik Rydgård
d402068745 Fix mono output from Atrac decoders. (sceAtrac*MOut* functions) 2024-04-15 11:50:32 +02:00
Henrik Rydgård
effae82208 sceAtrac: Do some renaming to make things make more sense 2024-04-13 10:35:39 +02:00
Henrik Rydgård
a1ac79c183 Remove all remaining FFMPEG use from sceAtrac. 2024-04-13 00:45:25 +02:00
Henrik Rydgård
39b884cfb3 Atrac3/3+: Improve error handling 2024-04-12 11:18:26 +02:00
Henrik Rydgård
ff372f878d Minor code cleanup 2024-04-11 16:54:29 +02:00
Henrik Rydgård
5ed77b58ca Improve the AudioDecoder API to avoid having to call a function to get the bytes consumed 2024-04-11 16:49:00 +02:00
Henrik Rydgård
45936e8826 Atrac: Add "flush_buffers" api. The ffmpeg atrac decoder was missing this. 2024-04-11 16:35:27 +02:00
Henrik Rydgård
58cb2ba804 Fix playback of atrac3+ when block align not specified 2024-04-11 16:10:31 +02:00
Henrik Rydgård
b35b351802 Finally remove the AVCodecContext 2024-04-11 14:50:29 +02:00
Henrik Rydgård
6ea8efc0e9 Bypass AvCodecContext for atrac3plus, for a simpler API. 2024-04-11 14:39:59 +02:00
Henrik Rydgård
bf280eb410 Remove "SetExtraData" from AudioDecoder, pass in the data at creation instead 2024-04-11 14:39:59 +02:00
Henrik Rydgård
416ba81d20 Remove the channel_layout stuff 2024-04-11 14:39:59 +02:00
Henrik Rydgård
e871133fe6 Buildfixes 2024-04-11 14:39:59 +02:00
Henrik Rydgård
0d30728832 Remove context parameter from av_log 2024-04-11 14:39:59 +02:00
Henrik Rydgård
e10b90b718 Switch at3_standalone to C++ to avoid namespace clashes 2024-04-11 14:39:59 +02:00
Henrik Rydgård
d617aec8c8 Simplify away AVFrame from decoding functions, remove buffer pools 2024-04-11 14:39:59 +02:00
Henrik Rydgård
08d5de9f4c Remove opt, dict, more 2024-04-11 14:39:59 +02:00
Henrik Rydgård
c6c67695b1 Hook up ATRAC3 too 2024-04-11 14:39:59 +02:00
Henrik Rydgård
8fbc4a3379 Ultra-gross hackery, but works! Now, need to pare it down, heavily... 2024-04-11 14:39:59 +02:00
Henrik Rydgård
c902973688 Setup more of the setup 2024-04-11 14:39:59 +02:00