Commit Graph

54 Commits

Author SHA1 Message Date
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
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
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
bnnm
ae71256c68 Fix ms_ima_bytes_to_samples when last block is shorter than frame 2017-12-26 18:18:41 +01:00
bnnm
bf31573204 Fix minor bytes-to-samples round error in some IMA formats 2017-12-24 01:31:43 +01:00
bnnm
3380451c80 Code cleanup (renames, comments, nitpicks) 2017-12-06 15:32:52 +01:00
bnnm
d0be7e0c36 Minor tweaks/comments/renames/etc 2017-11-25 00:43:18 +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
801383382d Add util to open stream in the same dir 2017-11-05 17:05:39 +01:00
bnnm
e6cb6facbc Fix coding_XBOX_int so it properly works with any interleave; comments 2017-10-27 18:56:34 +02:00
bnnm
41b22c2699 Add AWC PCM/IMA (non-encrypted only) [GTA5 (PC)] 2017-08-28 16:07:09 +02:00
bnnm
523daaf18d Modify eacs_ima to not depend on get_high_nibble, document it's 2ch DVI 2017-07-23 17:08:10 +02:00
bnnm
a88cd8ca1b Add ima_bytes_to_samples helper 2017-07-23 12:49:10 +02:00
bnnm
366e3fcb9c Make XBOX_int write sample hist and skip last nibble to fix some files
Fixes Gauntlet Dark Legacy (Xbox) scratchy sound and the output is now
byte-exact in EA SCHl streams
2017-07-23 04:31:09 +02:00
bnnm
1fb02da34d Remove EA hack in XBOX decoder and modify XBOX_int (mono) for EA SCHl 2017-07-23 04:21:07 +02:00
bnnm
64500f025d Add PC XA30 + IMA decoder [Driver: Parallel Lines (PC)] 2017-06-24 23:30:10 +02:00
bnnm
34999ddec9 Fixed bug when seeking in Wwise IMAs 2017-04-13 16:55:40 +02:00
bnnm
a468898855 Added Wwise IMA decoder; ms_ima_bytes_to_samples
There are some minor issues with seeking in odd samples to be fixed
2017-04-11 19:59:29 +02:00
bnnm
1a0da46703 Some more IMA cleanup (no functional changes) 2017-03-10 18:08:12 +01:00
bnnm
b8a25dbc27 Some IMA cleanup (no functional changes) 2017-03-09 21:47:23 +01:00
bnnm
b7ee1f8f02 Add todo/note in XBOX IMAs 2017-02-04 19:37:00 +01:00
bnnm
6cd991ebf6 Added FSB multichannel IMA
Variation of the XBOX IMA used in >2ch FSB (interleaved header)
2017-02-04 19:19:51 +01:00
bnnm
a809a7c628 Add Omikron: The Nomad Soul IMA ADPCM coding and meta 2017-01-25 20:25:39 +01:00
bnnm
1d95cfc138 Normalize coding style to understand IMAs better + highlight differences
There are no functional differences, all IMAs give byte-exact results
compared to prev versions
2017-01-25 20:19:13 +01:00
soneek
a2af756764 hcs's update for IMA decoder 2014-06-01 20:19:05 -04:00
halleyscometsw
4e8688a9dd fix snds channel order and sample rate
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@914 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2011-02-06 18:47:48 +00:00
halleyscometsw
bf8a32fefd .snds from Incredibles PC
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@913 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2011-02-06 09:49:57 +00:00
halleyscometsw
94dca9a32b P3D (Prototype)
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@773 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2010-04-10 12:06:25 +00:00
halleyscometsw
5b0525fed5 .musx support for Dead Space: Extraction (rename from .sfx)
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@718 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2009-12-16 06:12:53 +00:00
halleyscometsw
cc6912b2d5 RSD6RADP .rsd support, added "Radical ADPCM" decoder (IMA)
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@698 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2009-09-12 04:51:39 +00:00
halleyscometsw
81d4cbf919 .caf (Apple Core Audio Format file), as seen on iPhone, using Apple's IMA
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@677 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2009-08-30 02:16:54 +00:00
fastelbja
ce7dd88f50 fixed xbox ADS format (used real interleave IMA)
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@665 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2009-06-29 21:58:40 +00:00
halleyscometsw
8963ee3eed Microsoft IMA for riff and genh
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@590 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2009-03-09 12:48:53 +00:00
fastelbja
591c60c6c9 some modifications on xbox decoder to handle multi channels streams
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@445 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-09-29 21:06:12 +00:00
fastelbja
7a12a632cf git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@435 51a99a44-fe44-0410-b1ba-c3e57ba2b86b 2008-09-21 14:58:50 +00:00
fastelbja
306849ec81 fixing xbox mono files on ima_decoder.c
fixing ea_block.c for overdumped files and pc glitch
adding xbox xmu support

git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@412 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-08-18 17:51:22 +00:00
fastelbja
a32c10afca added meta ims from matrix
convert coding_xbox from interleave to none

git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@403 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-08-10 20:08:03 +00:00
fastelbja
40b3a1e136 adding interleaved dvi format (SOTN)
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@335 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-07-18 19:35:29 +00:00
halleyscometsw
1eba859222 some naming changes and such to make hcs happy, hopefully didn't break anything
changed _noninterleaved functions to _int and changed related descriptions appropriately
added an _int version of SDX2 and reverted to pre-322 behavior for normal deocder
made the various get_high_nibble globals all be the same vgmstream->get_high_nibble for thread safety and code consolidation (this required some changes to make decode functions take VGMSTREAM rather than VGMSTREAMCHANNEL)


git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@323 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-07-14 20:42:49 +00:00
fastelbja
8a5d2b6429 a lot of ea new formats supported
fixed stereo sdr2 decoder

git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@322 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-07-14 19:21:45 +00:00
halleyscometsw
fd4f7a9eec add preliminary westwood studios aud support
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@277 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-07-03 02:20:52 +00:00
halleyscometsw
cbc4a75925 add DVI as an AIFF-C and GENH coding
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@272 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-07-02 01:41:20 +00:00
halleyscometsw
453e5c148f make invalid IMA not crash, just sound lousy
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@223 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-06-12 23:51:16 +00:00
halleyscometsw
6524994732 Add xbox ima genh support.
Also fix xbox ima decoder, it was wrong if the decode didn't always start at the block start. Note that this and the nds ima decoder both rely on being run through the file linearly.
I wasn't able to test this on mono wavm or xwav yet, but I think it ought to work.


git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@217 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-06-10 01:20:54 +00:00