Commit Graph

2991 Commits

Author SHA1 Message Date
bnnm
1ba2637256 Clean XVAG meta for future changes 2018-08-25 16:23:15 +02:00
bnnm
9e54efe6d8 Remove FFMPEG_EA_XMA as it's now done with custom IO + layers 2018-08-25 13:22:57 +02:00
bnnm
e3255344cf Redo EA-XMA with custom IO for fixes [Skate (X360), NFS: MW (X360)] 2018-08-25 12:48:55 +02:00
bnnm
d8758f0cb5 Fix describe_vgmstream with layered_layout + FFmpeg 2018-08-25 12:22:40 +02:00
bnnm
8cf27cc15e Add .xna XWB [Touhou Makukasai ~ Fantastic Danmaku Festival (PC)] 2018-08-25 12:21:21 +02:00
bnnm
8a57cf4729 Add .dax RIFF [Love Game's - Wai Wai Tennis (PS1)] 2018-08-25 12:20:55 +02:00
bnnm
07ad3250f6 Clean EAAC streamfile and prepare for EA-XMA 2018-08-25 09:57:46 +02:00
bnnm
6654e44517 Improve/fix AWC XMA streamfile for certain cases
It was assuming reads were sequential, though they can skip to offset
(in practice rarely affected), and adjusted packet skip to improve a few
songs.
2018-08-25 09:57:20 +02:00
bnnm
b17719f69c Rename render_vgmstream_nolayout to _flat for clarity/consistency
But not layout_none to layout_flat, since it's used everywhere
2018-08-24 19:37:02 +02:00
bnnm
f576d9568c Rename nolayout.c to flat.c for consistency/clarity 2018-08-24 19:29:39 +02:00
bnnm
b4884522d8 Optimize STDIO/FOO streamfiles slightly
Tries to simplify code, and buffer is not emptied unless we really read
more data (useful for edge reads). get_offset is now reliable (though
never used).
2018-08-24 18:48:42 +02:00
bnnm
6c553882f3 Rename codec_version to codec_config to clarify 2018-08-23 18:07:45 +02:00
bnnm
ad4478ac2c Set dual stereo as a meta flag rather than a static list
Mainly for cleanup/style
2018-08-23 18:00:34 +02:00
bnnm
9ad2f578e6 Fix PSH/VSV loops and glitches [Romancing SaGa (PS2)] 2018-08-23 17:13:46 +02:00
bnnm
d7c2249358 Simplify XVAG looping code 2018-08-23 17:00:52 +02:00
bnnm
41281aa4e9 Tweak .snds priority again 2018-08-22 21:16:25 +02:00
bnnm
6b4f54df92 Add TXTH "loop_flag = auto" to autodetect PS-ADPCM loop points 2018-08-22 21:04:16 +02:00
bnnm
06c8ab1b3f Remove bik2a/bk2a fake extensions since they aren't used 2018-08-22 20:43:19 +02:00
bnnm
dcbc7e5b9b Lower parse priority of raw metas so TXTH has a chance to go first 2018-08-22 20:39:31 +02:00
bnnm
785741e7e1 Rename ps2_mib.c to ps_headerless,c 2018-08-22 20:29:29 +02:00
bnnm
69c791656e Move MIB+MIH to its own meta and fix rare files [Gladius (PS2)] 2018-08-22 20:10:31 +02:00
bnnm
925916690a Parse PS3 .bnk properly and remove ps3_klbs.c [L@ve Once (PS3)] 2018-08-22 19:26:19 +02:00
bnnm
75fb12eed4 Fix PS2 VGS/ASS/VPK/etc samples, glitches and cleanup 2018-08-22 19:19:31 +02:00
bnnm
27038c9ec8 Add .wavebatch PCM8 [Cars 2 (3DS)] 2018-08-21 22:39:47 +02:00
bnnm
58b8b0c8df Fix various .vag issues [Shikigami no Shiro (PS2), Red Star (PS2)]
Also cleanup and loop end was also off by 28 samples in several cases
2018-08-21 22:16:56 +02:00
bnnm
fe3538520b Add ps_find_loop_offsets util to find loop point in PS-ADPCM data 2018-08-21 22:14:55 +02:00
bnnm
cae82e9074 Clean builds and enable VGM_USE_VORBIS/MPEG manually for consistency 2018-08-20 20:08:24 +02:00
bnnm
2f0aaaf4fd Fix some compile ifdefs and warnings 2018-08-20 20:05:44 +02:00
bnnm
bb07299dae Make libvorbis/libmpg123 optional in autotools 2018-08-20 19:21:51 +02:00
Christopher Snowhill
1294f515f2
Merge pull request #276 from Thealexbarney/msvc-fread-fix
Workaround MSVC fseek/fread bug
2018-08-19 16:15:54 -07:00
bnnm
f6417c5430 Use standard buffer size for all metas
There is not no real about having small-ish buffers, simplifies buffer
tuning, and avoids having gigantic buffers on bad reads.
2018-08-19 22:51:14 +02:00
bnnm
a5656eaa2f Optimize buffer_streamfile EOF reads and fix get_offset behaviour 2018-08-19 22:31:12 +02:00
bnnm
2e6f6c8176 Remove unnecessary FFmpeg ifdef 2018-08-19 19:09:37 +02:00
bnnm
485e5b9cf7 Fix blocks hanging with broken files/incorrect offsets
Also removes unnecessary halpst case
2018-08-19 19:02:22 +02:00
bnnm
ca04dbca70 Add old .scd SSCF [Crisis Core FFVII (PSP), Dissidia 012 (PSP)] 2018-08-19 16:42:39 +02:00
bnnm
b083042704 Cleanup 2018-08-19 10:07:27 +02:00
bnnm
3b5be9d28a Fix disabling looping with layered layouts 2018-08-19 00:43:06 +02:00
bnnm
c204127332 Fix .rws subsong segments [Madagascar (PS2)] 2018-08-19 00:40:01 +02:00
bnnm
d93a4b2c7a Add proper H4M decoding [Resident Evil 0 (GC), Tales of Symphonia (GC)] 2018-08-19 00:38:08 +02:00
bnnm
93b66b2aa6 Clean .rws code 2018-08-17 22:47:33 +02:00
bnnm
b71d568acb Improve .sts+int/.x [Shadow of the Colossus (PS2), Ape Escape 3 (PS2)] 2018-08-16 20:06:57 +02:00
bnnm
7734e4d87f Improve BFSTM region handling 2018-08-16 20:06:38 +02:00
bnnm
2e90f4de57 Reject EXST in .int meta and cleanup 2018-08-16 20:06:14 +02:00
bnnm
611e556809 Reject files with incorrect num_streams 2018-08-16 20:05:53 +02:00
bnnm
8d7fb21c8f Check max filesize to avoid buggy reads
It was affecting some truncated Switch Opus that were reporting too many
samples
2018-08-15 22:47:22 +02:00
bnnm
6eaf516b23 Tweak FSB ifdefs 2018-08-15 21:19:25 +02:00
bnnm
a3534d7d11 Fix TXTH divide-by-zero with half_size and ch=0 2018-08-15 21:19:12 +02:00
bnnm
9c8323122c Improve read/seek performance for blocked layouts 2018-08-15 20:21:55 +02:00
bnnm
9e06652264 Redo .nus3bank to parse as a bank with subsongs
Also removes hacky code from idsp, since it's now on its own file
2018-08-15 19:59:10 +02:00
bnnm
1f6c384a48 Fix EA EAAC looping for RAM assets 2018-08-15 17:37:06 +02:00
bnnm
f4189f2482 Minor debug stuff 2018-08-15 17:36:20 +02:00
bnnm
e3b93755cc Add HCA key 2018-08-15 17:34:36 +02:00
bnnm
79cad960ae Add Sony .bnk [Puyo Puyo Tetris (PS4), NekoBuro: Cats Block (Vita)] 2018-08-15 17:34:17 +02:00
bnnm
cab8605959 Add atrac9_parse_config util 2018-08-15 16:42:34 +02:00
bnnm
f9f93e74e7 Fix segfault while reading some .xsb for .xwb 2018-08-15 00:49:17 +02:00
bnnm
9333a22c16 Remove some minor deprecated warnings
Tested with all major codecs we use for FFmpeg, all decode the same
2018-08-15 00:18:05 +02:00
bnnm
2c917c0792 Remove some minor unused warnings 2018-08-15 00:16:54 +02:00
bnnm
65a69982b6 Clean G719/G7221 a bit and remove innecessary use of stack_alloc 2018-08-14 22:20:36 +02:00
bnnm
985a3aead6 Clean .bfstm and add region debug code 2018-08-14 20:25:17 +02:00
bnnm
12167c7318 Fix EA SCHl ATRAC3 skip samples and remove .AST (playable with .ABK+AST) 2018-08-14 16:35:50 +02:00
bnnm
d22ee3051a Clean FFmpeg skip samples parsing 2018-08-14 16:35:17 +02:00
bnnm
cb1901eabe Merge branch 'master' of https://github.com/kode54/vgmstream into etc 2018-08-14 00:28:35 +02:00
bnnm
b36646aacf Add .hd3+bd3 [Elevator Action Deluxe (PS3), R-Type Dimensions (PS3)] 2018-08-14 00:28:15 +02:00
Christopher Snowhill
7840d9df1f
Merge pull request #279 from NicknineTheEagle/ea-fixes
EA formats
2018-08-13 14:43:56 -07:00
bnnm
36c6168c27 Add Firebrand Games .wavebatch [NFS: The Run (3DS), F&F: Showdown (3DS)] 2018-08-13 23:03:39 +02:00
bnnm
c26ad84497 Add TXTH sample_mode "blocks" (where bytes = blocks*interleave*channels) 2018-08-13 23:02:31 +02:00
bnnm
fa848c2ccd Fix FSB with CELT disabled 2018-08-12 23:12:09 +02:00
bnnm
c1e7e3b1f9 Enable CELT for MSVC project files 2018-08-12 23:00:28 +02:00
bnnm
2e4b8d6c31 Add multistream ATRAC9 FSB5 [Little Big Planet (Vita)] 2018-08-12 22:56:41 +02:00
bnnm
5720278d2d IDSP cleanup 2018-08-12 18:04:19 +02:00
bnnm
efb01a921c Add .wua IDSP and cleanup [Lego Dimensions (Wii U)] 2018-08-12 17:13:51 +02:00
bnnm
c7f9a47fcd Fix rare EALayer3 with proper loops [Need for Speed: World (PC)] 2018-08-12 14:03:04 +02:00
bnnm
7f424bb7e9 Disable dump_streamfile when debug isn't used, just in case 2018-08-12 13:58:48 +02:00
bnnm
0e924b6467 Fix possible FSB memleak 2018-08-12 13:57:53 +02:00
bnnm
9c6376fb25 Fix rare EA 1SNh crashes 2018-08-12 10:59:19 +02:00
bnnm
e301bf7aa8 Rename ps2_vpk.c to vpk.c (used in PS3) 2018-08-12 02:20:51 +02:00
bnnm
0502a6a74f Fix VPK num_samples and cleanup [God of War (PS2), NBA 08 (PS3)] 2018-08-12 02:19:17 +02:00
bnnm
766eac4b9e Rename ps2_vag.c to vag.c (used by other Sony consoles) 2018-08-12 01:27:22 +02:00
bnnm
14cd8bf191 Fix some .xwb [Project Gotham Racing 3 (X360)] 2018-08-12 01:23:58 +02:00
bnnm
3456383990 Fix some .wem [Saints Row the 3rd (PC)] 2018-08-12 01:04:44 +02:00
bnnm
07bb40071a Add FSB CELT decoder [Vessel (PC), Runner2 (PC)]
Corresponding libs will be added later
2018-08-12 00:58:20 +02:00
bnnm
18173d6870 Clean FSB4 for future changes 2018-08-11 18:06:03 +02:00
bnnm
b27e559e42 Clean FSB5 for future changes, also fix >2.5GB last subsongs 2018-08-11 18:01:37 +02:00
bnnm
36db25e876 Fix layered layout with layers of varying channels 2018-08-11 17:58:59 +02:00
bnnm
b438b5fa01 Add debug util for easier custom IO testing 2018-08-11 17:58:16 +02:00
bnnm
962b323e71 Cleanup and extra BAO debug 2018-08-11 17:57:22 +02:00
bnnm
1f6b0b2caa Clean unused variable 2018-08-11 17:56:00 +02:00
bnnm
b21d078aa6 Add ADS .800 extension [Gundam: The One Year War (PS2)] 2018-08-11 17:55:30 +02:00
bnnm
c4206e705b Fix some .bgw negative samples [Final Fantasy XI (PC)] 2018-08-11 17:54:42 +02:00
bnnm
9e0c4ebd3d Fix rare ATRAC9 memleak 2018-08-11 17:54:08 +02:00
AnonBaiter
4469f0b861
revert my VPK "fix"
turns out that VPK files that contain more than a mere 2 channels really have a divided interleave number by 2
this was necessary so said VPK files wouldn't play improperly anymore
2018-08-10 15:09:37 -03:00
AnonBaiter
5e00ff9214
Update ps2_ads.c 2018-08-08 15:52:43 -03:00
NicknineTheEagle
6727c0de7b Fixed offset in BNK parser 2018-08-08 21:20:08 +03:00
NicknineTheEagle
8d4ead42cf EA SCHl: added default 3DS sample rate (32000 Hz) 2018-08-08 20:18:35 +03:00
NicknineTheEagle
ca9cfc6917 Removed the supposed version check from ABK parsers
The only reason I put it there is to distinguish old ABK from new ABK but then it turned out that they can have matching values in that field so... yeah, let's just do it another way
2018-08-08 19:23:51 +03:00
NicknineTheEagle
e4c34b7c0b Added another ABK version stamp [FIFA 12 (3DS)] 2018-08-08 19:16:04 +03:00
NicknineTheEagle
4d0926933b Fixed incorrect variable being used 2018-08-08 17:14:24 +03:00
NicknineTheEagle
c88dee0ebb Improved EA ABK support 2018-08-08 17:07:01 +03:00
NicknineTheEagle
15cc60e604 Some organization and better endianness checks in EA parsers 2018-08-08 17:06:39 +03:00
Christopher Snowhill
ae5e218518
Merge pull request #275 from NicknineTheEagle/ubi-bao
Ubisoft BAO
2018-08-07 14:37:00 -07:00
NicknineTheEagle
20c729ae72 Formatting tweaks 2018-08-07 21:27:52 +03:00
NicknineTheEagle
0113a56870 Minor tweaks 2018-08-07 15:57:26 +03:00
Christopher Snowhill
03dd4383c0 Added a workaround to RIFF for Halo 2 PC. 2018-08-06 20:05:11 -07:00
NicknineTheEagle
3a2d115aa8 Ubi BAO: XMA fix 2018-08-06 22:58:28 +03:00
NicknineTheEagle
a284aee0f2 Ubi BAO: Added support for Rayman Raving Rabbids: TV Party (Wii) 2018-08-06 17:19:59 +03:00
NicknineTheEagle
470c50cf0e Minor tweaks 2018-08-06 14:29:43 +03:00
NicknineTheEagle
f27280c44d Ubi BAO: Further work on XMA support 2018-08-06 13:03:24 +03:00
NicknineTheEagle
ea133a19bf Ubi BAO: XMA fixes 2018-08-05 19:20:13 +03:00
NicknineTheEagle
9d6bc91c0a Ubi BAO: Added prefetched sound support to later version BAO versions 2018-08-05 15:44:38 +03:00
NicknineTheEagle
d49019a1ca Ubi DAO: Added support for prefetched sounds 2018-08-05 04:42:24 +03:00
Christopher Snowhill
3a7b590dfe
Merge pull request #274 from bnnm/ck-xa-fsb-str
CK, XA, FSB, STR
2018-08-04 13:58:32 -07:00
Alex Barney
c74b0841ca Workaround MSVC fseek/fread bug 2018-08-04 15:47:46 -05:00
NicknineTheEagle
ad489953f4 Fixed indentation 2018-08-04 22:42:12 +03:00
NicknineTheEagle
655325cc01 Ubi BAO: Added support for Splinter Cell: Conviction (PC) 2018-08-04 22:30:31 +03:00
bnnm
790525f990 Redo Blitz Games STR+WAV [Zapper (GC), Tak (PS2)]
Also removes 3 metas that parsed Blitz stuff
2018-08-04 21:02:10 +02:00
bnnm
10dc43f2fb Use streamfile helpers 2018-08-04 20:42:25 +02:00
bnnm
0fc5b466c8 Add some extra streamfile helpers 2018-08-04 20:42:00 +02:00
bnnm
6384b91f8f Fix FSB4 MPEG weird padding bug [Mafia II (PS3)] 2018-08-04 20:40:02 +02:00
bnnm
ffe7de0acc Improve XA detection to avoid clashing with .str 2018-08-04 20:39:33 +02:00
Christopher Snowhill
4a29bed092
Merge branch 'master' into ea-fixes 2018-08-03 19:16:12 -07:00
Christopher Snowhill
cca30df28d
Update ea_schl.c
Enclose Atrac3plus section in VGM_USE_FFMPEG macro block.
2018-08-03 19:13:25 -07:00
bnnm
4703dcaf4f Add FSB5 PCM16BE/VAG/XWMA and improve rare behaviors (from tool tests) 2018-08-03 02:16:19 +02:00
bnnm
8f17cf75d6 Tweak non-interleaved mode for VAG/GCADPCM (from tool tests), cleanup 2018-08-03 02:12:47 +02:00
bnnm
d4c0362c30 Minor info (algorithm verified) 2018-08-03 00:47:54 +02:00
bnnm
e1434bc432 Clean DTK decoder to clarify similarities with XA 2018-08-03 00:46:36 +02:00
bnnm
16f2474a50 Add .WV6 IMA [The Fairly OddParents: Breakin' Da Rules (PC)] 2018-08-02 18:22:01 +02:00
bnnm
6a86414990 Fix form1 XA bugs [Glint Glitters (PS1), Dance! Dance! Dance! (PS1)] 2018-08-02 17:21:09 +02:00
bnnm
5dc8d55c7f Add file_size fail check for +2GB files 2018-08-02 17:17:58 +02:00
bnnm
492f43a554 Merge branch 'master' of https://github.com/kode54/vgmstream into ck-xa-fsb 2018-08-02 17:15:38 +02:00
bnnm
a4f67bf077 Add Cricket Audio .cks/ckb [Part Time UFO, Mega Man 1-6 (Android)]
Includes Cricket Audio's MSADPCM variation, also cleaned up MSADPCM code
2018-08-02 17:15:09 +02:00
bxaimc
fcc728c8b1 Add Entergram NXA Opus 2018-08-01 01:24:26 -04:00
NicknineTheEagle
baaec69a46 Added macros for some common constants in EA parsers 2018-07-31 10:26:55 +03:00
NicknineTheEagle
9b3c2ca8f7 Added a missing version stamp to ABK 2018-07-29 09:21:44 +03:00
bnnm
82ffe6d9e2 Fix some .snwg loops [Mega Man X Legacy Collections: X1/2/3 (PC)] 2018-07-27 17:30:58 +02:00
bnnm
b95080d881 Add .xsew wav [Mega Man X Legacy Collection 1 & 2 (PC)] 2018-07-27 17:18:10 +02:00
bnnm
87bd10073d Adjust ASF shift modes after debugging info 2018-07-27 17:13:10 +02:00
bnnm
4337f00d5d Fix XWB v1 subsongs [Silent Scope Complete (Xbox)] 2018-07-27 17:12:09 +02:00
bnnm
5e68567961 Fix compiler warnings 2018-07-27 17:11:50 +02:00
bnnm
61034484ab Add XMD decoder [Silent Hill 4, Castlevania: Curse of Darkness (Xbox) 2018-07-27 17:11:11 +02:00
AnonBaiter
ec4824e6f3
extra fix 2018-07-24 14:29:50 -03:00
AnonBaiter
8f1cc0b127
(step 2/2) "add" UV, TGQ extensions
in which i actually add the extensions on formats.c
2018-07-24 14:28:51 -03:00
AnonBaiter
b5eb0e8bf5
(step 1/2) "add" UV, TGQ extensions
messing with ea_1snh.c, done
2018-07-24 14:22:42 -03:00
Christopher Snowhill
637ec27998
Merge pull request #265 from NicknineTheEagle/ea-formats
More EA formats
2018-07-23 19:08:02 -07:00
Christopher Snowhill
eee451aa68
Merge pull request #266 from bnnm/xa-aif-eamt
XA, AIF, EA-MT
2018-07-23 19:07:35 -07:00
Christopher Snowhill
e799a27446 Update ASF decoder based on decompilation of original decoder. 2018-07-23 18:56:35 -07:00
NicknineTheEagle
971525261a Added a missing BNK header tag 2018-07-24 03:50:16 +03:00
NicknineTheEagle
f6eae57a94 Added a missing ABK version stamp 2018-07-24 02:39:32 +03:00
NicknineTheEagle
7412e8ac14 Disable EA-XA ADPCM hist entirely for BNK 2018-07-24 01:39:54 +03:00
bnnm
2f5abcb11a Add .ai AIFF extension [Dragon Force (SAT) sfx] 2018-07-23 20:05:35 +02:00
bnnm
65b80e5fd7 Fix .adp raw XA [Phantasy Star Collection (SAT)] 2018-07-23 19:36:08 +02:00
bnnm
d48d2a4c87 Add .adp AIFF extension [Sonic Jam (SAT)] 2018-07-23 10:27:12 +02:00
NicknineTheEagle
39284cf233 Further work on the new ABK format 2018-07-23 01:31:35 +03:00
bnnm
e6f7abe20e Fix EA-MT full loops not being properly reset 2018-07-23 00:28:21 +02:00
bnnm
b71739de5e Fix XA missing num_samples at the end 2018-07-22 23:19:10 +02:00
bnnm
fd7ecbd393 Add AIFF with XA ADPCM [Crusader: No Remorse (SAT), Road Rash (3DO)] 2018-07-22 23:13:03 +02:00
bnnm
0dc2c81ab9 Handle XA ADPCM in a more standard way
It was decoding one 28-sample subframes and blocked layout handled
frames, doing some voodoo to skip CD sectors.
Now decodes one 28*8-sample frame and blocked layout handles CD sectors.
Decoding is byte-exact vs before.
2018-07-22 23:08:09 +02:00
NicknineTheEagle
5ee34e32ff Fixed stream size for Atrac3+ in BNK 2018-07-22 21:40:46 +03:00
NicknineTheEagle
5b5f5036e0 Fixed Atrac3+ for BNK format 2018-07-22 20:20:04 +03:00
NicknineTheEagle
04debd021e Merge remote-tracking branch 'origin/master' into ea-formats
# Conflicts:
#	src/meta/ea_schl.c
2018-07-22 05:34:26 +03:00
NicknineTheEagle
d7dfa205ea Added a missing ABK parameter 2018-07-22 05:17:33 +03:00
NicknineTheEagle
4f832266e3 Minor tweaks 2018-07-22 04:43:10 +03:00
Christopher Snowhill
8e16eb108c
Merge pull request #263 from bnnm/schl-txtp-psx
SCHl, TXTP, PSX
2018-07-21 17:32:21 -07:00
bnnm
4439047fd1 Minor doc 2018-07-22 00:47:31 +02:00
bnnm
907a0af3df Add missing nus3 OPUS .opus extension
Also remove tabs to fix GCC warnings about mixing spaces and tabs
2018-07-22 00:47:00 +02:00
bnnm
57b8c6acd3 Add TXTP 'm' channel mapper/swapper
Credit to topher-au for the initial idea/code
2018-07-22 00:46:08 +02:00
bnnm
099a4abc66 Add EA SCHl ATRAC3plus [The Sims 2 Castaway (PSP), MoH: Heroes 2 PSP)] 2018-07-21 23:34:00 +02:00
NicknineTheEagle
0210489f83 Added support for newer EA ABK format 2018-07-22 00:18:12 +03:00
bnnm
d4ba9d9d57 Fix potential bugs 2018-07-21 23:05:20 +02:00
NicknineTheEagle
d5745c9d6e EAAC tweaks 2018-07-21 23:09:44 +03:00
NicknineTheEagle
611aa5ed11 Fixed uninitialized local variable 2018-07-21 21:58:18 +03:00
NicknineTheEagle
b6080f6bdc Added EA HDR/STH/DAT format support 2018-07-21 21:58:01 +03:00
NicknineTheEagle
4d10e91c27 Added EA IDX/BIG format support 2018-07-21 21:57:35 +03:00
bnnm
af70e95877 Tweak PS-ADPCM decoding [inFamous (PS3)]
- Code now more verbose, but easier to understand (by me, at least)
- Unify normal and badflags code
- Fix hist1 not being properly clamped, though not noticeable
- Fix inFamous (PS3) which seemingly wasn't using the extended table but
hitting some compiler weirdness? (failed in foobar and worked in test)
- Use int math for PSX-cfg, which should be minimally more accurate
2018-07-21 20:15:07 +02:00
bnnm
1ec9463235 Fix VGM_ASSERT_ONCE 2018-07-21 20:12:40 +02:00
bnnm
dc4cee2daf Clean .pos code [Ys I Complete (PC)] 2018-07-21 20:12:09 +02:00
NicknineTheEagle
b954a87787 Added more missing BNK header tags 2018-07-20 10:17:25 +03:00
bxaimc
34fda0011a Add loop support for Air (Android) Oggs. Add .lflac extension for 'fun' and for use with .pos 2018-07-20 01:14:41 -04:00
NicknineTheEagle
d85406511f EA SCHl: fail if unknown header tag is encountered 2018-07-19 15:56:59 +03:00
NicknineTheEagle
d825b6ba4d Added more missing BNK header tags 2018-07-19 15:55:51 +03:00
NicknineTheEagle
33048337c4 EA SCHl: fixes for Gamecube 2018-07-19 07:26:48 +03:00
NicknineTheEagle
5d6fc0a9bc Ignore duplicate entries in ABK files 2018-07-19 00:24:16 +03:00
NicknineTheEagle
496315bb91 Added even more missing BNK header tags 2018-07-18 22:42:35 +03:00
NicknineTheEagle
779eef0282 Adjust ADPCM hist detection in BNK files 2018-07-18 22:42:23 +03:00
NicknineTheEagle
79f672b7cb Added more missing BNK header tags [NASCAR 06 (Xbox)] 2018-07-18 20:25:00 +03:00
NicknineTheEagle
be00f0a988 Added EA HDR/DAT format support 2018-07-18 19:32:33 +03:00
NicknineTheEagle
b48c31723c EA ABK fix 2018-07-18 09:56:35 +03:00
NicknineTheEagle
dc1a98361f Further work on EA ABK format 2018-07-18 08:54:32 +03:00
NicknineTheEagle
51146cd612 Merge remote-tracking branch 'origin/master' into patch-1 2018-07-18 05:18:35 +03:00
NicknineTheEagle
5af027e5f9 Added streamed ABK version support (ABK/AST combo) 2018-07-18 02:39:47 +03:00
bnnm
2129afaf75 Fix some EA-XMA [Need for Speed: The Run (X360)] 2018-07-18 00:53:09 +02:00
bnnm
d6795b63c3 Add ASF decoder [Croc 2 (PC), Aladdin: Nasira's Revenge (PC)] 2018-07-18 00:52:24 +02:00
bnnm
bbd50c78ee Minor doc 2018-07-18 00:37:14 +02:00
NicknineTheEagle
2056155c6b Indent fix 2018-07-18 00:19:47 +03:00
NicknineTheEagle
5d6b603055 Added EA ABK header support 2018-07-18 00:14:28 +03:00
NicknineTheEagle
5b27c21a0b Handle dummy streams in EA BNK files 2018-07-17 23:57:08 +03:00
NicknineTheEagle
e2160f4e09 Added a helper function for auto-detecting value endianness 2018-07-17 23:54:24 +03:00
bxaimc
69c2e9f07f Add Falcom NLSD Opus (Ys VIII [Switch]) 2018-07-15 03:49:33 -04:00
bxaimc
5b3a001082 Add Bandai Namco Opus found in NUS3Banks (Taiko no Tatsujin and future games) 2018-07-15 02:37:15 -04:00
bnnm
62bd5140c5 Cleanup 2018-07-15 00:20:42 +02:00
bnnm
c9f091fb6e Fix PS3 EA SCHl [Need for Speed: Carbon (PS3)] 2018-07-14 23:08:45 +02:00
bnnm
572cd6a621 XA code cleanup
Decoding is still the same (byte-exact)
2018-07-14 23:08:07 +02:00
bnnm
2c6091fab3 Fix some .wem PCM [Limbo (PC)] 2018-07-14 23:04:17 +02:00
bnnm
deea00d566 Fix compiler warning 2018-07-14 23:04:04 +02:00
bnnm
2dc2ed474d Add debug log 2018-07-14 23:03:48 +02:00
bnnm
3eed8c418d Add SVG extension [Hunter: The Reckoning - Wayward (PS2)] 2018-07-14 23:03:28 +02:00
bnnm
cbcacda6e4 Fix some EA SNS end samples [Need for Speed Undercover (PS3)]
SNS flag was being read as a signed value, returning a smaller file size
2018-07-14 23:02:40 +02:00
bnnm
7c84391c26 Fix some Frostbite SPS [Need for Speed: The Run (X360)] 2018-07-14 23:00:02 +02:00
Christopher Snowhill
f5551f7415
Update ps2_vpk.c
Fix channels variable references.
2018-07-10 17:23:04 -07:00
AnonBaiter
dd88a38f8c
Adjust VPK code to fix some oddities
this is my first time at coding so see if there's some big goof-up i made up here
2018-07-10 18:20:05 -03:00
bnnm
272f25cebb Fix bank .ivaud [GTA IV (PC)] 2018-07-06 23:41:29 +02:00
bnnm
44dc7ce7ea Add missing EA SCHl patch [SSX3 (PC)] 2018-07-06 21:27:49 +02:00
bnnm
23974334c9 Fix some EA SCHl MicroTalk [Need for Speed: Most Wanted (PC)] 2018-07-06 21:14:56 +02:00
bnnm
383bd41b5f Don't setup offsets when samples=0 to avoid EOF reads 2018-07-06 21:07:08 +02:00
bnnm
780e642543 Fix some Frostbite .SPS [Need for Speed: The Run (PC)] 2018-07-06 21:04:27 +02:00
bnnm
2df613d893 Fix various music .ivaud [GTA IV (PC)] 2018-07-06 21:04:06 +02:00
bnnm
d158a4a35e Simplify struct memsets, using standard 0-setup 2018-07-06 19:37:26 +02:00
bnnm
0cae31d045 Add doc 2018-06-30 21:24:19 +02:00
bnnm
d5f8b4f078 Fix some .joe looping jingles 2018-06-30 20:43:26 +02:00
bnnm
78542225f5 Allow extensionless files in Winamp [Baten Kaitos 2 (GC)] 2018-06-30 17:35:07 +02:00
bnnm
2695612624 Fix The Bouncer .vs (.str) 2018-06-30 16:01:29 +02:00
bnnm
dbb5a4458b Add .mus Ogg [Redux - Dark Matters (PC)] 2018-06-30 13:43:12 +02:00
bnnm
57f8c1922e Add hca keys 2018-06-30 13:31:20 +02:00
bnnm
9ca643d09e Add .vai/apc extensions 2018-06-30 13:31:12 +02:00
Shawn Presser
a700fda10d
Update xvag.c 2018-06-28 15:30:33 -05:00
Shawn Presser
e91703fe6a If a file has no extension, try to play it anyway
This allows fb2k to play Last Of Us (PS3) speech files, which have no
file extension.
2018-06-21 22:53:19 -05:00
bxaimc
ca5cdfe5a9 Add HCA decryption key for PriPara: All Idol Perfect Stage (Switch) 2018-06-18 03:34:56 -04:00
bnnm
12233dd0bb Remove ps2_adsc as it's handled in ps2_ads now 2018-06-17 01:12:53 +02:00
bnnm
ae3307e6f0 Redo ADS to fix various issues
- Fix minor samples bugs
- Fix ADSC variation [Kenka Bancho 2, Shunjuku no Okami]
- Fix misc loops [Culdcept, Katakamuna, Super Galdelic Hour]
- Fix Capcom loops [MM X7, BOF5, Clock Tower 3]
- Fix cavia loops [Drakengard 1/2, GITS: Stand Alone Complex]
- Fix Angel Studios videos [Red Read Revolver, Spy Hunter 2]
- Fix misdetected files [Gran Turismo 2000 videos]
2018-06-17 01:08:52 +02:00
bnnm
a535a497f4 Fix some vid EA SCHl and simplify EA block parsing 2018-06-17 01:06:38 +02:00
bnnm
8dd90cd783 Make sure samples_to_do 0 does nothing in blocked layout
It would affect some decoders with codec_data (ex. EA-MT), even though
decoded samples were being ignored
2018-06-17 01:04:16 +02:00
bnnm
2e75bce0c3 Add .fsb basic headers mode [Biker Mice from Mars (PS2)] 2018-06-17 00:52:46 +02:00
bnnm
90c3613289 Fix some Ubi Lyn [Michael Jackson The Experience (Wii)] 2018-06-17 00:51:42 +02:00
bnnm
5b2af49f57 Fix some .wem [Guitar Hero Live (X360)] 2018-06-17 00:50:42 +02:00
bnnm
1a73c574c0 Clean ADS code 2018-06-10 21:08:06 +02:00
bnnm
4e15ba517b Add MPS extension 2018-06-10 19:27:14 +02:00
bnnm
3be7ec8c68 Add FSB key [Monster Jam (PS2)] 2018-06-10 19:26:37 +02:00
bnnm
973a649fbe Document MIH/MIB/MIC/MSH details 2018-06-09 19:30:20 +02:00
bnnm
7a21345415 Fix some Ubi Jade [Peter Jackson's King Kong (Xbox)] 2018-06-09 17:33:15 +02:00
bnnm
ff6abc48fa Fix some FSB [Hard Reset (PC)] 2018-06-09 17:32:35 +02:00
bnnm
c9175e4d28 Fix JOE num_samples 2018-06-09 17:31:08 +02:00
bnnm
de9fe570e0 Add subsongs for FFmpeg formats 2018-06-09 17:30:28 +02:00
Christopher Snowhill
254791551b
Merge pull request #235 from bnnm/h4m-joe-aif
H4M, JOE, AIF
2018-06-03 14:44:42 -07:00
bnnm
9d86c42ea4 Add .H4M videos (wip) 2018-06-03 13:08:41 +02:00
Michael Turutanov
7cec87720c Added HCA key for Princess Connect Re:Dive 2018-06-02 17:29:22 +03:00
bnnm
66e2c9c671 Fix some .JOE [Super Farm (PS2), Sitting Ducks (PS2), The Mummy (PS2)] 2018-06-02 16:14:26 +02:00
bnnm
88250d3d26 Add AIFC IMA4 [Alida (PC)] 2018-06-02 16:13:37 +02:00
bnnm
48c11e81ca Fix some .XWC [The Darkness (X360)] 2018-06-02 16:05:58 +02:00
bnnm
776d85fee0 Fix TXTP upper ranges 2018-06-02 16:01:58 +02:00
Christopher Snowhill
311eeebc1b
Merge pull request #232 from bnnm/xwb-lyn-etc
XWB, LYN, etc
2018-05-27 14:52:16 -07:00
bnnm
4ad607c520 Add .xss RIFF extension [Spider-Man the Movie (Xbox)] 2018-05-27 17:32:15 +02:00
bnnm
2772696166 Add .rda extension [Rhythm Destruction (PC)] 2018-05-27 17:31:20 +02:00
bnnm
79ab74bf4a Add .xwb ATRAC9 [Stardew Valley (Vita)] 2018-05-27 17:30:59 +02:00
bnnm
7ad34736a3 Fix TXTH data_size for IMA 2018-05-27 17:29:23 +02:00
bnnm
9af7eadbcb Fix some Ubi LyN [Michael Jackson the Experience (PS3)] 2018-05-27 17:28:48 +02:00
Christopher Snowhill
f26b99b6cb
Update txtp.c
Fix "mode" keyval parse to else-if condition so other conditions don't fall through it.
2018-05-26 16:26:55 -07:00
Christopher Snowhill
b341f8d6b6
Merge branch 'master' into master 2018-05-20 16:22:31 -07:00
bxaimc
05aca5ceeb Formatting some things 2018-05-19 16:17:18 -04:00
bxaimc
94a9cf1f7f Add SADF DSP variant from Xenoblade Chronicles 2 (Switch) 2018-05-19 16:05:25 -04:00
bnnm
a57134dc2b Add .gwd Ogg [Adagio Cloudburst (PC)] 2018-05-19 11:37:21 +02:00
bnnm
f1f165a815 Minor Ogg Vorbis cleanup 2018-05-19 11:24:20 +02:00
bnnm
883e018aab Fix nus3bank with varying header [Super Smash Bros (Wii U)] 2018-05-19 11:22:29 +02:00
bnnm
1888990b75 Add HCA key 2018-05-19 11:22:08 +02:00
bnnm
b23e1fbac7 Extra validations for Wwise/Jade 2018-05-19 11:21:40 +02:00
bxaimc
bcf2948a7d Add channel multiplier for KNS/KTSS in Hyrule Warriors (Switch) 2018-05-17 14:27:18 -04:00
bxaimc
0cbdbd8b7c Remove unread PSI metadata ext 2018-05-16 19:53:15 -04:00
bxaimc
caf3bb871c Add PSI file reading in Opus for loops in BlazBlue: Cross Tag Battle (Switch) 2018-05-16 17:58:09 -04:00
bnnm
17952d0db7 Add .rxx extension 2018-05-12 13:55:12 +02:00
bnnm
92419c2143 Add tri-Ace .aac Vita [Judas Code (Vita)] 2018-05-12 13:53:58 +02:00
bnnm
a975eff1a2 Fix TXTH XMA multichannel and num_samples 2018-05-12 13:53:43 +02:00
bnnm
68c8f1bb76 Fix missing .lopus 2018-05-06 11:56:54 +02:00
bnnm
6276df57b5 Add TXTP "mode = layers" for multilayered songs 2018-05-05 23:07:50 +02:00
bnnm
c09bc1e936 Add .xwb DSP hack [Stardew Valley (Switch)]
Also try to open common .xsb name combos
2018-05-05 23:06:59 +02:00
bnnm
f586f443e8 Fix some EA SWVR [Freekstyle (PS2/GC)] 2018-05-05 23:02:22 +02:00
bnnm
da930bc3c9 Add .opus variation [Fast RMX (Switch)] 2018-05-05 23:01:49 +02:00
Christopher Snowhill
35cd14fa04
Merge pull request #220 from bnnm/bao-downmix-etc
BAO, downmix, etc
2018-04-29 17:04:19 -07:00
bnnm
a924859d8f Fix ADX key 2018-04-29 23:46:29 +02:00
bnnm
fb63ad4aae Clean mib and add PS-ADPCM check 2018-04-29 21:05:30 +02:00
bnnm
d292531654 Add switch_audio [Gal Gun 2 (Switch)] 2018-04-29 21:04:55 +02:00
bnnm
65b322943f Add .trj/trm extensions [Need for Speed 3 (PS)] 2018-04-29 20:31:08 +02:00
bnnm
10e506675b Add (wip) Ubi .pk support [Just Dance (Wii)] 2018-04-29 20:28:27 +02:00
bnnm
eb9fdbf188 Add ADX key 2018-04-29 20:25:51 +02:00
bnnm
59ac455447 Fix some EA SCHl [Need for Speed 3 (PC)] 2018-04-29 19:41:38 +02:00
bnnm
d5fc1159c5 Fix half interleave IDSPs [Taiko no Tatsujin 3 (WiiU)] 2018-04-29 19:40:56 +02:00
bnnm
452033f14a Clean DSP metas and fix some loop checks 2018-04-29 19:40:21 +02:00
bxaimc
ce2082a8d4 Add .KNS for KTSS meta 2018-04-29 13:24:01 -04:00
Christopher Snowhill
47d2b53c23
Merge pull request #216 from bxaimc/master
Add SNDS support for The Incredibles (PS2)
2018-04-21 19:05:11 -07:00
Christopher Snowhill
4ea0d1a9d7
Merge pull request #217 from bnnm/opus-sps-etc
Opus, sps, etc
2018-04-21 19:04:13 -07:00
bnnm
e8b2759dcf Add Capcom multistream Opus [RE: Revelations (Switch)] 2018-04-22 02:20:46 +02:00
bnnm
7a212eed9b Allow layers of more than 1 channel 2018-04-22 02:19:37 +02:00
bnnm
f45b08586d Less debug 2018-04-22 02:17:42 +02:00
bxaimc
0f4bd6ab57 Add SNDS support for The Incredibles (PS2) 2018-04-21 16:45:04 -04:00
bnnm
bc4f7e9b5f Less debug 2018-04-21 21:56:49 +02:00
bnnm
686d77debc Clean Switch opus meta
Separate header variations since every other dev is going to make their
own, it was getting kind of messy.
2018-04-21 21:52:30 +02:00
bnnm
ee05880c2d Rename nsw_opus.c to opus.c
The abbreviation was strange, should still be clear it's not ogg_opus
2018-04-21 21:00:11 +02:00
bnnm
ab6cc8c6ce Adjust EALayer3 V2 discard modes 2018-04-21 03:31:24 +02:00
bnnm
5229e7385d Clean dsp meta
Use a common function since most parsers did the same thing with minor
config params.

Also add extra validations to Cabela's DSP since it was hijacking other
DSPs.
2018-04-21 02:14:21 +02:00
bxaimc
26249d4750 add .CVS support for Disney's Aladdin in Nasira's Revenge (PS1). Add support for >2 channels XA2 for RC Revenge Pro (PS2) 2018-04-20 18:41:25 -04:00
bnnm
fcf5f26e9d Fix Naomi .adpcm num_samples and checks 2018-04-20 21:00:17 +02:00
bnnm
165cb400b1 Add .at9 opus [Penny-Punching Princess (Switch)] 2018-04-20 20:37:19 +02:00
bnnm
befcbbd4fb Add PPST .sng [Parappa the Rapper (PSP)] 2018-04-20 18:27:08 +02:00
bnnm
fdaba703d6 Add "-" channel mask separator in TXTP for some shells 2018-04-20 17:07:00 +02:00
bnnm
ab2cecf92d Add encrypted .ogg from Ys VIII (PC) 2018-04-20 17:02:56 +02:00
bnnm
84b1b31608 Add .sps in Frostbite(?) containers [Need For Speed Rivals (PS4)] 2018-04-20 00:22:40 +02:00
bnnm
46f333cc8e Remove get_realname from streamfiles as it's not used anymore
It was implemented for Audacious only to open companion NWA files, but
current version has no need for it. In case there is some obscure thing
that needs it, Audacious's vfs.cc should translate or return realnames
transparently, without having to modify other streamfiles.
2018-04-19 22:54:45 +02:00
bnnm
3d2f7e0de2 Clean NWA meta
To open external files it was using get_realname, which only was
actually implemented in Audacious, but Audacious can use get_name to
open external files just fine anyway (for any path, encoding, etc)
2018-04-19 22:44:05 +02:00
bnnm
4a8e8a87e8 Fix some .SNU sample rate [Dead Space 2 (PC)] 2018-04-19 22:40:47 +02:00
bnnm
7d992af25e Fix some EALayer3 skips [Need For Speed Rivals (PS4)]
Uses a custom streamfile to remove .sps blocks for EALayer3, as V2P
needs it since frames may be split between blocks.
2018-04-19 22:26:46 +02:00
bnnm
2268d9c5bf Rename ea_eaac_eatrax_streamfile.h to ea_eaac_streamfile.h 2018-04-19 22:23:09 +02:00
bnnm
271626921a Fix some .MSA 2018-04-19 22:20:18 +02:00
bnnm
d6ade4123f Add buffer_streamfile (for custom IO) and simplify stdio reads 2018-04-19 22:19:30 +02:00
bnnm
a8bb304998 Minor cleanup 2018-04-18 21:03:24 +02:00
bnnm
97874749da Fix possible segfault 2018-04-18 20:41:11 +02:00
bnnm
ee3fae5a37 Minor doc 2018-04-18 20:11:42 +02:00
bnnm
f5a3a2b5bc Add .ad extension 2018-04-18 20:10:53 +02:00
bnnm
adc7a776f9 Fix some Switch .bfwav interleave/panning; cleanup 2018-04-18 20:10:48 +02:00
bnnm
e8aad5a38a Add FSB key 2018-04-18 20:09:21 +02:00
bnnm
27777a8b75 Add HCA key 2018-04-18 20:08:50 +02:00
bnnm
5435080684 Fix EA SWVR sample rate and PC codec 2018-04-15 02:29:17 +02:00
bnnm
a181a04179 Update docs 2018-04-15 01:47:46 +02:00
bnnm
6e900315ab Load Vorbis setup in fsb/wwise from array first, as it's most common 2018-04-15 01:16:45 +02:00
bnnm
12cba40baf Add .smc+smh [Wangan Midnight (System 246)] 2018-04-15 01:08:27 +02:00
bnnm
8addfdd0aa Reject .txth in txth parsing as CLI can try to play them 2018-04-15 00:50:05 +02:00
bnnm
56d6cbbf6c Add artificial format TXTP (.txtp)
Used to play separate intro+loop files, mask channels, play subsongs in
single files without having to demux, etc.

Also a channel mask parsing during main render_vgmstream.
2018-04-15 00:48:37 +02:00
bnnm
abd4cc4d56 Fix EA SWVR .stream (MGAV) [Freekstyle (PS2/GC), NASCAR Rumble (PS)] 2018-04-14 02:36:28 +02:00
bnnm
42a79c85f3 Add .fsv WVE extension [Future Cop LAPD (PS1)] 2018-04-13 19:49:45 +02:00
bnnm
c27fa563b4 Fix missing samples in last block 2018-04-13 16:47:33 +02:00
bnnm
887ceec4cd Simplify WVE block parsing by ignoring empty blocks 2018-04-13 16:46:24 +02:00
bnnm
0482a120bc Minor cleanup 2018-04-13 16:40:50 +02:00
bnnm
264ee065fa Add missing .ovb and remove .tk1 as was only used for private testing 2018-04-13 00:04:29 +02:00
bnnm
dd64be04dd Simplify block parsing by just having 0 samples on empty blocks 2018-04-12 23:37:05 +02:00
bnnm
6f4388045e Add ps_cfg_bytes_to_samples for clarity 2018-04-12 23:21:53 +02:00
bnnm
6f3522348e Allow blocks with 0 samples (ignored, then next block is called)
Happens in Kakuto Chojin .stx, can be used to simplify some blocks
parsers so they don't have to manually search for next valid block and
can just set 0 samples if empty block is found.

Also move block_update code since it was getting a bit unwieldy.
2018-04-12 22:51:24 +02:00
bnnm
dacac7f9b4 Fix missing .rpgmvo extension 2018-04-12 22:46:59 +02:00
bnnm
34522fafee Add .eno Ogg [Metronomicon (PC)] 2018-04-12 22:46:18 +02:00
bnnm
028f19533a Fix mono .mcadpcm 2018-04-12 22:44:33 +02:00
bnnm
6ea1c3b2f0 Fix some Ubi LyN incorrectly parsed by Ubi Jade 2018-04-12 22:43:54 +02:00
bnnm
6d81db7cc3 Fix ATRAC9 regression 2018-04-10 21:01:30 +02:00
bnnm
27087edea2 Add .rpgmvo Ogg [RPG Maker MV games] 2018-04-07 19:04:06 +02:00
bnnm
bf4898a770 Fix 6ch EAlayer3 in EA SCHl [Medal of Honor 2010 (PC)] 2018-04-07 13:56:20 +02:00
bnnm
b2766bf137 Add .msb+msh sfx [EyeToy Play (PS2), Ace Combat 2 (PS2)] 2018-04-07 13:35:33 +02:00
bnnm
5ad5943c2a Add .MS/VBX/SLB/OVB extensions;cleanup
- .MS: Test Drive Unlimited (PS2)
- .VBX: THE Taxi 2 (PS2)
- .SLB: THE Nekomura no Hitobito (PS2)
- .OVB: namCollection - Tekken (PS2)
2018-04-07 12:35:18 +02:00
bnnm
254f980a50 Improve layered layout bitrate calculation 2018-04-07 11:44:29 +02:00
bnnm
d4556f3310 Ignore LyN RIFF as it's parsed in its own file now; cleanup 2018-04-07 11:37:44 +02:00
bnnm
41e60f29da Add Ubi LyN (.sns/son/wav) [Adventures of Tintin, From Dust (multi)] 2018-04-07 11:31:43 +02:00
bnnm
8fab88be8f Remove ps2_psw.c as it's now parsed by ubi_jade.c 2018-04-06 20:55:11 +02:00
bnnm
0d9397ff61 Rename waa_wac_wad_wam.c to ubi_jade.c for clarity 2018-04-06 20:51:51 +02:00
bnnm
0d32bfbf86 Ignore Ubi's Jade games 2018-04-06 20:49:49 +02:00
bnnm
d39e7ec67d Fix Ubi Jade (.wam) [Beyond Good & Evil (PS3), Rayman Rabbids (Wii/PS2)]
Adds X360/PS3/PC support and fixes looping
2018-04-06 20:48:24 +02:00
bnnm
cd1ddd78de Fix some .opus [Resident Evil Revelations (Switch)] 2018-04-01 21:59:53 +02:00
bnnm
22b787b052 Fix some .mcadpcm [Skyrim (Switch)] 2018-04-01 21:59:00 +02:00
bnnm
6ca967eed9 Fix some .sps num samples [Need for Speed Most Wanted (Vita)] 2018-04-01 21:58:35 +02:00
Christopher Snowhill
35bede85fe
Merge pull request #209 from haspor/master
Android change for streamfile
2018-03-31 17:54:45 -07:00
bnnm
9db9ae563a Add .pdt subsongs [Cubic Lode Runner (GC), Muscle Champion (GC)] 2018-04-01 02:15:10 +02:00
bnnm
effe65c934 Tweak PDT header (cleanup) 2018-03-31 20:42:02 +02:00
bnnm
f2aaccc9fb Add .awc XMA [Red Dead Redemption (XMA)] 2018-03-31 20:11:21 +02:00
bnnm
b555a7f52a Add .sps EATrax [FIFA 2015 (Vita)] 2018-03-31 20:10:57 +02:00
bnnm
b35f88159c Add .mcadpcm [Skyrim (Switch)] 2018-03-31 13:28:30 +02:00
bnnm
b7da78e68e Add .PCM+.SRE [Viewtiful Joe (PS2)] 2018-03-31 13:10:57 +02:00
bnnm
7a08ea263f Add FFmpeg fake header/header_size check to simplify some calls 2018-03-31 13:07:26 +02:00
bnnm
0e64480cd0 Add KTSS .ATSL [Sengoku Musou Sanada Maru (Switch)] 2018-03-31 13:06:00 +02:00
bnnm
eda2a4ac34 Fix buggy XNB [Metagalactic Blitz (PC)] 2018-03-31 13:05:17 +02:00
bnnm
00aaf8fe02 Remove old XMA2 v3 to v4 transformation since FFmpeg now parses both 2018-03-30 22:14:32 +02:00
bnnm
94572fede5 Use meta_MP4 for MP4 FFmpeg too, so no need to ifdef 2018-03-30 21:37:11 +02:00
bnnm
da568d47c3 Remove incorrect comment and move code around 2018-03-30 21:29:32 +02:00
bnnm
d990d8b8cd Rename scd_int_layout.c to layered.c for consistency 2018-03-30 21:29:11 +02:00
bnnm
c843c350d1 Clean scd_int layout and rename to layered layout for later reuse 2018-03-30 21:28:32 +02:00
bnnm
642c833fcd Simplify STREAMFILE handling in scd_int_layout
It's not the easiest thing to follow so here is what's going on with
STREAMFILEs:
- external player opens base-streamfile, with a base FILE
- meta scd parses stuff, then per DSP channel/layer:
  - open temp-streamfile, which does custom IO with base-streamfile
(doesn't open any FILE)
  - pass temp-streamfile to init_vgmstream_ngc_dsp_std
  - init parses ok, and re-opens temp-streamfile (with custom IO) as its
own dsp-vgmstream-streamfile; internally it does fopen/fdopen the
original FILE from base-streamfile
  - scd_int_layout stores the newly created VGMSTREAM (internally has
the dsp-vgmstream-streamfile too)
  - close temp-streamfile, that doesn't close base-streamfile as it's
wrapped to avoid doing so, nor affects dsp-vgmstream-streamfile in any
way.
- meta parsing is done, so external player closes base-streamfile (but
the re-fopen'ed dsp-vgmstream-streamfile FILE remains)
- vgmstream renders pcm buffers, etc
- finally player calls close_vgmstream
  - scd_int_layout calls close_vgmstream for each stored VGMSTREAM
  - the VGMSTREAM internally closes the dsp-vgmstream-streamfile, which
in turn closes its own FILE

So ultimately all FILEs, STREAMFILEs and their clones should be properly
handled and closed.
2018-03-30 19:14:37 +02:00
bnnm
0ff0d864ee Remove SCDINTSTREAMFILE and use custom_io streamfile instead 2018-03-30 18:16:17 +02:00
bnnm
e4c819af2e Add size_callback to open_io_streamfile for more complex stuff 2018-03-30 18:10:23 +02:00
bnnm
99888d6517 Merge branch 'master' of https://github.com/kode54/vgmstream into test 2018-03-30 11:02:28 +02:00
-
d5b095361c revert back the Android change. It seems that the 'dup' is not working perfectly with unistd.h either. 2018-03-30 08:22:03 +03:00
bxaimc
68296163a9 formatting again, this time for ogg_vorbis.c 2018-03-29 21:10:05 -04:00
bxaimc
d5c9165d07 Merge branch 'master' of git://github.com/kode54/vgmstream 2018-03-29 21:04:09 -04:00
bxaimc
0e7f19d77a Add support for XIPH_CUE_LOOP pairs found in Super Mario Run (Android) OGGs. Some additional formatting fixes too. 2018-03-29 21:03:23 -04:00
bnnm
ac3aa26420 Add .sng extension for EA 1SNh as foobar doesn't like .asf 2018-03-30 00:39:21 +02:00
bnnm
011b880884 Add little endian .adpcm DSP [LEGO Worlds (Switch)]
The .adpcm extension may conflict with naomi_adpcm so meta is ordered
before that
2018-03-29 23:28:02 +02:00
bnnm
a029bd9e1d Clean ngc_dsp/mdsp_std 2018-03-29 23:10:13 +02:00
bnnm
868834d52b Accept EA SCHl "SHFR" blocks [Medal of Honor (PC) movies] 2018-03-29 22:52:15 +02:00
bnnm
92b9992552 Rename open_stream_ext/name to open_streamfile_by_ext/filename (cleanup) 2018-03-29 22:34:21 +02:00
bnnm
dce00d6d27 Fix rsd6wma compilation with FFmpeg 2018-03-29 21:05:28 +02:00
bnnm
2b63d451d9 Minor tweaks to get_streamfile_name and co 2018-03-29 21:03:25 +02:00
bnnm
dabbf07014 Fix .dec not looping in plugins (incorrect filename comparison) 2018-03-29 20:54:07 +02:00
bnnm
69fb29fc7a Return size_t in read_string for consistency 2018-03-29 20:42:52 +02:00
bnnm
49e62d2bcc Move read_pos_file to ffmpeg.c since it was only needed there 2018-03-29 20:38:06 +02:00
bnnm
467f7d0b3d Adjust MSF samples and use mpg123 over FFmpeg
Don't adjust loops to frame boundaries since offsets are always aligned
and MSF only does CBR. There was a minor bug getting samples: FFmpeg was
parsing the MSF and would add its header to the bitrate, which was used
for calcs. Now FFmpeg only sees the MP3 data.

Use mpg123 if available too since it's easier to setup in non-Windows
builds (no audible differences otherwise).
2018-03-29 20:25:54 +02:00
bnnm
531e8dc9b8 Rename blocked layout for consistency 2018-03-29 19:00:04 +02:00
bnnm
dfeb1da3ef Add .stx STHD [Kakuto Chojin (Xbox)] 2018-03-29 17:01:46 +02:00
bnnm
6ce4580683 Add .msv extension [Fight Club (PS2)] 2018-03-29 16:09:32 +02:00
bnnm
c052848e26 Add EA .WVE videos [Supercross 2000 (PS), Wing Commander 3/4 (PS)] 2018-03-29 15:39:33 +02:00
bnnm
ae999b6769 Add .vis extension [AirForce Delta Strike (PS2)] 2018-03-29 01:21:50 +02:00
bnnm
16ca520ae0 Add .adp ADX extension [Headhunter (DC)] 2018-03-28 22:58:49 +02:00
bnnm
d7a2f0fe45 Add RIFF AICA [Dreamcast games] 2018-03-28 22:58:37 +02:00
bnnm
ad755b85c6 Fix mono/interleave/PCM16 .spsd [Giga Wing 2, Virtua Tennis 2 (Naomi)] 2018-03-28 22:58:25 +02:00
bnnm
eb52b3fb57 Add stereo AICA to GENH/TXTH (no interleave) [SF3 Double Impact (DC)] 2018-03-28 00:30:59 +02:00
bnnm
93c26cfef0 Rename coding_AICA to coding_AICA_int since it only does mono data 2018-03-27 23:32:01 +02:00
bnnm
1708dcaf63 Remove PCM16-XOR decoder and use decryption streamfile instead
The encryption is built on top of the data, so this way mimics the
actual setup and removes another superfluous decoder
2018-03-27 23:24:24 +02:00
bnnm
0f529ea1a7 Remove BMDX decoder and use decryption streamfile instead
The encryption is built on top of PS ADPCM data, so this way mimics the
actual setup and removes a superfluous decoder
2018-03-27 22:39:05 +02:00
bnnm
15206915d1 Tweak VDS/VDM num_samples 2018-03-27 22:20:20 +02:00
Christopher Snowhill
16423580a2
Merge pull request #207 from bnnm/yamaha-layouts-fixes
Yamaha, layouts, fixes
2018-03-25 15:48:45 -07:00
bnnm
2f4f73e67a Add XWB internal name reading (rare) 2018-03-25 20:01:45 +02:00
bnnm
382ce74821 Minor filename reading cleanup 2018-03-25 20:01:28 +02:00
bnnm
69da9d5f4d Clean iadp and add missing .adp extension 2018-03-25 20:00:57 +02:00
bnnm
a2acd045bf Fix missing nxap 2018-03-25 19:59:58 +02:00
bnnm
848238a1c6 Fix reading .ATX filename in plugins 2018-03-25 19:59:12 +02:00
bnnm
c72ff8dd46 Clean ngc_bo2
Move code to rkv.c as it's the same format, add .rkv (archive)
extension, remove file and rename to init ngc_rkv
2018-03-25 11:08:36 +02:00
Christopher Snowhill
3ff69d191d
Update rsd.c
Fix failure case for compiling without FFmpeg.
2018-03-24 16:22:52 -07:00
bnnm
1d656026e5 Add .L/R extension [Crash Nitro Kart (PS2)] 2018-03-24 19:43:17 +01:00
bnnm
5d9c5c4ff7 Adjust interleave last block description 2018-03-24 19:30:35 +01:00
bnnm
eca9b83208 Simplify last block interleave
Remove layout_interleave_shortblock for clarity as the value is enough
to signal its use. Also fix .snd last block calculation, and clean some
metas since I was testing changes anyway.
2018-03-24 19:27:24 +01:00
bnnm
91e62e1a43 Remove tabs 2018-03-24 16:58:43 +01:00
bnnm
6c10b3136a Fix comment 2018-03-24 15:40:41 +01:00
bnnm
af639fc92e Use libvorbis over FFmpeg for AKB Ogg 2018-03-24 15:40:01 +01:00
bnnm
8534006035 Fix AKB2 subsongs [Mobius Final Fantasy (PC)] 2018-03-24 14:22:37 +01:00
bnnm
eb4168f9b9 Rename aica_decoder.c to yamaha_decoder.c for clarity
AICA ADPCM is not really exclusive to Dreamcast as Yamaha used it in
their sound chips before.
2018-03-24 12:20:22 +01:00
bnnm
f132c11764 Add .aac ADPCM [Star Ocean Ananmesis v1, Heaven x Inferno (Mobile)] 2018-03-24 12:17:04 +01:00
bnnm
6a5ef288ff Add NXAP (bad decoding) [Time Crisis 4, Time Crisis Razing Storm (PS3)] 2018-03-24 12:13:40 +01:00
bnnm
d821ecb117 Improve Dreamcast AICA decoding (not very noticeable)
On decoding start step_size was 0, but Yamaha ADPCM is supposed to start
at 127 so there was some deviation, usually minor as most files start in
silence.
2018-03-24 12:13:04 +01:00
bnnm
fbd8e94e41 Add Yamaha/NXAP ADPCM decoder 2018-03-24 12:08:16 +01:00
bnnm
13a5322e26 Add .smv [Cho Aniki Zero (PSP)] 2018-03-23 22:41:42 +01:00
bnnm
08875e9a95 Fix true multichannel RSD6XADP [Scarface (Xbox)] 2018-03-23 21:21:56 +01:00
bnnm
49331423e2 Add true multichannel XBOX-IMA 2018-03-23 21:21:44 +01:00
bnnm
a53712d495 Add RSD6WMA [Scarface (Xbox)] 2018-03-23 18:54:20 +01:00
bnnm
bd684f7680 Rename wsi_blocked.c to blocked_wsi.c 2018-03-23 18:35:53 +01:00
bnnm
8bb9fa5f4a Clean .WSI 2018-03-23 18:34:37 +01:00
bnnm
7b1fed0720 Move dsp_str to its own file for clarity (not using standard DSP header) 2018-03-23 17:34:40 +01:00
bnnm
6145cd3ddc Fix repeated subsongs in ATSL 2018-03-23 17:20:24 +01:00
bnnm
e2a3590158 Remove layout_ogg and cleanup
Layout was not actually needed, remove to simplify. Rename
vgm_vorbis_info_t to ogg_vorbis_meta_info_t to clarify it's only for
meta, also don't pass filename to init ogg (not useful even as an
optimization since getting the name is a minuscule part in parsing a
meta)
2018-03-23 16:34:48 +01:00
bnnm
ea72cb6f7b Fix some .wem [UFC Undisputed 2009 (PS3)] 2018-03-23 16:00:23 +01:00
bnnm
ca169e75ae Fix .caf regression 2018-03-23 15:59:39 +01:00
bxaimc
ceaa776f83 Add -official- VSV extension to PSH meta. Modified channe_count flag in VSF for test files found in FFXII:TZA (PS4). 2018-03-19 15:19:30 -04:00
bnnm
79194a0178 Fix some CAFF IMA4 [Endless Fables 2 (iOS), Vectros (iOS)] 2018-03-17 19:57:54 +01:00
bnnm
522ea6ab2b Add MUSX .sfx extension [Batman Begins (GC)] 2018-03-16 22:57:46 +01:00
bnnm
1c78daa82a Add .MSD extension [UNO (iOS)] 2018-03-16 18:51:21 +01:00
bnnm
4e0ce29f4a Fix ACM/NWA bitrate 2018-03-16 18:41:30 +01:00
bnnm
71d642574b Unify coding_NWAx in a single coding_NWA to simplify 2018-03-16 18:35:21 +01:00
bnnm
05dc3df6e0 Simplify mus_acm_codec_data into acm_codec_data 2018-03-16 18:02:17 +01:00
bnnm
98aa30a38e Add MUS ACM Ogg [Planescape: Torment Enhanced Edition (PC)] 2018-03-16 17:43:51 +01:00
bnnm
ad1f719cf3 Remove mus_acm_layout.c as it's not neede anymore 2018-03-16 17:23:50 +01:00
bnnm
97a2c76d96 Replace mus_acm layout with segmented layout
They did basically do the same thing, though segmented needs a bit more
memory, but in order to simplify the layout code and support MUS+Ogg
this was needed.
2018-03-16 15:58:29 +01:00
bnnm
58c00577cf Clean MUS ACM meta (move parse code to its own function) 2018-03-16 15:42:54 +01:00
bnnm
ce9a69aad1 Clean ACM init/free/reset 2018-03-16 15:42:01 +01:00
bnnm
8d4974033c Allow ACM to play as regular (single file) layout and remove layout_acm 2018-03-16 13:03:39 +01:00
bnnm
8328814a2f Add RSD6AT3+ [Crash of the Titans (PSP)] 2018-03-11 21:03:48 +01:00
bnnm
9062541aa2 Fix GCA being off by one sample in some cases, cleanup [BlowOut (GC)] 2018-03-11 20:30:32 +01:00
bnnm
f525b46d20 Add Ogg .rof extension [The Rhythm of Fighters (Mobile)] 2018-03-11 19:47:57 +01:00
bnnm
de94edb34b Clean segmented layout setup 2018-03-11 19:43:26 +01:00
bnnm
3eeddcc41e Add WayForward single/segmented .wave [Shantae and the Pirate's Curse] 2018-03-11 19:24:06 +01:00
bnnm
78f4d5eb7d Fix some .ADM glitches [Dragon Quest V (PS2)] 2018-03-11 01:06:31 +01:00
bnnm
5cebfc49db Rename aax_layout.c to segmented.c 2018-03-10 20:28:23 +01:00
bnnm
15f221af7c Rename aax layout to segmented layout, as now can be used for others 2018-03-10 20:25:57 +01:00
bnnm
619fbf17c5 Fix some MUSX v5 [Predator: Concrete Jungle (Xbox/PS2)] 2018-03-10 18:51:57 +01:00
bnnm
1c7a944633 Remove AAX copying ADPCM history between segments
ADX already have history in the header (resulting output is slightly
different but probably more accurate).
2018-03-10 17:39:32 +01:00
bnnm
453801e899 Remove unused aax_streamfile.h 2018-03-10 17:35:25 +01:00
bnnm
66c9a06351 Add AAX HCA [Binary Domain (PS3)] 2018-03-10 17:33:48 +01:00
bnnm
3ad6261208 Add check when calling free/seek/reset codec
It's possible to set a "coding" that triggers calls to the above while
codec_data is still null, when using special layouts like AAX
2018-03-10 16:59:00 +01:00
bnnm
693fbf8e3b Clean AAX layout (rename parts, move code around, etc) 2018-03-10 12:19:30 +01:00
bnnm
f90ab79596 Move AAX UTF table reading to its own file for clarity 2018-03-10 00:27:06 +01:00
bnnm
a7870c5339 Rename coding_ogg_vorbis to coding_OGG_VORBIS for consistency 2018-03-08 23:32:58 +01:00
bnnm
22063cf0d8 Rename caf files for consistency 2018-03-08 23:31:07 +01:00
bnnm
c0906d1b0f Add CAF .caf/empty extension, cleanup [Baten Kaitos (GC), Fragile (Wii)] 2018-03-08 23:26:10 +01:00
bnnm
79080d34f3 Add DTK .wav/lwav extension [Alien Hominid (GC)] 2018-03-08 22:56:06 +01:00
bnnm
67a2f29f75 Minor FADPCM cleanup 2018-03-08 22:55:50 +01:00
bnnm
b8641db34c Fix PCM SAB/MAB [Chrono Trigger (PC)]
Also rename post_meta/subheader to "extradata" as seen in debug strings
from the exes
2018-03-08 22:53:24 +01:00
bnnm
51aa1660f2 Fix compact XWB [NFL Fever 2004 demo from Amped 2 (Xbox)] 2018-03-08 22:51:50 +01:00
bnnm
61bfcb18c8 Add Rebellion .MIC extension [Rogue Trooper (PS2)] 2018-03-04 00:17:58 +01:00
bnnm
710e5e11cd Minor comments 2018-03-04 00:16:49 +01:00
bnnm
d21793bf22 Add UserMacro to make changing dependencies easier 2018-03-03 20:45:32 +01:00
bnnm
b97fc632be Fix minor compiler warnings 2018-03-03 19:07:59 +01:00
bnnm
13fcb28b3c Add KID .WAF [Ever 17 (PC)] 2018-03-03 18:49:11 +01:00
bnnm
789ca26e8a Add KID .WAF [Ever 17 (PC)] 2018-03-03 18:46:12 +01:00
bnnm
50354e404c Clean some DSP metas 2018-03-03 18:44:02 +01:00
bnnm
36ff981ef9 Rename atsl3.c to atsl.c for consistency 2018-03-03 02:05:14 +01:00
bnnm
ce568fb6a3 Add .ATSL for PS4/Vita/PC [Warriors All-Stars (PC)] 2018-03-03 02:03:53 +01:00
bnnm
7fc5c6e582 Add RIFF/OGG .ADX extension [Remember 11 (PC)] 2018-03-03 01:10:39 +01:00
bnnm
e9b2751064 Add XBOX mono/int to GENH/TXTH (as codec_mode 1) [Manhunt (Xbox)] 2018-03-03 01:09:44 +01:00
bnnm
e7b564462f Rename some blocked layouts files for clarity 2018-02-25 16:58:21 +01:00
bnnm
c44b7ef264 Rename some blocked layouts for clarity 2018-02-25 16:52:57 +01:00
bnnm
c7173a6df5 Remove debug 2018-02-25 16:49:17 +01:00
bnnm
3b59acbf8a Add .adm looping (requires exe in the same dir) [Dragon Quest V (PS2)] 2018-02-25 16:28:15 +01:00
bnnm
15ca185052 Add util to get base filename without path 2018-02-25 16:27:48 +01:00
bnnm
494dfb8194 Fix .adm [Dragon Quest V (PS2)] 2018-02-25 15:04:29 +01:00
bnnm
3c1d4ee825 Validate max channels on allocation 2018-02-25 12:17:51 +01:00
bnnm
4331fb7685 Add .e4x [Driver 3 (PC)] 2018-02-25 12:17:35 +01:00
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
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