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
86b7b45c89
Minor rename
2017-08-19 15:59:29 +02:00
bnnm
0103f449d0
Pass stream_index to FFmpeg manually for flexibility
2017-08-19 10:28:28 +02:00
bnnm
3c14d3fdb4
Parse loop_target manually (get_vgmstream_play_samples is just a helper)
2017-08-18 19:32:51 +02:00
bnnm
d9fb118412
Add BINK multi-stream support and v2 header
2017-08-18 19:24:19 +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
f4f920482a
Unify open_stdio usage and add opening by FILE
2017-08-13 19:58:01 +02:00
bnnm
ade662e023
Redo Angel STM: add PCM, adjust looping, unify code, add .lstm
2017-08-12 18:42:38 +02:00
bnnm
272b55cb3e
Add DSP hist utils
2017-08-12 18:39:56 +02:00
bnnm
d219804b99
Add stream selection and/or stream name reading for some formats
2017-08-12 11:46:28 +02:00
bnnm
b7c807a85c
Add stream name string, for metas than can use it
2017-08-12 11:27:10 +02:00
bnnm
a3146ed2f6
Add stream index selection, to use in metas if supported by the format
...
Not ideal here, but it's the simplest way to pass to all
init_vgmstream_x functions without having to change all functions to
pass extra params or use globals. The value can be set externally by
plugins and metas can use to play the selected stream, or just ignore
it.
2017-08-12 11:23:09 +02:00
bnnm
c5dbece5ac
Add string reader util
2017-08-12 11:14:16 +02:00
bnnm
561048e613
Fix again TXTH LINE_MAX, even VS2015 was complaining
2017-08-12 11:11:08 +02:00
bnnm
90aef437ea
comments
2017-08-05 17:59:35 +02:00
bnnm
efdcd16ac1
Fix some EA BNK [Medal of Honor Heroes 2 PSP]
2017-08-05 17:55:49 +02:00
bnnm
aaa2613802
Add EALayer3 v1 decoder for SCHl [EA games for PS2/Wii/X360/PS3]
2017-08-05 17:54:50 +02:00
bnnm
fadb999207
Add AHX type 0x08 decryption, with .ahxkey files (16b*3, start/mult/add)
2017-08-04 21:48:55 +02:00
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
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
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
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
shinyquagsire23
b07a5e7ffe
Fix compile errors for BFWAV
2017-07-06 18:39:48 -06: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
bnnm
68071467c2
Add MPEG to EA SCHl [Harry Potter and the Chamber of Secrets (PS2)]
2017-07-01 23:55:10 +02:00
bnnm
d85c033c9d
rename some EA related things (cleanup)
...
- eaxa_decoder to ea_decoder
- ea_header to ea_schl
- ea_block* to ea_schl_block*
2017-07-01 23:27:35 +02:00
bnnm
bf34339b41
redo EA SCHl support [EA games from roughly 1997~2010]
...
* tested most variations using EA's tools
* added looping [Need for Speed II PC]
* added DSP support [3DS games]
* fixed PCM/EAXA/MT in some cases [PS2/GC/XBOX/Wii games]
* fixed sample rate/codec defaults, num_samples in some cases
* documented more header patches and other details (ex. "EA ADPCM" is
now EA MT/MicroTalk, as per EA's tools)
* (dev) some internals adapted for EA stuff
2017-07-01 23:02:24 +02:00
bnnm
aa93941e64
fix some .MED with JUNK chunk; minor cleanup
2017-07-01 22:44:00 +02:00
bnnm
6fd373b209
Tweak minor P3D info
2017-06-25 02:21:25 +02:00
bnnm
9b36233038
Add P3D XMA2 and (disabled) MP3 support [Prototype 1/2 (X360/PS3)]
2017-06-25 02:10:13 +02:00
bnnm
86cb660f76
Define MPEG interleave type to improve and simplify some internals
2017-06-25 02:09:12 +02:00
bnnm
b56ab1fa5b
Ignore Reflections' XA, as it could be mistaken as headerless XA
2017-06-25 00:45:15 +02:00
bnnm
880b8c5543
Add Wii 04SW [Driver: Parallel Lines (Wii)]
2017-06-25 00:27:58 +02:00
bnnm
f617e5e762
Improve PS2 XA30 [Driver: Parallel Lines (PS2)]
2017-06-24 23:33:49 +02:00
bnnm
64500f025d
Add PC XA30 + IMA decoder [Driver: Parallel Lines (PC)]
2017-06-24 23:30:10 +02:00
bnnm
3b4f0aae01
Add .MED RIFF using MS-IMA/PCM [LA Rush, Psi-Ops (PC)]
2017-06-24 23:09:30 +02:00
bnnm
f521803f85
Fix some multichannel DSP RWS [Burnout 2 GC]
2017-06-24 22:54:58 +02:00
bnnm
7bf4e99cba
Improve buffer setup with multichannel files (vgmstream_open_stream)
2017-06-24 22:53:17 +02:00
Alex Barney
4b39b7e6c8
Fix Nintendo MDSP layout
2017-06-18 16:07:48 -05:00
Alex Barney
730bc5c0f0
Added a new ADX key, and verified old ones, adding their key strings or key codes
2017-06-17 20:21:04 -05:00
Alex Barney
a1ab700764
Fix search for ADX encryption type-9 key
2017-06-17 20:20:59 -05:00
Alex Barney
27419d1a43
Fix ADX type 9 encryption format string typo
2017-06-17 14:31:39 -05:00
bnnm
3ca2ac1ee8
Fix segfault when reading MTA2 files after EOF (ex. trunkated)
2017-06-11 22:38:05 +02:00
bnnm
519c5d71de
Redo RWS with PCM/PS-ADPCM/DSP/IMA-ADPCM + block support [many games]
2017-06-10 02:25:49 +02:00
bnnm
d7e3f6915d
Add renamed .RWS at3 [Climax PSP games: Silent Hill Origins, Oblivion]
2017-06-09 23:54:14 +02:00
bnnm
f513d53999
Rename ps2_rws.c to rws.c and do other rws cleanup
2017-06-09 22:31:33 +02:00
bnnm
7e42eeca58
Add u-Law decoder + ULW meta [Burnout 1 GC]
2017-06-09 22:26:09 +02:00
bnnm
818dfd026e
Fix some XBOX XAU with more chunks
2017-06-09 21:45:15 +02:00
derselbst
2b5a1a249f
minor bug in check_extensions()
...
cmp_len might not become negative on LP64 machines, since sizeof(int)==32bit, but we were subtracting pointers (64bit) that will become positive forcing them to 32bit int
2017-05-27 11:38:09 +02:00
Christopher Snowhill
8b936cc74c
Merge pull request #94 from Thealexbarney/hps
...
Better support HPS files with a channel count other than 2
2017-05-20 18:54:21 -07:00
Alex Barney
58398619a6
Add support for HPS files with >2 channels
...
Unlike mono HPS, the format never included support for more than 2 channels, as far as I know.
By adding additional channel headers and data to each block, we can unofficially extend the container to support more than 2 channels.
2017-05-20 20:36:24 -05:00
Alex Barney
cd63388631
Properly loop mono HPS files
2017-05-20 18:45:49 -05:00
bnnm
6a922be613
Fix encoder delay/skip samples in: SCD/SGXD/RIFF/MSF ATRAC3/p, SGXD AC3
2017-05-20 18:00:27 +02:00
bnnm
94b3854a87
Fixed some PS2 .AST [Naval Ops Warship Gunner (PS2)]
2017-05-20 01:26:57 +02:00
bnnm
4263533ba9
Move FFmpeg code from ffmpeg.c to ffmpeg_decoder.c for consistency
2017-05-19 17:21:22 +02:00
bnnm
0bab6ddf50
Fixed Crackdown X360 XWB variation; adjusted XWB XMA looping
2017-05-18 22:14:32 +02:00
bnnm
30afc09255
Rename ps2_xau.c to xau.c
2017-05-18 21:03:14 +02:00
bnnm
a903072a11
Added XPEC's .XAU IMA-ADPCM support [Beat Down (Xbox)] + looping (PS2)
2017-05-18 21:00:42 +02:00
bnnm
9488ba32c7
test.exe: add "-F" option to loop + play stream's end instead of fading
2017-05-18 19:55:00 +02:00