Commit Graph

2008 Commits

Author SHA1 Message Date
bnnm
5e50819778 Add FSB FADPCM decoding [Dead Rising 4 (PC), Sine Mora EX (Switch)] 2018-02-25 10:05:28 +01:00
bnnm
3a11728846 Remove xbox_xwav.c as riff.c now should produce identical files 2018-02-24 22:37:17 +01:00
bnnm
bae7eb0fd1 Add .xwav to riff.c, now .lwav and .xwav decode the same 2018-02-24 22:32:13 +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
2966185f26 Add FSB key 2018-02-23 23:31:08 +01:00
bnnm
aca3dc5f2d Parse "wsmp" loop chunk, rarely found in Xbox games [Dynasty Warriors 5] 2018-02-23 23:30:55 +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
2992287e3f Fix XBOX_IMA missing layout_none 2018-02-17 22:16:41 +01:00
bnnm
2f05cfa2e9 Rename psx_mgav to ea_swvr 2018-02-17 21:19:55 +01:00
bnnm
216ecf04b2 Rename psx_mgav to ea_swvr and clean for future changes 2018-02-17 21:15:21 +01:00
bnnm
317fe4f7d3 Use xbox_ima_bytes_to_samples, WWISE-IMA follows XBOX-IMA and not MS-IMA
This can be seen comparing games of different platform, ex. Resogun PS3
(WWISE-IMA) vs Vita (ATRAC9)
2018-02-17 19:46:15 +01:00
bnnm
7c41cb22bf Add wwise_ima comment about alternate nibble expand 2018-02-17 19:44:18 +01:00
bnnm
47bdada1e8 Rename ps2_aus.c to aus.c for consistency 2018-02-17 19:05:13 +01:00
bnnm
a0fa4422ca Tweak minor debug stuff 2018-02-17 18:53:37 +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
830f904afb Use fact_samples if possible and add .snd [Layton Brothers (iOS)]
fact_samples can be specified with non-PCM codecs, per spec.
2018-02-17 17:32:58 +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
0b2902880c Minor reordering in get samples_per_frame/frame_size for consistency 2018-02-17 04:00:04 +01:00
bnnm
d969c85bc8 Remove unneeded loop fix 2018-02-17 03:29:58 +01:00
bnnm
67269eaf8a Add L2SD Ogg [Lineage II Chronicle 4 (PC)] 2018-02-17 02:23:45 +01:00
bnnm
cc5d8c4c9c Add comment 2018-02-17 02:09:48 +01:00
bnnm
72bb3f21ee Add Ubi RAKI PCM/Opus [Just Dance 2017, Raiman Legends (Switch)] 2018-02-17 02:09:30 +01:00
bnnm
6f28316317 Fix rare segfault in mdsp 2018-02-17 02:08:38 +01:00
bnnm
8a935c8c12 Add some Ubi SB0 [Surf's Up (PC)] 2018-02-17 02:07:43 +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
Alex Barney
90f09ac562 Skip initial padding in Switch Opus streams 2018-02-10 17:39:00 -06:00
bnnm
dfe3b1f607 Fix SXD with internal+external data [The Last Guardian (PS4)] 2018-02-10 17:51:55 +01:00
bnnm
3faae6fe6e Remove debug crap 2018-02-10 17:50:25 +01:00
bnnm
def9ebd7cb Fix some MSS DSP [TimeSplitters 2 (GC)] 2018-02-10 17:46:22 +01:00
bnnm
68041f4c98 Fix some SCHl EALayer3 [GoldenEye: Rogue Agent (Xbox)] 2018-02-10 17:45:49 +01:00
bnnm
e41df10893 Add XNB XMA (uncompressed) [Terraria (X360)] 2018-02-10 17:45:33 +01:00
Christopher Snowhill
03745aa8cc Disabled MAIATRAC3Plus library and removed its binaries from distribution. 2018-02-06 17:29:51 -08:00
Christopher Snowhill
cd2248c49f
Merge pull request #189 from bnnm/mab-scd
MAB, SCD
2018-02-04 16:39:53 -08:00
bnnm
ec052385a0 Fix SABs with long descriptors [Final Fantasy XV Benchmark sfx (PC)] 2018-02-03 19:26:57 +01:00
bnnm
c3b637a199 Add EA SNS/SPS DSP [Need for Speed Nitro sfx (Wii)] 2018-02-03 17:19:38 +01:00
bnnm
9a279c35b5 Remove debug crap 2018-02-03 15:40:43 +01:00
bnnm
87ccbb0eaa Add SAB OGG Vorbis [Final Fantasy XV Benchmark sfx (PC)] 2018-02-03 15:39:21 +01:00
bnnm
b885ef13ee Add MAB encrypted HCA [Final Fantasy XII TZA (PS4/PC)] 2018-02-03 01:27:57 +01:00
bnnm
fd21da2c61 Add SCD v4 ATRAC9 [Kingdom Hearts 2.8 (PS4)] 2018-02-03 01:27:35 +01:00
Alex Barney
a4431c3d5d Fix getting samples per frame for Switch Opus
Switch Opus uses the same output format that opus_demo writes. Each frame has an 8-byte header.
The first 4 bytes contain the length of the frame. The second 4 bytes contain the final state of the range coder.

8299edfc0c/src/opus_demo.c (L658-L681)
2018-01-29 18:07:08 -06:00
-
2e020143cf A small fix for Android. Songs from this set fails to play without the fix:Bionicle Heroes (2006-11-14)(Traveller's Tales)(Eidos) 2018-01-28 16:52:03 +02:00
bnnm
20ca3fc30d Add HCA key 2018-01-28 00:48:57 +01:00
bnnm
2da7cf0647 Add ADX keystring 2018-01-28 00:48:44 +01:00
bnnm
86ce73d181 Rename Wwise Vorbis enums with prefix for clarity 2018-01-28 00:47:06 +01:00
bnnm
528b5c3197 Fix bitrate for subsongs and rename streams > subsongs 2018-01-28 00:41:25 +01:00
bnnm
694cded587 Add stream_size to calculate bitrate in subsongs, print bitrate info 2018-01-28 00:31:12 +01:00
bnnm
a0a5143daa Fix some FSB IMA [Dead to Rights 2 (Xbox)] 2018-01-27 23:00:27 +01:00
bnnm
2ef0663d79 Add SQEX SAB/MAB (MPEG/ATRAC9/HCA/MSADPCM) [DQ Builders, FF XV (PS4)] 2018-01-27 22:34:48 +01:00
bnnm
2300a1165d Adjust raw XA detection for some DC STR 2018-01-27 17:08:04 +01:00
bnnm
d8c81bc14a Add Media.Vision ATX subfiles (decrypted) [Shining Blade (PSP)] 2018-01-27 14:00:31 +01:00
bnnm
8c7eba151a Add STREAMFILE for segmented files 2018-01-27 13:58:46 +01:00
bnnm
448d52fa4e Remove BGW ATRAC3 mode in FFmpeg in favor of custom streamfiles 2018-01-27 13:01:30 +01:00
bnnm
72d0151530 Setup BGW decryption directly in meta using custom streamfiles 2018-01-27 12:50:25 +01:00
bnnm
8b5d26bcd8 Remove log 2018-01-27 12:24:35 +01:00
bnnm
561c3fa8c1 Add Nippon Ichi SPS subfiles [ClaDun (PSP)] 2018-01-27 12:21:25 +01:00
bnnm
861e1ea796 Add Koei Tecmo ATL3 subfiles [One Piece Pirate Warriors (PS3)] 2018-01-27 11:53:15 +01:00
bnnm
d161050fca Update STREAMFILE code a bit 2018-01-27 11:08:51 +01:00
bnnm
d84929b499 Add comment 2018-01-27 11:08:00 +01:00
bnnm
88999d570d Add STREAMFILE for fake names (used to call other meta) 2018-01-27 11:07:45 +01:00
bnnm
a0e97683e4 Add Starbreeze XWC [Riddick Dark Athena, Syndicate] 2018-01-27 11:00:21 +01:00
bnnm
9201a7384d Fix XWB PCM8 [Unreal Championship (Xbox)] 2018-01-27 10:57:29 +01:00
bnnm
562341f999 Fix SCHl EA-XA v1 mono [Supercross 2000 videos] 2018-01-27 10:47:53 +01:00
Alex Barney
e70c9eaf33 Improve NSW Opus header handling 2018-01-26 11:06:44 -06:00
Alex Barney
8711f5325e Nop format support 2018-01-26 11:05:36 -06:00
bnnm
d1a6c9e67d Add rare SXD PS-APDCM [Hot Shots Golf: World Invitational (Vita)] 2018-01-21 02:14:41 +01:00
bnnm
2b0d5a420f Add Soundforge/Liar-Soft weird RIFF Ogg [Shikkoku no Sharnoth (PC)] 2018-01-21 01:47:02 +01:00
bnnm
ed29f694ed Add FSB decryption, keys and optional .fsbkey 2018-01-21 01:46:33 +01:00
bnnm
1d46fb1b14 Add RWS PCM16LE [DIRT: Origin of the Species (PC)] 2018-01-20 20:20:47 +01:00
bnnm
ae2ba1bc29 Update read_key_file for variable-sized keys 2018-01-20 20:06:15 +01:00
bnnm
0c016e6667 Merge branch 'master' of https://github.com/kode54/vgmstream.git into io
Conflicts:
	test/test.vcxproj
2018-01-20 13:49:54 +01:00
Alex Barney
a2a053e225 Add ADX key 2018-01-19 23:20:31 -06:00
Alex Barney
bcfcb71f47 Automate MSVC builds
- Add a script to download dependencies
- Move dependencies to "/dependencies"
- Update solution file so it contains all projects
- Add a script for building and packaging the MSVC builds
- Add information for using AppVeyor's continuous integration service
2018-01-19 20:58:58 -06:00
bnnm
75a1023b60 Add new streamfile definitions; don't segfault on close_streamfile(NULL) 2018-01-20 01:59:36 +01:00
bnnm
7d51693177 Clean FSB variable names and code 2018-01-20 01:40:42 +01:00
bnnm
8607c7a952 Change init_vgmstream_fsb4_wav to use custom IO, as a test 2018-01-20 00:55:37 +01:00
bnnm
dfbeee2cf3 Improve/add streamfile custom IO (subfiles, decryption, etc)
Adds some special streamfiles that do custom IO, meant to be chained
together.
2018-01-20 00:54:08 +01:00
bnnm
927a3b5f39 Remove PROFILE_STREAMFILE to simplify further changes, not used anymore 2018-01-19 00:16:14 +01:00
Christopher Snowhill
a5b19acfb8 Revert DLL runtime change, at least until foobar2000 hits v1.4 stable. 2018-01-16 23:19:37 -08:00
soneek
8477f88290 Added KTSS v3 support 2018-01-15 22:39:58 -05:00
soneek
c87c62b04f Added looping support for Vita GTD 2018-01-15 19:30:27 -05:00
bnnm
09f263f9cf Fix compiler warning 2018-01-14 01:12:58 +01:00
bnnm
9607feacca Add HCA key 2018-01-14 01:12:38 +01:00
bnnm
cbe4b19b92 Add .KM9 [Nobunaga no Yabou - Souzou (Vita)] 2018-01-13 17:47:40 +01:00
bnnm
3c37267732 Fix compiler warning 2018-01-13 15:23:17 +01:00
bnnm
149d4292a6 Add .ISD encrypted Ogg Vorbis (missing looping) [Gunvolt PC] 2018-01-13 15:22:58 +01:00
bnnm
3236676d5d Fix some XVAG interleave/subsongs/multichannel [God of War 3 (PS4)] 2018-01-13 11:36:35 +01:00
bnnm
b7d65f21dd Fix SCD Ogg subsong sizes, detection and V3 not decrypting last frames 2018-01-11 23:26:24 +01:00
bnnm
018ea2fc92 Fix Ogg Vorbis streamfile size to allow subsongs 2018-01-11 22:55:23 +01:00
bnnm
e26f66858c Rename ogg_vorbis_file.c to ogg_vorbis.c for consistence 2018-01-10 22:37:02 +01:00
bnnm
a67a83b9ed Add .SNGW Ogg Vorbis (normal and encrypted) [Capcom PC games]
Also remove ifdefs for meta_OGG_x, there was no benefit
2018-01-10 22:34:14 +01:00
bnnm
7134610495 Clean Ogg Vorbis code and IO/decryption callbacks for future changes 2018-01-10 21:12:23 +01:00
bnnm
bcad321b6d Fix SCD with dummy entries and add PS-ADPCM [Final Fantasy Type-0] 2018-01-10 20:31:57 +01:00
Christopher Snowhill
2b92a562a5
Merge pull request #172 from bxaimc/master
Updated additional project files to match current build tools.
2018-01-08 16:07:52 -08:00
bxaimc
6cd9bfb71b Quick interleave block size fix for OrbiPCM 2018-01-08 13:09:26 -05:00
bnnm
d85bca24ae Remove unused flag 2018-01-07 20:15:49 +01:00
bnnm
aa1134d5a2 Add missing ktss.c 2018-01-07 20:15:08 +01:00
bnnm
3e0c97d7eb Add HCA key 2018-01-07 20:14:08 +01:00
bnnm
29fc9386d6 Update Makefiles for ATRAC9, clean and remove .mingw variations 2018-01-07 20:13:20 +01:00
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