Commit Graph

372 Commits

Author SHA1 Message Date
bnnm
61034484ab Add XMD decoder [Silent Hill 4, Castlevania: Curse of Darkness (Xbox) 2018-07-27 17:11:11 +02:00
Christopher Snowhill
637ec27998
Merge pull request #265 from NicknineTheEagle/ea-formats
More EA formats
2018-07-23 19:08:02 -07:00
Christopher Snowhill
eee451aa68
Merge pull request #266 from bnnm/xa-aif-eamt
XA, AIF, EA-MT
2018-07-23 19:07:35 -07:00
Christopher Snowhill
e799a27446 Update ASF decoder based on decompilation of original decoder. 2018-07-23 18:56:35 -07:00
bnnm
65b80e5fd7 Fix .adp raw XA [Phantasy Star Collection (SAT)] 2018-07-23 19:36:08 +02:00
bnnm
e6f7abe20e Fix EA-MT full loops not being properly reset 2018-07-23 00:28:21 +02:00
bnnm
b71739de5e Fix XA missing num_samples at the end 2018-07-22 23:19:10 +02:00
bnnm
0dc2c81ab9 Handle XA ADPCM in a more standard way
It was decoding one 28-sample subframes and blocked layout handled
frames, doing some voodoo to skip CD sectors.
Now decodes one 28*8-sample frame and blocked layout handles CD sectors.
Decoding is byte-exact vs before.
2018-07-22 23:08:09 +02:00
NicknineTheEagle
04debd021e Merge remote-tracking branch 'origin/master' into ea-formats
# Conflicts:
#	src/meta/ea_schl.c
2018-07-22 05:34:26 +03:00
bnnm
4439047fd1 Minor doc 2018-07-22 00:47:31 +02:00
NicknineTheEagle
d5745c9d6e EAAC tweaks 2018-07-21 23:09:44 +03:00
bnnm
af70e95877 Tweak PS-ADPCM decoding [inFamous (PS3)]
- Code now more verbose, but easier to understand (by me, at least)
- Unify normal and badflags code
- Fix hist1 not being properly clamped, though not noticeable
- Fix inFamous (PS3) which seemingly wasn't using the extended table but
hitting some compiler weirdness? (failed in foobar and worked in test)
- Use int math for PSX-cfg, which should be minimally more accurate
2018-07-21 20:15:07 +02:00
bnnm
2129afaf75 Fix some EA-XMA [Need for Speed: The Run (X360)] 2018-07-18 00:53:09 +02:00
bnnm
d6795b63c3 Add ASF decoder [Croc 2 (PC), Aladdin: Nasira's Revenge (PC)] 2018-07-18 00:52:24 +02:00
bnnm
bbd50c78ee Minor doc 2018-07-18 00:37:14 +02:00
bnnm
572cd6a621 XA code cleanup
Decoding is still the same (byte-exact)
2018-07-14 23:08:07 +02:00
bnnm
9af7eadbcb Fix some Ubi LyN [Michael Jackson the Experience (PS3)] 2018-05-27 17:28:48 +02:00
bnnm
a975eff1a2 Fix TXTH XMA multichannel and num_samples 2018-05-12 13:53:43 +02:00
bnnm
ab6cc8c6ce Adjust EALayer3 V2 discard modes 2018-04-21 03:31:24 +02:00
bnnm
6e900315ab Load Vorbis setup in fsb/wwise from array first, as it's most common 2018-04-15 01:16:45 +02:00
bnnm
6f4388045e Add ps_cfg_bytes_to_samples for clarity 2018-04-12 23:21:53 +02:00
bnnm
bf4898a770 Fix 6ch EAlayer3 in EA SCHl [Medal of Honor 2010 (PC)] 2018-04-07 13:56:20 +02:00
bnnm
41e60f29da Add Ubi LyN (.sns/son/wav) [Adventures of Tintin, From Dust (multi)] 2018-04-07 11:31:43 +02:00
bnnm
7a08ea263f Add FFmpeg fake header/header_size check to simplify some calls 2018-03-31 13:07:26 +02:00
bnnm
00aaf8fe02 Remove old XMA2 v3 to v4 transformation since FFmpeg now parses both 2018-03-30 22:14:32 +02:00
bnnm
ad755b85c6 Fix mono/interleave/PCM16 .spsd [Giga Wing 2, Virtua Tennis 2 (Naomi)] 2018-03-28 22:58:25 +02:00
bnnm
eb52b3fb57 Add stereo AICA to GENH/TXTH (no interleave) [SF3 Double Impact (DC)] 2018-03-28 00:30:59 +02:00
bnnm
1708dcaf63 Remove PCM16-XOR decoder and use decryption streamfile instead
The encryption is built on top of the data, so this way mimics the
actual setup and removes another superfluous decoder
2018-03-27 23:24:24 +02:00
bnnm
0f529ea1a7 Remove BMDX decoder and use decryption streamfile instead
The encryption is built on top of PS ADPCM data, so this way mimics the
actual setup and removes a superfluous decoder
2018-03-27 22:39:05 +02:00
bnnm
eb4168f9b9 Rename aica_decoder.c to yamaha_decoder.c for clarity
AICA ADPCM is not really exclusive to Dreamcast as Yamaha used it in
their sound chips before.
2018-03-24 12:20:22 +01:00
bnnm
d821ecb117 Improve Dreamcast AICA decoding (not very noticeable)
On decoding start step_size was 0, but Yamaha ADPCM is supposed to start
at 127 so there was some deviation, usually minor as most files start in
silence.
2018-03-24 12:13:04 +01:00
bnnm
fbd8e94e41 Add Yamaha/NXAP ADPCM decoder 2018-03-24 12:08:16 +01:00
bnnm
49331423e2 Add true multichannel XBOX-IMA 2018-03-23 21:21:44 +01:00
bnnm
79194a0178 Fix some CAFF IMA4 [Endless Fables 2 (iOS), Vectros (iOS)] 2018-03-17 19:57:54 +01:00
bnnm
05dc3df6e0 Simplify mus_acm_codec_data into acm_codec_data 2018-03-16 18:02:17 +01:00
bnnm
ce9a69aad1 Clean ACM init/free/reset 2018-03-16 15:42:01 +01:00
bnnm
3ad6261208 Add check when calling free/seek/reset codec
It's possible to set a "coding" that triggers calls to the above while
codec_data is still null, when using special layouts like AAX
2018-03-10 16:59:00 +01:00
bnnm
67a2f29f75 Minor FADPCM cleanup 2018-03-08 22:55:50 +01:00
bnnm
b97fc632be Fix minor compiler warnings 2018-03-03 19:07:59 +01:00
bnnm
5e50819778 Add FSB FADPCM decoding [Dead Rising 4 (PC), Sine Mora EX (Switch)] 2018-02-25 10:05:28 +01:00
bnnm
ac8a94c2b9 Fix XBOX-IMA decoding, 4ch and tweak layout [Dynasty Warriors 4 (Xbox)]
Now writes header sample and skips last nibble, as seen in MS's XDK
code, and simplifies multichannel layouts and fixes some theoretical
configurations
2018-02-24 22:30:17 +01:00
bnnm
3579858ef4 Write header sample in FSB-IMA (now is byte-exact vs FMOD's tools) 2018-02-23 23:17:13 +01:00
bnnm
6eba6b7022 Tweak WWISE-IMA as interleave and use "MUL" nibble expansion
Clarify it's just basically mono XBOX-IMA; "MUL" expansion apparently
used per decompilation (not really noticeable due to small headered
frames)
2018-02-23 23:01:44 +01:00
bnnm
42f44925f4 Fix possible segfault with some FFmpeg versions 2018-02-17 23:21:41 +01:00
bnnm
7c41cb22bf Add wwise_ima comment about alternate nibble expand 2018-02-17 19:44:18 +01:00
bnnm
05916bdf26 Fix REF-IMA ADPCM decoding/num_samples, as it's based on MS-IMA 2018-02-17 18:19:28 +01:00
bnnm
5e00485948 Fix msadpcm_bytes_to_samples not counting small last block samples 2018-02-17 17:44:47 +01:00
bnnm
e73023d6e2 Fix MS-IMA ADPCM decoding/bytes_to_samples missing 1 sample per block
Now correctly follows Microsoft's spec and matches other players.
2018-02-17 17:23:52 +01:00
bnnm
9cf9416665 Add/use xbox_ima_bytes_to_samples, rename coding_XBOX to XBOX_IMA
Currently same as ms_ima_bytes_to_samples, but this will change; renamed
for consistency with all other IMA variations. Also clean a bit some
metas since I was testing anyway.
2018-02-17 12:30:14 +01:00
Christopher Snowhill
73933aae95
Merge pull request #187 from Thealexbarney/opus-fixes-switch
Fixes for Switch Opus reading
2018-02-15 16:37:19 -08:00