Christopher Snowhill
9928380c49
Add libatrac9 for Windows builds.
2018-01-04 18:59:29 -08:00
Christopher Snowhill
8491a16ea4
Merge branch 'master' of github.com:kode54/vgmstream
2018-01-04 18:55:10 -08:00
bnnm
944c667a17
Remove unused variable warning
2018-01-05 00:54:35 +01:00
bnnm
ef4ef28ace
Simplify xa_init_get_high_nibble call
2018-01-04 23:59:30 +01:00
bnnm
adf9bc84a5
Remove tabs for consistency
2018-01-04 23:38:22 +01:00
bnnm
757e4cde69
Rename init_x_codec_data to init_x for consistency
2018-01-04 23:22:03 +01:00
bnnm
166b9d411e
Rename makefile.audacious to makefile.autotools, as now can build more
...
Not sure about the naming convention but hopefully clear enough
2018-01-04 22:59:07 +01:00
bnnm
fddd17f808
Add .kvs extension [Atelier Sophie (PC)]
2018-01-04 21:17:17 +01:00
bnnm
51061c1316
Add ATRAC9 decoder
...
Requires furrybob's libatrac9, plus enabling VGM_USE_ATRAC9 in
vgmstream.h/compiler flag
2018-01-04 17:46:38 +01:00
bnnm
dd6c854e14
Fix some ATRAC9 XVAG and minor adjustments
2018-01-04 17:35:14 +01:00
bnnm
8165374274
Fix FSB5 v0 and some ATRAC9
2018-01-04 17:32:23 +01:00
bnnm
f00040f287
Add extended PS-ADPCM table (inFamous PS3)
2018-01-04 17:31:37 +01:00
Christopher Snowhill
cc2944e4f0
Update project files, and update foobar2000 component.
2017-12-30 19:15:34 -08:00
Christopher Snowhill
c2cc114bbe
Merge pull request #166 from bnnm/atrac9pre-etc
...
ATRAC9pre, etc
2017-12-28 16:30:32 -08:00
bnnm
8789c5918e
Prepare ATRAC9 decoder hooks (disabled, not usable at the moment)
2017-12-29 00:29:33 +01:00
bnnm
f525b891ee
Adjust XVAG looping so it's always inside frame boundaries
2017-12-28 23:42:04 +01:00
bnnm
5be6d14b4c
Prepare RIFF/FSB5/SXD/UBI_RAKI/WWISE/XVAG/GTD for ATRAC9
2017-12-28 23:37:18 +01:00
bnnm
7e48a38385
Add more HCS keys
2017-12-28 19:13:20 +01:00
soneek
b3e796885b
Updated KTSS interleave layout for current vgmstream
2017-12-27 00:38:25 -05:00
soneek
160a13dff9
Support for tri-Ace mobile vorbis AAC, support for KTSS
2017-12-27 00:14:50 -05:00
bnnm
8538aa1a75
Rename at3_decoder.c to at3plus_decoder.c and add init function
2017-12-27 01:02:24 +01:00
bnnm
002de7efe0
Clean RIFF parser for future changes
...
- move blocks around so it's easier to init codecs
- removed .SGB with FFMpeg is disabled, should't be needed
- remove references to MSIMA/MSADPCM/etc in RIFX, num_samples was only
filled for PCM so any other codec would fail (most other RIFX should be
wwise)
2017-12-27 00:43:52 +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
331bc187fa
Move XNB from riff.c to xnb.c (cleanup)
2017-12-26 18:17:59 +01:00
Daniel Richard G
bc45567208
Various updates to the Autotools build system:
...
Makefile.audacious.am:
* Add test/ subdirectory to the Autotools build
* Add version.h to EXTRA_DIST so that "make distcheck" passes
audacious/Makefile.audacious.am:
* Install Audacious plug-in into the appropriate directory
* No need to include CXXFLAGS in AM_CXXFLAGS, as the former is already
included in the compiler invocation
configure.ac:
* Need to link to libvorbis in order for static-library builds
(--disable-shared) to link correctly
* Only add GCC-specific compiler flags if GCC is detected
* Tightened up the GCC warning flags
* Don't set LIBS, so that different targets can link against different
libraries
* Generate makefile for test/ subdirectory
src/Makefile.audacious.am:
* Install libvgmstream into the library directory
* Removed GCC-specific flag from AM_CFLAGS
* No need to include CFLAGS in AM_CFLAGS, as the former is already
included in the compiler invocation
* Add libvgmstream dependencies via LIBADD instead of global LIBS var
test/Makefile.audacious.am:
* New makefile template for test/ subdirectory
unbootstrap:
* Also remove "compile" script from bootstrap
2017-12-25 22:18:55 -05:00
bnnm
69644716d7
Improve SCHl: fix EOF/video blocks/SHEN audio, fix num_samples bugs
2017-12-24 01:49:51 +01:00
bnnm
12aa4ef7ef
Improve 1SNh: add mu-Law, fix video blocks/SEAD audio, fix some IMA
2017-12-24 01:48:26 +01:00
bnnm
2f9c16ae9b
Add mu-Law with internal interleave decoder
...
This is needed for blocked layout, as it can't do normal interleave.
Probably could be fixed in the future to remove several superfluous
_int/block decoders
2017-12-24 01:39:24 +01:00
bnnm
98c5f0a65d
Fix EA-XMA in .SPS
2017-12-24 01:32:20 +01:00
bnnm
bf31573204
Fix minor bytes-to-samples round error in some IMA formats
2017-12-24 01:31:43 +01:00
bnnm
dd978dc5f4
Remove unnecessary SCD sample rate fix
2017-12-17 19:46:41 +01:00
bnnm
a3b991ac3f
Modify SCD/P3D/FSB/XVAG interleave and fix short last interleave
...
Previously, the streams' offsets needed to be pre-adjusted with the
interleave; now assumes all streams start in the same offset (first
stream).
This simplifies short last interleaves (SCD/P3D) and makes
layout_mpeg_custom unnecessary (also allows theoretical variable-sized
interleaves).
2017-12-17 19:25:10 +01:00
bnnm
bd88cc2a65
Minor comments/SPS block adjust
2017-12-17 17:38:54 +01:00
bnnm
aa72a055c1
Add/change .opus to .lopus
2017-12-17 16:44:31 +01:00
bnnm
ea7c37ef8a
Add ADX/HCS keys
2017-12-17 16:40:16 +01:00
bnnm
b65765a56e
Fix multistream MPEG SCD [Final Fantaxy XIII-2 (PS3)]
2017-12-17 16:39:36 +01:00
bxaimc
a8369ed21b
Modified a header check to reduce some -pickiness- which rejected some playable EALayer3 files
2017-12-14 19:48:54 -05:00
bxaimc
7f389157d1
Merge branch 'master' of git://github.com/kode54/vgmstream
2017-12-14 19:23:41 -05:00
Christopher Snowhill
2c5257522b
Disable .opus extension.
2017-12-13 16:15:54 -08:00
bxaimc
d09ac8fdae
Add type 3 GCM/IDSP variant for Lego LOTR (Wii)
2017-12-11 17:58:57 -05:00
bxaimc
0db009b3e6
Add Harmonix Music Systems MOGG Vorbis
2017-12-10 20:30:00 -05:00
Christopher Snowhill
93685b0c8f
Simplify interleave handler, safe for mono files as well.
2017-12-09 14:13:25 -08:00
bnnm
d086f933af
Update VC project files
2017-12-09 19:10:53 +01:00
bnnm
cc8256d178
Fix some VAWX multichannel files
2017-12-09 19:01:36 +01:00
bnnm
cb646cfbde
Add VAGp .vig [MX vs. ATV Untamed (PS2)]
2017-12-09 17:57:18 +01:00
bnnm
765af1994a
Move bitstream reader to coding_utils
2017-12-09 17:06:21 +01:00
bnnm
ecf01351cb
Ignore A2M .int
2017-12-09 17:03:23 +01:00
bnnm
59cef16a2c
Add TXTH "half_size" interleave + SDF/BD3 exts
2017-12-09 12:23:19 +01:00
bnnm
b5da881a44
Remove thpNextFrameSize and use full_block_size instead
2017-12-08 01:20:09 +01:00
bnnm
d0c44be330
Fix some VXN PCM
2017-12-08 00:17:42 +01:00
bnnm
0e389ae74f
Fix some Ubi bank types
2017-12-07 23:54:05 +01:00
bnnm
d341a267d1
Add Orbis PCM
2017-12-07 23:38:00 +01:00
bnnm
666d47ef84
Remove layout_interleave_byte as NGC_DSP_subint is used instead
...
The layout was designed to do subframe deinterleave (when
less-than-a-frame bytes of each channel are interleaved) in an array and
pass it to "mem" decoders.
In practice this only happens in a handful of formats, was only used
with DSP, and since making "mem" decoders is required it's simpler to
make normal decoders handling the byte layout directly.
In an effort to simplify vgmstream's layouts, code, and other esoteric
features I changed the old decode_ngc_dsp_mem for decode_ngc_dsp_subint;
results are byte-exact.
2017-12-06 21:12:42 +01:00
bnnm
8f9b22d46f
Change layout_interleave_byte with coding_NGC_DSP_subint
...
Meant to simplify layouts
2017-12-06 21:04:34 +01:00
bnnm
98b4f8c5b1
Add NGC DSP subinterleave decoder
...
Meant to replace layout_interleave_byte
2017-12-06 21:04:04 +01:00
bnnm
9c3adeba8f
Fix detection of SNR with data [NHL 2013 iOS]
2017-12-06 20:20:58 +01:00
bnnm
d0ecf37458
Move .XA2 RRP to its own file for consistency/clarity
2017-12-06 18:16:03 +01:00
bnnm
165c815d12
Move .VSF SMSS to its own file for consistency/clarity
2017-12-06 18:11:37 +01:00
bnnm
6b3c365480
Move .OMU to its own file for consistency/clarity
2017-12-06 18:07:17 +01:00
bnnm
8592aeea3d
Add .RSM extension (Bully PS2)
2017-12-06 17:35:59 +01:00
bnnm
10aac03cd5
Add ADX keystring
2017-12-06 17:10:49 +01:00
bnnm
53698db7c3
Add vgmstream_force_loop, comments (API cleanup)
2017-12-06 16:55:41 +01:00
bnnm
f74f9f0b24
Add MSF with .MP3 extension (Darkstalkers Resurrection PS3)
2017-12-06 15:53:42 +01:00
bnnm
3380451c80
Code cleanup (renames, comments, nitpicks)
2017-12-06 15:32:52 +01:00
bnnm
5672cac597
Move some meta STREAMFILEs to separate file for visibility
...
The code may be standardized and extended in the future for some meta
needing similar features, so this is just to signal its existence
2017-12-06 12:15:27 +01:00
bnnm
14be03c89e
Comment .MPC for foobar (still can be read if renamed to ~ .vgmstream)
2017-12-04 19:43:49 +01:00
Christopher Snowhill
d2f48b2066
Merge pull request #149 from bnnm/master
...
MPC, VXN, SNS/SPS, OGG, FLX, MT
2017-12-03 14:07:53 -08:00
bnnm
407aa141bd
Fix some .SB0 [TMNT GC/PS2]
2017-12-03 20:25:50 +01:00
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
Christopher Snowhill
7037434ae6
Fix 3DO STR SNDS for stereo interleave.
2017-12-03 00:56:39 -08:00
bnnm
e3de403c9f
Add Ultima IX .FLX (EA-XA/PCM)
2017-12-03 01:41:25 +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
6eef1074a2
Adjust some SNR
2017-12-02 02:56:37 +01:00
bnnm
2eede51524
Add .AUD ATRAC3 for EA Replay
2017-12-02 02:11:25 +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
02d0231ff2
Rename ea_snu.c to ea_eaac.c (EAAudioCore)
2017-12-01 17:52:03 +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
77b849a024
Add Gameloft .VXN [Mobile games]
2017-11-27 20:22:10 +01:00
Christopher Snowhill
3bdd5616df
Merge branch 'master' into master
2017-11-25 17:34:45 -08:00
bnnm
770a27d0b4
Add dual extension in try_dual_file_stereo for Homura (PS2)
2017-11-26 01:54:33 +01:00
bnnm
2889765c5c
Fix EA SNU looping not properly saving block state
2017-11-26 01:25:27 +01:00
bnnm
db3af4d407
Rename some blocked layouts for clarity (hopefully)
2017-11-25 01:18:27 +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
084c3075e4
Improve try_dual_file_stereo and cleanup
...
To test dual stereo it was trying all metas, but only the meta that
opened the first file can be accepted (as validated), so pass its
function pointer and try only that instead.
2017-11-24 20:15:23 +01:00
bnnm
5c4351aa86
Add VGM_LOG/ASSERT_ONCE macro for useful-but-repetitive error logging
2017-11-23 23:46:33 +01:00
bnnm
e1bb468bd5
Remove unnecessary check_sample_rate
2017-11-23 23:11:11 +01:00
bnnm
c2ef5f8694
Use get_streamfile_text_line in TXTH (cleanup)
2017-11-23 23:03:55 +01:00
bnnm
dbbbfcc9f5
Make get_streamfile_dos_line read CR/LF too and rename accordingly
...
CR used in some Falcom looping files as separator
2017-11-23 22:53:43 +01:00
bnnm
7c7af0bf18
Rename *_DE2 to _*DEC for consistency and since it was first
2017-11-23 22:48:11 +01:00
bnnm
162ec1fb9c
Add/fix Falcom RIFF (.dec/de2) + looping [Xanadu Next, Gurumin (PC)]
2017-11-23 22:36:49 +01:00
bnnm
6d80168879
Fix Homura (PS2) stereo and add .v0
2017-11-23 22:33:46 +01:00
bnnm
17da12f324
Add Namco AAC (.naac) [Ace Combat: Assault Horizon Legacy (3DS)]
2017-11-23 22:32:31 +01:00
bxaimc
ed36ae44a3
Add EZW for EZ2DJ (Arcade)
2017-11-21 21:30:48 -05:00
bnnm
1c042b7784
Use IMA_int with mono files to clarify then IMA stereo is used
...
Both IMA and IMA_int work the same then channels = 1, so this is just to
signal when IMA stereo (nibble interleave) is actually used (ie. rarely)
2017-11-19 03:34:25 +01:00
bnnm
8363e26b88
Unify IMA/IMA_int with standard IMA decoder + add stereo IMA
2017-11-19 03:32:21 +01:00
bnnm
3ce9e2c8ab
Fix 3DS IMA hist
2017-11-18 22:52:42 +01:00
bnnm
36d4f69420
Fix STRM FFTA2 using the wrong IMA, making output slightly incorrect
2017-11-18 22:49:18 +01:00
bnnm
bf043d4e5b
Add 3DS IMA for BCWAV
2017-11-18 22:27:14 +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
d37deb8d80
Rename ea_old.c to ea_1snh.c for consistency
2017-11-18 02:39:21 +01:00
bnnm
5ce20a710e
Fix segfaults when blocks functions set wrong samples/sizes; cleanup
2017-11-18 02:22:57 +01:00
bnnm
79c5cfab49
Clean EA 1SNh/EACS (ea_old) and fix some bugs/looping
2017-11-18 02:20:52 +01:00
bnnm
8f6c76364c
Fix standard IMA segfault when external init is wrong
2017-11-18 02:06:51 +01:00
bnnm
624b4ead0e
Move eacs_block_update to its own file
2017-11-17 20:46:51 +01:00
bnnm
1af4e37f6f
Fix DVI .PCM channels being swapped [Castlevania SOTN (SAT)]
2017-11-17 19:12:28 +01:00
bnnm
304d39d80b
Clean .idvi and add proper .DVI extension
2017-11-17 18:53:34 +01:00
bnnm
8ec00fb0ea
Cleanup
2017-11-17 18:51:43 +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
66a3e7ed88
Add some HCA keys
2017-11-16 00:42:09 +01:00
bnnm
2ad3d432f1
Rename pcm.c > scd_pcm.c (cleanup)
2017-11-16 00:41:06 +01:00
bnnm
0cf9600791
Clean/separate PS2 .PCM and fix looping in some cases
2017-11-16 00:32:22 +01:00
bnnm
a68e567fc2
Remove unneeded function
2017-11-16 00:26:05 +01:00
bnnm
6c141a6582
Clean .dvi/.kcey and add proper .PCM extension
2017-11-15 23:26:38 +01:00
bnnm
7bec0d368f
Remove raw SS3/SS7 meta as it was inaccurate and ubi_sb supports it
2017-11-11 17:49:07 +01:00
bnnm
cc652293e3
Add Ubi SB PCM [Red Steel (Wii)]
2017-11-11 17:46:18 +01:00
bnnm
abe4244d11
Fix some Ubi SB [Prince of Persia: The Two Thrones (Xbox)]
2017-11-11 15:56:29 +01:00
bnnm
86641dc699
Fix log
2017-11-10 23:20:08 +01:00
bnnm
b2ab42673a
Tweak FSB log
2017-11-10 22:36:54 +01:00
bnnm
6bc9c44a0f
Change some tabs to spaces to fix mixed indention GCC warnings
2017-11-10 22:22:04 +01:00
bnnm
82b1f235de
Remove/simplify formats.h and move to vgmstream.h for simpler API
2017-11-10 20:26:44 +01:00
bnnm
1c373753b9
Move ADP OTNS to its own file for consistency
2017-11-10 19:51:14 +01:00
bnnm
c17db6f30e
Add GENH AC3 and update code so it mirrors TXTH for easier sharing
2017-11-10 19:37:07 +01:00
bnnm
27ddf75a8b
Add AC3 (.lac3)
2017-11-10 19:35:21 +01:00
bnnm
1a57ae8b85
Add TXTH AC3 (.lac3) for bytes_to_samples [Burnout (PS2)]; cleanup
2017-11-10 19:34:36 +01:00
bnnm
5ff3b5801f
Fix some HEVAG
2017-11-10 19:32:33 +01:00
bnnm
764fcc0bca
Add XWB OGG [Oddworld Stranger's Warth (iOS/Android)]
2017-11-10 19:31:54 +01:00
bnnm
d4ecd53a93
Update some Wwise comments
2017-11-10 19:30:25 +01:00
bnnm
918eb19218
Remove VS2010 test code as struct init seems to work ok
2017-11-10 19:30:08 +01:00
bnnm
5b863393b8
Fix some OPUS + looping [Ultra Street Fighter 2, Disgaea 5]
2017-11-05 18:12:28 +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
Christopher Snowhill
b316b0ec33
Merge pull request #136 from bnnm/bgw-sab-etc
...
BGW, SAB, etc
2017-10-28 18:22:12 -07:00
bnnm
80269e566e
Add recent files
2017-10-28 18:07:26 +02:00
bnnm
ec4e0b6401
Add extra ADX keys and key verifier
2017-10-28 18:04:15 +02:00
bnnm
6fe7e33f5a
Minor comment
2017-10-28 18:03:36 +02:00
bnnm
bffbefb150
Move ADX key list to it's own file (cleanup)
2017-10-28 12:38:27 +02:00
bnnm
58e213cbf3
Fix closing XSB streamFile
2017-10-28 10:51:55 +02:00
bnnm
1ff0cecca8
Fix minor compiler warnings (missing const/static/case defaults/etc)
2017-10-28 01:34:32 +02:00
bnnm
75b0b275f1
Fix XWB WMA, leaks [Prince of Persia 2 Xbox]
2017-10-28 01:31:08 +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
2a57dda6d9
Add/fix SAB+SOB [Worms 4 PC/PS2/Xb]
2017-10-27 18:53:17 +02:00
bnnm
d09dc9739b
Add encrypted ATRAC3 BGW [Final Fantasy XI PC]
2017-10-27 18:50:06 +02:00
bnnm
56586b84dc
Fix some ADP [Omikron: the Nomad Soul]
2017-10-27 18:40:09 +02:00
bnnm
01f91226da
Fix some AWC [Red Dead Redemption PS3]
2017-10-27 18:39:32 +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
f23cd6192f
Add extra HCA keys
2017-10-27 18:03:11 +02:00
bxaimc
0d440dbecd
Added AST (ASTL) variant for Dead Rising (PC). Looping is disabled due to being non-trivial; it will need to be fixed eventually.
2017-10-20 21:06:49 -04:00
bnnm
6b57005c07
Fix some S14/SSS (Korogashi Puzzle Katamari Damacy)
2017-10-14 13:42:59 +02:00
bnnm
7edf3d3fe1
Improve BNSF num_samples and cleanup
2017-10-14 12:42:44 +02:00
bnnm
229783f5f0
Make decoder init functions for G722.1/G719
2017-10-14 12:41:59 +02:00
bnnm
4d0c8b54fd
Add .CD wav extension
2017-10-14 12:34:32 +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
cb64f71ba0
Fix MUSC looping [Spyro: A New Beginning (PS2), Ty (PS2)]
2017-10-08 17:30:56 +02:00
Christopher Snowhill
1da9d0887a
Fix double-free.
2017-09-30 15:15:15 -07:00
Christopher Snowhill
bcfe417ab6
Merge branch 'master' of github.com:kode54/vgmstream
2017-09-30 15:04:50 -07:00
bnnm
07a6fba10f
Free HCA testbuf and reduce allocs
2017-09-30 19:36:13 +02:00
bnnm
6c5a97c8ed
Fix compiling in GCC (false not defined)
2017-09-30 19:20:09 +02:00
bnnm
25f7a64dc6
Merge branch 'master' of https://github.com/kode54/vgmstream into fixes
2017-09-30 11:48:17 +02:00
Christopher Snowhill
afdb135567
Oops, forgot to free it.
2017-09-29 17:03:21 -07:00
Christopher Snowhill
72f5f3e0b0
Dynamically allocate and resize the decode buffer when searching for HCA keys, preventing a serious crash due to decoding past the stack allocated buffer.
2017-09-29 16:56:43 -07:00
bnnm
14957d6269
Fix XWB split bug with some codecs
2017-09-30 01:52:49 +02:00
Christopher Snowhill
a1a98c2691
Handle uninitialized variable in case of non-matching extensions.
2017-09-29 16:31:47 -07: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
8a8ebe3e24
Minor renames for style (ps3_xvag > xvag, x360_nub > nub_xma)
2017-09-29 23:37:20 +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
8dfac7c465
Fix minor size bug in Wwise Vorbis
2017-09-29 23:27:21 +02:00
bnnm
0bb62ce57d
Minor comments/documentation
2017-09-29 23:26:42 +02:00
bnnm
a7acf244ae
Fix HCA crash bug when testing keys
2017-09-29 23:24:25 +02:00
Christopher Snowhill
edf8f7a913
Remove stale file, add missing header file references.
2017-09-24 16:04:32 -07:00
bnnm
81fd33612e
Add some HCA keys
2017-09-25 00:00:36 +02:00
bnnm
93a122536c
Get TXTH FFmpeg's num_samples if not specified, sometimes works
2017-09-24 22:28:35 +02:00
bnnm
9f90ca9181
Improve XNB [Dragon's Blade (Android)]; add .DA wav; extra exts
2017-09-24 22:27:33 +02:00
bnnm
02be212c54
Update VS project files for FFmpeg Opus (swresample.dll)
2017-09-24 19:15:24 +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
4bb1103e3d
Update bik FFmpeg init
2017-09-24 18:46:33 +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
d644d2f9f7
Add HCA key detection and key list
...
Updated the meta a bit so it's closer to others and optimized some
mallocs, as it was a bit hard to understand for me so I hope it's for
the better
2017-09-17 03:41:36 +02:00
bnnm
ccc8c53146
Add FILE log util
2017-09-17 03:38:11 +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
dd027f32eb
Fix some SCD with MARK chunk [Lightning Returns X360]
2017-09-17 03:35:03 +02:00
Christopher Snowhill
00e1a5f62d
Add missing awc.c to MSVC project files.
2017-08-28 15:16:56 -07:00
bnnm
ab4e1234d9
Remove unneeded MT info
2017-08-28 20:42:37 +02:00
bnnm
d46996a642
Improve Guitar Hero II multi-streams with block layout
...
Fixes partially by ignoring last stream, as it can be half sample rate
2017-08-28 20:05:03 +02:00
bnnm
b758e8f60d
Fix VAG interleave in rare cases [The Simpsons Wrestling (PS)]
2017-08-28 18:26:55 +02:00
bnnm
3001b7acba
Fix NGC STM regression [Fire Emblem Path of Radiance (GC)]
2017-08-28 17:47:19 +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
c4a6e6e194
Add read_64bitBE/LE for Rockstar AWC
...
They use it encode 3 values in 64b and save one byte in the process,
whee.
2017-08-28 15:11:52 +02:00
bnnm
5bf0ddbfac
Fix RWS PCM16BE [The Legend of Spyro (X360)]
2017-08-27 22:18:08 +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
6dcc890d19
Adjust FSB4 looping so most jingles don't loop
2017-08-26 03:23:39 +02:00
bnnm
27c69687d5
Fix some RWS num_samples [Burnout 2 (Xbox)]
2017-08-26 02:35:14 +02:00
bnnm
be5a0371f5
Fix division by zero in some cases
2017-08-25 23:27:23 +02:00
bnnm
a04b83b206
Add PCM8, fix subsongs for large files
2017-08-25 22:43:33 +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
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