Commit Graph

297 Commits

Author SHA1 Message Date
bnnm
7e27445f85 Enable EALayer3 bit reservoir fix (needs libmpg123 1.25.8+) 2017-12-03 17:27:13 +01:00
bnnm
48795333e1 Fix mpeg_bytes_to_samples in newer libmpg123, by saving initial info 2017-12-03 17:24:32 +01:00
bnnm
6072d17f50 Add EA MicroTalk decoder [FIFA 2001 PS2, Ultima IX voices] 2017-12-03 13:44:55 +01:00
bnnm
94de52ec2d Clean EA-XA and fix some subsongs (don't use channel_start_offset)
Also fix 'sample' type shadowing and Maxis-XA skipping a frame in mono
2017-12-03 01:37:56 +01:00
bnnm
b9c3bd9a01 Add Neversoft .OGG [Gun (GC)] 2017-12-02 16:33:43 +01:00
bnnm
8f8b14f80f Fix EALayer3 multichannel and looping bugs 2017-12-01 20:04:33 +01:00
bnnm
7d9e5a93e4 Make MPEG custom decoder use their own data buffer instead sharing one
In rare cases (ex. EALayer3) mpg123 may need several passes to feed one
stream's data buffer, and meanwhile other streams would overwrite it
2017-12-01 20:02:30 +01:00
bnnm
d12a5bd294 Fix EALayer3 v1b and v2 2017-12-01 17:32:12 +01:00
bnnm
e2c059bc31 Add EA .SNS+SNR / .SPS [Burnout Crash, NFS Hot Pursuit PS3] 2017-12-01 17:27:49 +01:00
bnnm
d0be7e0c36 Minor tweaks/comments/renames/etc 2017-11-25 00:43:18 +01:00
bnnm
2a312e8562 Fix memset not memsetting all channels on failure 2017-11-24 23:42:11 +01:00
bnnm
b371f1de73 Reorder IMA code a bit so it's easier to simplify in the future 2017-11-24 21:23:01 +01:00
bnnm
8363e26b88 Unify IMA/IMA_int with standard IMA decoder + add stereo IMA 2017-11-19 03:32:21 +01:00
bnnm
ea634ad473 Add 3DS IMA for BCSTM and fix old IMA regression (HWAS/SWAV/SAD/AUD/etc)
Standard IMA algorithm was changed for BCSTM, subtly altering regular
IMA's waveforms (not too audible). Now this 3DS variation is separate.
2017-11-18 22:25:44 +01:00
bnnm
8f6c76364c Fix standard IMA segfault when external init is wrong 2017-11-18 02:06:51 +01:00
bnnm
4a2cf9dd91 Fuse EACS and DVI IMA decoder into a configurable IMA decoder
EACS was just DVI (high nibble first) with stereo and mono modes, while
old DVI was mono only.
This unifies both decoders, so DVI_IMA (not interleaved) works with mono
and stereo while DVI_IMA_int (interleaved) forces mono.
Some metas needed to explicitly set DVI_IMA_int but others work with no
change.
2017-11-17 17:18:17 +01:00
bnnm
4dfbc3cf6a Improve CD-XA detection and RIFF-less support; minor XA code cleanup 2017-11-16 19:47:42 +01:00
bnnm
56cb2a98bd Fix some multichannel MPEG FSB4 [Transformers: Fall of Cybertron (PC)] 2017-11-05 17:32:55 +01:00
bnnm
66be677f56 Add Ubisoft .sb0..N + ss0/ls0..N banks + Ubisoft ADPCM [Ubi PoP trilogy] 2017-11-05 17:06:40 +01:00
bnnm
801383382d Add util to open stream in the same dir 2017-11-05 17:05:39 +01:00
bnnm
1ff0cecca8 Fix minor compiler warnings (missing const/static/case defaults/etc) 2017-10-28 01:34:32 +02:00
bnnm
e6cb6facbc Fix coding_XBOX_int so it properly works with any interleave; comments 2017-10-27 18:56:34 +02:00
bnnm
d09dc9739b Add encrypted ATRAC3 BGW [Final Fantasy XI PC] 2017-10-27 18:50:06 +02:00
bnnm
4d4307ae9a Fix/clarify rare custom FFmpeg seek bug 2017-10-27 18:09:43 +02:00
bnnm
7f8f315660 Minor comment (FSB MPEG garbage at the beginning seems normal) 2017-10-27 18:08:09 +02:00
bnnm
229783f5f0 Make decoder init functions for G722.1/G719 2017-10-14 12:41:59 +02:00
bnnm
c770490b3d Add AL2 meta + A-law decoder [Conquest of Elysium 3 (PC)] 2017-10-08 17:51:54 +02:00
bnnm
874694bd0a Tweak XMA1 and Wwise XWMA sample counts, XMA2 looping, XMA1 channels 2017-10-08 17:34:07 +02:00
bnnm
16786b78d4 Add .opus [Lego City Undercover] 2017-09-30 01:27:47 +02:00
bnnm
abaefd17cd Rename wwise_opus to switch_opus as it's apparently so 2017-09-30 00:16:40 +02:00
bnnm
c63866aad6 Fix Wwise Opus abrupt end 2017-09-29 23:29:06 +02:00
bnnm
8aae6ed794 Fix multichannel EA-XMA [Dante's Inferno (X360)] 2017-09-29 23:28:27 +02:00
bnnm
0bb62ce57d Minor comments/documentation 2017-09-29 23:26:42 +02:00
bnnm
f25d559f68 Add Wwise Opus 2017-09-24 18:55:25 +02:00
bnnm
a8370b4892 Add EA-XMA for EA SNU [Dante's Inferno (X360)]
only 1/2ch works correctly as multichannel layout need to be
investigated
2017-09-24 18:52:09 +02:00
bnnm
be8357926d Fix compiling with codecs disabled 2017-09-24 18:45:39 +02:00
bnnm
6da7a86cc4 Add FFmpeg custom IO callbacks for data transmogrifiers
Those are custom read/seeks that can transform data on the fly, for
games that use variations of regular FFmpeg codecs. When FFmpeg tries to
read N bytes, the code may read less/more but still fill the buffer with
N transformed bytes. Must handle "real" (data) and "virtual"
(transformed) offset/sizes.

Works with fake headers too, but "virtual" offset/size now include the
fake header, as I found hard to keep in mind when the header_size was
being added/substracted (could be clearer).
2017-09-24 18:40:59 +02:00
bnnm
952962f91b Fix AWC MP3 channel desync in some songs [Red Read Redemption (PS3)] 2017-09-17 03:36:01 +02:00
bnnm
9ed189ffe8 Fix Ogg leak 2017-09-17 03:35:24 +02:00
bnnm
ab4e1234d9 Remove unneeded MT info 2017-08-28 20:42:37 +02:00
bnnm
41b22c2699 Add AWC PCM/IMA (non-encrypted only) [GTA5 (PC)] 2017-08-28 16:07:09 +02:00
bnnm
953022b983 Add AWC MP3 [Red Dead Redemption (PS3), GTA5 (PS3)] 2017-08-28 15:14:24 +02:00
bnnm
5d12d6fb67 Add big endian mode to coding_PCM16LE_int and rename to coding_PCM16_int 2017-08-27 22:17:13 +02:00
bnnm
7875090f0f Improve PCMFLOAT 2017-08-27 21:54:43 +02:00
bnnm
adb225c180 Add EA SNU + EA-XAS decoder + SNS blocks [Dead Space, The Godfather 2] 2017-08-20 02:18:48 +02:00
bnnm
c953685c80 Rename ea_decoder to ea_xa_decoder 2017-08-20 02:12:15 +02:00
bnnm
0103f449d0 Pass stream_index to FFmpeg manually for flexibility 2017-08-19 10:28:28 +02:00
bnnm
5cddab629d Add FFmpeg audio stream selection 2017-08-18 18:56:43 +02:00
bnnm
6642607d0e Add FSB5 PCMFLOAT + decoder [Anima Gate of Memories (PC)] 2017-08-18 18:54:21 +02:00
bnnm
272b55cb3e Add DSP hist utils 2017-08-12 18:39:56 +02:00