bnnm
66219f6b37
Use sample buffers per stream in MPEG custom decoder
...
Simplifies the code somewhat and allows more flexibility for new custom
modes (like EALayer3, that can output PCM blocks before decoding
anything)
2017-08-04 21:29:58 +02:00
Christopher Snowhill
9d0c3ed86d
Add sk_aud.c to MSVC project files.
2017-07-30 18:57:17 -07:00
Christopher Snowhill
f9e561e08a
Merge pull request #114 from bnnm/custom-vorbis-mpeg
...
Custom Vorbis/MPEG
2017-07-29 18:15:26 -07:00
bnnm
cb05313b13
Add P3D MPEG decoder [Prototype 1/2 (PS3)], fix debug crap
2017-07-29 23:53:45 +02:00
bnnm
3e947b5e9d
Remove meta_AHX from MPEG ifdefs
...
I feel parsing a header/meta isn't tied to the ability to init the
codec, which could be swapped if one wanted to use another lib
2017-07-29 23:21:32 +02:00
bnnm
474ca0be94
Use AHX mpeg-custom, add type 0x10, detect encryption, fix encoder delay
2017-07-29 23:16:30 +02:00
bnnm
d54492cb95
Update MPEG "interleaved" decoder: now "custom", restructured, added AHX
...
To support future MPEGs of uncertain layout and frame variations (namely
EALayer3) the code has been restructured: mpeg_decoder does stream
procesing and decoding, while mpeg_custom_utils_x does init and parsing
(write to data buffer + update offsets), per MPEG subtype. Internals
have changed but still gives byte-exact results.
AHX has been adapted to this format as a test. Some modes
(P3D/EALayer3/LyN/AWC) are defined for later development but will fail
on init ATM.
2017-07-29 23:14:04 +02:00
bnnm
6308818b77
Simplify MPEG coding/layouts to allow blocked layouts and future changes
2017-07-29 13:05:23 +02:00
bnnm
54ef2b5190
Add Silicon Knights .AUD + SK Vorbis [Eternal Darkness (GC)]
2017-07-29 11:46:53 +02:00
bnnm
fcf8a9485c
Fix outbuf only being partially cleared when trying to read after EOF
2017-07-29 01:25:35 +02:00
bnnm
8d7c52f460
Rename files
2017-07-29 01:19:24 +02:00
bnnm
925934c53c
Rename Vorbis files and cleanup
2017-07-28 23:43:49 +02:00
bnnm
bc8e2e9204
Unify fsb/wwise/ogl Vorbis decoders into a single decoder with subtypes
2017-07-28 23:26:58 +02:00
Christopher Snowhill
cad12760f2
Include system math.h header instead of possible project local header.
2017-07-23 17:08:20 -07:00
Christopher Snowhill
bb8966a696
Fix for macOS, possibly other Unices.
2017-07-23 16:47:43 -07:00
Christopher Snowhill
fc327e40bf
Fix constexpr to enum for old MSVC.
2017-07-23 16:28:37 -07:00
Christopher Snowhill
d7a8a9bb41
Merge pull request #112 from bnnm/ea3-hwas
...
EA 3, HWAS
2017-07-23 14:28:53 -07:00
bnnm
ab6a146528
Add EA SCHl fixed/old (PATl) support [NHL 97 (PC)]
2017-07-23 17:09:55 +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
3d6e0882ba
Improve NDS HWAS volume swings by resetting ADPCM hist every block
2017-07-23 13:16:59 +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
312b68c0b7
Add EA BNK support and fix minor EA header parsing defects
2017-07-23 03:46:55 +02:00
bnnm
604f5ef507
Make EA-XA v2 decode using v1 table for clarity (no byte-diffs)
2017-07-21 21:03:51 +02:00
bnnm
2c61528241
Fix EAXA v1 not clamping ouput PCM hist, leading to small deviations
...
Now it's byte-exact vs EA's tools; EAXA v2 doesn't actually need it as
the encoder ensures no clamping is needed (for performance?)
2017-07-21 20:37:25 +02:00
bnnm
67ec34010f
Don't use ADPCM hist, as doesn't seem used by EA's tools
...
Without it sx.exe and vgmstream give closer results in EAXA v1 and
byte-exact results in EAXA v2 (but it's only a slight difference)
2017-07-21 19:26:53 +02:00
bnnm
5fe6033442
Fix/improve EAXA naming scheme and detection/handling
...
EA's MT/MicroTalk is not the early version of EAXA as I thought, but a
rarely used VBR codec (ex. FIFA 2001/2002 PS2) seemingly related to
Westwood VBR ADPCM
2017-07-21 19:19:58 +02:00
Christopher Snowhill
b5fd056cb9
Merge pull request #110 from bnnm/txth-fixes
...
TXTH, fixes
2017-07-15 15:56:43 -07:00
bnnm
55e922d36e
Accept some extensions for future support (currently supported w/ TXTH)
2017-07-15 12:16:28 +02:00
bnnm
47c5f70976
Add TXTH generic header format
...
It's a single text file with basic read commands; similar to GENH but
meant to simplify addition/distribution of (semi)headerless formats
2017-07-15 11:49:28 +02:00
bnnm
0a39d7636e
Add helper functions to get file name/path/ext
2017-07-15 11:28:42 +02:00
bnnm
d592199d6f
Improve format detection to avoid hijacking other files
2017-07-15 11:27:43 +02:00
bnnm
c501129cb1
Fix some little endian Fable 3/Heroes XMA with big endian fmt chunk
2017-07-15 11:26:01 +02:00
Christopher Snowhill
8a9c669baa
Remove C99-ism for MSVC 2010.
2017-07-13 17:45:56 -07:00
Christopher Snowhill
fa91e33dec
Merge pull request #109 from bnnm/ea2-ffta2
...
EA2, FFTA2
2017-07-08 17:29:25 -07:00
Christopher Snowhill
0c9dad28c0
Merge pull request #105 from shinyquagsire23/le-edgecase
...
LE BFSTMs should use PCM16LE
2017-07-08 17:28:30 -07:00
bnnm
e96f3c0700
Tweak block parsing to handle better unknown blocks; try to improve EOFs
2017-07-09 00:56:27 +02:00
bnnm
a4d1e869cf
Move EA block offsets on EOF just in case
2017-07-08 16:16:40 +02:00
bnnm
58af99fd4b
Fix FFTA2 loop 'clicks' in some files by preserving ADPCM history
2017-07-08 11:34:02 +02:00
bnnm
8da3f4a7cb
Remove FFTA2 last shortblock as it has normal blocks; cleanup
...
Doesn't actually fix anything; looping or not with or without
shortblocks it results in the same output
2017-07-08 11:32:54 +02:00
bnnm
781eb97040
Move nds_strm_ffta2 to its own file for clarity
2017-07-08 11:02:22 +02:00
bnnm
7a87f27624
Minor Maxis XA meta cleanup
2017-07-08 10:28:08 +02:00
bnnm
cce72d7aa5
Add EA SCHl Saturn + MT10 mono/int; changed Maxis_ADPCM to Maxis_MT10
...
Also fixed some issues with ADPCM hist in EA SCHl blocks
2017-07-08 00:27:36 +02:00
bnnm
a493a8f09d
Ignore Maxis' XA, as it could be mistaken as headerless XA
2017-07-08 00:26:03 +02:00
Christopher Snowhill
371048686c
Merge pull request #108 from shinyquagsire23/bfwav_compile_fix
...
Fix compile errors for BFWAV
2017-07-06 17:45:21 -07:00
shinyquagsire23
b07a5e7ffe
Fix compile errors for BFWAV
2017-07-06 18:39:48 -06:00
Christopher Snowhill
d2e2b86785
Merge pull request #106 from shinyquagsire23/bfwav-le
...
Add support for little-endian BFWAVs, fix coefficient offset calculation
2017-07-05 14:18:11 -07:00
shinyquagsire23
0e5174504e
Add support for little-endian BFWAVs, fix coefficient offset calculation for stereo BFWAVs
2017-07-05 11:47:30 -06:00
shinyquagsire23
beef9b8c6e
LE BFSTMs should use PCM16LE
2017-07-04 19:53:35 -06:00