Commit Graph

1495 Commits

Author SHA1 Message Date
bnnm
c501129cb1 Fix some little endian Fable 3/Heroes XMA with big endian fmt chunk 2017-07-15 11:26:01 +02:00
Christopher Snowhill
8a9c669baa Remove C99-ism for MSVC 2010. 2017-07-13 17:45:56 -07:00
Christopher Snowhill
fa91e33dec Merge pull request #109 from bnnm/ea2-ffta2
EA2, FFTA2
2017-07-08 17:29:25 -07:00
Christopher Snowhill
0c9dad28c0 Merge pull request #105 from shinyquagsire23/le-edgecase
LE BFSTMs should use PCM16LE
2017-07-08 17:28:30 -07:00
bnnm
e96f3c0700 Tweak block parsing to handle better unknown blocks; try to improve EOFs 2017-07-09 00:56:27 +02:00
bnnm
a4d1e869cf Move EA block offsets on EOF just in case 2017-07-08 16:16:40 +02:00
bnnm
58af99fd4b Fix FFTA2 loop 'clicks' in some files by preserving ADPCM history 2017-07-08 11:34:02 +02:00
bnnm
8da3f4a7cb Remove FFTA2 last shortblock as it has normal blocks; cleanup
Doesn't actually fix anything; looping or not with or without
shortblocks it results in the same output
2017-07-08 11:32:54 +02:00
bnnm
781eb97040 Move nds_strm_ffta2 to its own file for clarity 2017-07-08 11:02:22 +02:00
bnnm
7a87f27624 Minor Maxis XA meta cleanup 2017-07-08 10:28:08 +02:00
bnnm
cce72d7aa5 Add EA SCHl Saturn + MT10 mono/int; changed Maxis_ADPCM to Maxis_MT10
Also fixed some issues with ADPCM hist in EA SCHl blocks
2017-07-08 00:27:36 +02:00
bnnm
a493a8f09d Ignore Maxis' XA, as it could be mistaken as headerless XA 2017-07-08 00:26:03 +02:00
shinyquagsire23
b07a5e7ffe Fix compile errors for BFWAV 2017-07-06 18:39:48 -06:00
shinyquagsire23
0e5174504e Add support for little-endian BFWAVs, fix coefficient offset calculation for stereo BFWAVs 2017-07-05 11:47:30 -06:00
shinyquagsire23
beef9b8c6e LE BFSTMs should use PCM16LE 2017-07-04 19:53:35 -06:00
bnnm
68071467c2 Add MPEG to EA SCHl [Harry Potter and the Chamber of Secrets (PS2)] 2017-07-01 23:55:10 +02:00
bnnm
d85c033c9d rename some EA related things (cleanup)
- eaxa_decoder to ea_decoder
- ea_header to ea_schl
- ea_block* to ea_schl_block*
2017-07-01 23:27:35 +02:00
bnnm
bf34339b41 redo EA SCHl support [EA games from roughly 1997~2010]
* tested most variations using EA's tools
* added looping [Need for Speed II PC]
* added DSP support [3DS games]
* fixed PCM/EAXA/MT in some cases [PS2/GC/XBOX/Wii games]
* fixed sample rate/codec defaults, num_samples in some cases
* documented more header patches and other details (ex. "EA ADPCM" is
now EA MT/MicroTalk, as per EA's tools)
* (dev) some internals adapted for EA stuff
2017-07-01 23:02:24 +02:00
bnnm
aa93941e64 fix some .MED with JUNK chunk; minor cleanup 2017-07-01 22:44:00 +02:00
bnnm
6fd373b209 Tweak minor P3D info 2017-06-25 02:21:25 +02:00
bnnm
9b36233038 Add P3D XMA2 and (disabled) MP3 support [Prototype 1/2 (X360/PS3)] 2017-06-25 02:10:13 +02:00
bnnm
86cb660f76 Define MPEG interleave type to improve and simplify some internals 2017-06-25 02:09:12 +02:00
bnnm
b56ab1fa5b Ignore Reflections' XA, as it could be mistaken as headerless XA 2017-06-25 00:45:15 +02:00
bnnm
880b8c5543 Add Wii 04SW [Driver: Parallel Lines (Wii)] 2017-06-25 00:27:58 +02:00
bnnm
f617e5e762 Improve PS2 XA30 [Driver: Parallel Lines (PS2)] 2017-06-24 23:33:49 +02:00
bnnm
64500f025d Add PC XA30 + IMA decoder [Driver: Parallel Lines (PC)] 2017-06-24 23:30:10 +02:00
bnnm
3b4f0aae01 Add .MED RIFF using MS-IMA/PCM [LA Rush, Psi-Ops (PC)] 2017-06-24 23:09:30 +02:00
bnnm
f521803f85 Fix some multichannel DSP RWS [Burnout 2 GC] 2017-06-24 22:54:58 +02:00
bnnm
7bf4e99cba Improve buffer setup with multichannel files (vgmstream_open_stream) 2017-06-24 22:53:17 +02:00
Alex Barney
4b39b7e6c8 Fix Nintendo MDSP layout 2017-06-18 16:07:48 -05:00
Alex Barney
730bc5c0f0 Added a new ADX key, and verified old ones, adding their key strings or key codes 2017-06-17 20:21:04 -05:00
Alex Barney
a1ab700764 Fix search for ADX encryption type-9 key 2017-06-17 20:20:59 -05:00
Alex Barney
27419d1a43 Fix ADX type 9 encryption format string typo 2017-06-17 14:31:39 -05:00
bnnm
3ca2ac1ee8 Fix segfault when reading MTA2 files after EOF (ex. trunkated) 2017-06-11 22:38:05 +02:00
bnnm
519c5d71de Redo RWS with PCM/PS-ADPCM/DSP/IMA-ADPCM + block support [many games] 2017-06-10 02:25:49 +02:00
bnnm
d7e3f6915d Add renamed .RWS at3 [Climax PSP games: Silent Hill Origins, Oblivion] 2017-06-09 23:54:14 +02:00
bnnm
f513d53999 Rename ps2_rws.c to rws.c and do other rws cleanup 2017-06-09 22:31:33 +02:00
bnnm
7e42eeca58 Add u-Law decoder + ULW meta [Burnout 1 GC] 2017-06-09 22:26:09 +02:00
bnnm
818dfd026e Fix some XBOX XAU with more chunks 2017-06-09 21:45:15 +02:00
derselbst
2b5a1a249f minor bug in check_extensions()
cmp_len might not become negative on LP64 machines, since sizeof(int)==32bit, but we were subtracting pointers (64bit) that will become positive forcing them to 32bit int
2017-05-27 11:38:09 +02:00
Christopher Snowhill
8b936cc74c Merge pull request #94 from Thealexbarney/hps
Better support HPS files with a channel count other than 2
2017-05-20 18:54:21 -07:00
Alex Barney
58398619a6 Add support for HPS files with >2 channels
Unlike mono HPS, the format never included support for more than 2 channels, as far as I know.
By adding additional channel headers and data to each block, we can unofficially extend the container to support more than 2 channels.
2017-05-20 20:36:24 -05:00
Alex Barney
cd63388631 Properly loop mono HPS files 2017-05-20 18:45:49 -05:00
bnnm
6a922be613 Fix encoder delay/skip samples in: SCD/SGXD/RIFF/MSF ATRAC3/p, SGXD AC3 2017-05-20 18:00:27 +02:00
bnnm
94b3854a87 Fixed some PS2 .AST [Naval Ops Warship Gunner (PS2)] 2017-05-20 01:26:57 +02:00
bnnm
4263533ba9 Move FFmpeg code from ffmpeg.c to ffmpeg_decoder.c for consistency 2017-05-19 17:21:22 +02:00
bnnm
0bab6ddf50 Fixed Crackdown X360 XWB variation; adjusted XWB XMA looping 2017-05-18 22:14:32 +02:00
bnnm
30afc09255 Rename ps2_xau.c to xau.c 2017-05-18 21:03:14 +02:00
bnnm
a903072a11 Added XPEC's .XAU IMA-ADPCM support [Beat Down (Xbox)] + looping (PS2) 2017-05-18 21:00:42 +02:00
bnnm
9488ba32c7 test.exe: add "-F" option to loop + play stream's end instead of fading 2017-05-18 19:55:00 +02:00
bnnm
2c1dafa1a0 Add missing exts 2017-05-18 19:17:19 +02:00
bnnm
625c18a87e Add MTA2 decoder/meta support [Metal Gear Solid 4 (PS3)] 2017-05-18 19:16:44 +02:00
bnnm
08a01fec1f Fixed .str XMA [Sonic & Sega All Stars Racing with Banjo X360] 2017-05-18 19:11:21 +02:00
bnnm
661ed2da20 Fix GTD #ifdef issue 2017-05-18 19:06:58 +02:00
bnnm
2d5fece2af Added simple MTAF block skip; meta cleanup [Metal Gear Solid 3 HD] 2017-05-18 19:06:22 +02:00
Alex Barney
3e2b4e3735 Add support for multi-channel Nintendo .dsp files 2017-05-13 19:38:28 -05:00
Christopher Snowhill
70ea05cec2 We're sticking with C89 for now. 2017-05-13 16:48:35 -07:00
Christopher Snowhill
4e54a82900 Merge pull request #89 from Thealexbarney/adx
Improve ADX support
2017-05-13 16:42:23 -07:00
Alex Barney
5d43080167 ADX decoding accuracy improvements
Can't factor out a bit shift like you can division because of negative numbers.
Coefficients should be rounded toward 0, not negative infinity
2017-05-13 18:16:32 -05:00
Alex Barney
89cdaa83e9 Add support for encoding type 4 ADX 2017-05-13 17:37:24 -05:00
bnnm
3527dbcdb0 Add RXWS (.XWB+XWH/.XWS) with ADPCM/PCM/ATRAC3 [Sony/SCEI PS2 games] 2017-05-13 23:54:09 +02:00
Alex Barney
ab647cc155 Add support for type 2 ADX files 2017-05-13 16:04:30 -05:00
Alex Barney
ef1499f480 Add support for varying ADX frame sizes 2017-05-13 15:17:27 -05:00
bnnm
21c9f44273 Rename ps2_rxw to ps2_rxws and do some cleanup 2017-05-13 13:01:16 +02:00
bnnm
8759d42928 Add .ace (fake) for tri-Ace games 2017-05-13 11:30:30 +02:00
bnnm
a79b874f82 Add RSD6XMA and tri-Ace's PS3/X360 support (by bxaimc) 2017-05-13 02:22:15 +02:00
bnnm
e2cc352238 Add GTD support [Knights Contract X360] 2017-05-13 01:55:31 +02:00
bnnm
64b4631ded Add some missing #ifdef VGM_USE_VORBIS 2017-05-12 19:25:20 +02:00
bnnm
1cd259a010 Rename ps2_mss.c to mss.c 2017-05-12 19:16:46 +02:00
bnnm
b8f2efadc4 Add partial support for Xbox MSS [Shellshock Nam 67], update names
Needs a new "stereo interleave" layout so it only plays as a 2ch stream
for now.
2017-05-12 19:15:18 +02:00
bnnm
8c39ad62cb Rename unix to audacious (folder and makefiles) 2017-05-01 17:08:52 +02:00
bnnm
1e793e577e Move HEVAG decoder to its own file 2017-05-01 16:58:33 +02:00
bnnm
56f68dd089 Rename ngc_waa_wac_wad_wam.c to waa_wac_wad_wam.c 2017-05-01 16:37:30 +02:00
bnnm
1885f6e889 Autoupdate Audacious makefiles with .c list and git version on build 2017-05-01 13:33:45 +02:00
bnnm
16cc0c4131 Update Audacious scripts 2017-05-01 11:00:56 +02:00
bnnm
825ebbdec9 Update Audacious plugin
- make extension list use formats.c and remove exts.cc
- Audacious 3.8 preparations (untested)
- cleanup
2017-05-01 10:56:40 +02:00
bnnm
6cf0195d25 Move reset/seek/free code to decoders (vgmstream.c cleanup) 2017-04-29 22:37:15 +02:00
bnnm
cac3af887a Allow mono MSADPCM; validate interleave for endless loops in some codecs 2017-04-29 20:28:14 +02:00
bnnm
af2b5d4e76 Fix AKB MSADPCM loop samples 2017-04-29 16:54:13 +02:00
bnnm
779bf68ab1 Fix some compiler errors with -Werror=format-security 2017-04-29 16:23:50 +02:00
bnnm
fd72f6120a Adjust EOF reads; minor cleanup
When reading over filesize (buggy metas that request more samples than
possible) it returned inconsistent results under some
conditions/interleave sizes (the effect was minimal though)
2017-04-29 16:03:11 +02:00
bnnm
d5aee307f0 Rename coding_INT_X to coding_X_int for consistency with other codecs 2017-04-29 02:53:36 +02:00
bnnm
086a47cd76 Add compiler flag VGM_DISABLE_VORBIS (as Vorbis is enabled by default) 2017-04-29 02:20:24 +02:00
bnnm
75d079f389 Add block size (interleave) description for MSAPDCM/MS-IMA/etc 2017-04-29 02:19:27 +02:00
bnnm
3d9e48a03f Remove unused 2dx.c, 2dx9 is used instead 2017-04-29 02:04:10 +02:00
bnnm
d364cf5a8d Add AKB MSADPCM [various SFX]; improve AKB header parsing 2017-04-28 20:10:18 +02:00
bnnm
6389493992 Build object list automatically using a make wildcard 2017-04-28 18:33:33 +02:00
bnnm
4a83de7dae Added MC3 decoder/meta [MX Rider, Spy Hunter, T3] (thanks to daemon1) 2017-04-28 17:26:25 +02:00
bnnm
c630f14ce3 Fix some "short" MPDS 2017-04-28 16:16:10 +02:00
bnnm
fa829d49f7 Relax XWB size checks for padded files [BlazBlue Centralfiction PC] 2017-04-28 16:10:16 +02:00
Christopher Snowhill
e8c1c899e3 Merge pull request #85 from bnnm/ogl-sxd-xwbv1-misc
OGL, SXD, XWB v1, misc
2017-04-22 12:52:43 -07:00
bnnm
f153479383 Add OGL Vorbis decoder/meta [Jett Rocket (Wii), FAST Racing NEO (WiiU)] 2017-04-22 19:25:54 +02:00
bnnm
f68a0484c6 Remove test code for truncated Wwise Vorbis 2017-04-22 17:22:48 +02:00
bnnm
460beeb141 Remove unneeded TODO 2017-04-22 16:23:40 +02:00
bnnm
bd3e054b82 Add basic SXD support [Gravity Rush, Freedom Fighter SFX (PSV)] 2017-04-22 15:00:22 +02:00
bnnm
bb00cfa22c Make try_dual_file_stereo static/local 2017-04-22 13:31:12 +02:00
bnnm
c8f82e6f06 Simplify XMA parsing and don't make it fully FFmpeg-dependant 2017-04-22 13:12:01 +02:00
bnnm
0bade4a931 Fix XMA1 parsing bugs 2017-04-22 13:11:11 +02:00
bnnm
7cc3660fc8 Separate X360 NUB/PASX from xma.c for cleanup 2017-04-22 12:09:43 +02:00
bnnm
9f184bdfb9 Fix Wwise XWMA v2 num samples calcs 2017-04-22 11:31:04 +02:00
bnnm
a5e190eb89 Add wma_get_samples util 2017-04-22 11:30:24 +02:00
bnnm
9a2464fbd7 Fix RIFF/Wwise detection rejecting some valid lwav [Cave PC games] 2017-04-22 10:18:47 +02:00
bnnm
0dd9353297 Relax Cstr loop checks [Mr.Driller Drill Land GC] 2017-04-22 09:55:33 +02:00
bnnm
5706d7bcc2 Added XWB v1 [Silent Hill 4, Project Gotham Racing 2]; bytes-to-samples 2017-04-22 09:53:28 +02:00
nine
3d5a83dddb Added akb2 msadpcm support 2017-04-21 04:21:51 +09:00
bnnm
400b23813d Rename adx_header.c meta to adx.c for consistency 2017-04-16 01:02:29 +02:00
bnnm
cda7857094 Fix ADX multi-ch looping [Okami HD]; read initial history; cleanup 2017-04-16 00:58:40 +02:00
bnnm
4d4c5e140b Minor renames (xma_sample_data, ffmpeg_make_riff_xma_from_fmt) 2017-04-15 23:58:19 +02:00
bnnm
8479f96367 Import math.h for Vorbis 2017-04-15 23:22:50 +02:00
bnnm
5ec65f9587 Rename ffmpeg_decoder_utils.c to coding_utils.c and don't need FFmpeg
I feel they are general-purpose enough that shouldn't depend on FFmpeg
(ex. xma_samples should work whether FFmpeg, libav, or
super_multi_decoder is enabled)
2017-04-15 23:19:06 +02:00
bnnm
e3d8d2ec47 Add early (~2009) Wwise Ogg/Vorbis variation [LotR: Conquest PC] 2017-04-15 23:07:15 +02:00
bnnm
70f5dc4684 Fix Wwise Vorbis with header triad and remove disable flag 2017-04-15 23:03:26 +02:00
bnnm
ddf974a31a Remove FSB Vorbis disable flag 2017-04-15 22:59:36 +02:00
bnnm
54d1995dc8 Fix segfault when resetting non-looping Vorbis/MPEG files
Also, apparently reset shouldn't reset the streamfiles
2017-04-14 01:22:53 +02:00
bnnm
e5f2ab0236 Improve handling of truncated Wwise files (VORBIS/IMA) 2017-04-14 01:05:55 +02:00
bnnm
f26214944a Fix some Wwise Vorbis variations (newer style + standard packets) 2017-04-13 20:53:49 +02:00
bnnm
34999ddec9 Fixed bug when seeking in Wwise IMAs 2017-04-13 16:55:40 +02:00
bnnm
61c66182a1 Don't parse RIFX xma as they are now handled in wwise.c
Microsoft XMAs always use RIFF (even though the X360 is BE) while Wwise
XMAs always use RIFX
2017-04-13 15:06:56 +02:00
bnnm
ed70506f33 Added Wwise Vorbis (.wem, .logg) [many games] 2017-04-13 15:05:06 +02:00
bnnm
f067d4ddb9 Added Wwise Vorbis decoder and packed codebooks 2017-04-13 15:04:46 +02:00
bnnm
b54e49370f Reject Wwise RIFFs with JUNK chunks, now parsed in wwise.c 2017-04-11 20:03:26 +02:00
bnnm
01ee57d62e Added Wwise IMA support; xma extension 2017-04-11 20:01:17 +02:00
bnnm
b6d89a0f47 Relax check_sample_rate util to allow 300hz (Wwise lowest) 2017-04-11 20:00:35 +02:00
bnnm
a468898855 Added Wwise IMA decoder; ms_ima_bytes_to_samples
There are some minor issues with seeking in odd samples to be fixed
2017-04-11 19:59:29 +02:00
bnnm
87bbd007c8 Add Wwise XMA 2017-04-08 13:40:23 +02:00
bnnm
680ff51e64 Add extra XMA parsing utils 2017-04-08 13:32:11 +02:00
bnnm
fb26adef77 Add Wii and full interleave DSP RAKI variations 2017-04-07 22:43:09 +02:00
bnnm
eb16da6513 Fix some Moon Diver PS3 looping/sample issues 2017-04-07 21:18:38 +02:00
bnnm
b7ffd11fca Add/use atrac3_bytes_to_samples 2017-04-07 21:18:07 +02:00
bnnm
3619b14f8e Add Wwise XWMA [Halo 4 X360]; update xma_get_samples to read WMAPRO
Also ffmpeg_make_riff_xwma doesn't actually need num_samples and use
x_bytes_to_samples in Wwise
2017-04-07 20:21:55 +02:00
bnnm
2086426175 Fix mono/full-interleave CKD [Rayman Origins Wii SFX]; cleanup 2017-04-07 19:10:16 +02:00
bnnm
3dafb0eb73 Remove unused stuff 2017-04-07 18:17:24 +02:00
bnnm
5f3adbbf9f Fix Ubisoft RAKI MSADPCM 2017-04-07 18:12:23 +02:00
bnnm
a33a77575a Add Ubisoft RAKI [Rayman Legends, Just Dance 2017 (multi)] 2017-04-07 18:01:04 +02:00
bnnm
d6f6798569 Add pcm/dsp/ps_bytes_to_samples helpers 2017-04-07 16:23:43 +02:00
bnnm
4d69aed0da Fix some Wwise PSVita HEVAGs 2017-04-02 15:22:03 +02:00
bnnm
98bc4851af Remove Wwise DSP parsing as it's now handled in wwise.c 2017-04-02 12:30:21 +02:00
bnnm
4f73cfc18d Add partial Wwise support (PCM/DSP/AAC/HEVAG) 2017-04-02 12:27:21 +02:00
bnnm
2ec41eb054 Add option to set if zero-sized chunks stop find_chunk (for XVAG) 2017-04-02 12:23:42 +02:00
bnnm
84cac5e934 Fix some MCA v4 and relax looping checks [MH3U (3DS)] 2017-03-31 22:38:45 +02:00
bnnm
9c06c103e2 Add FSB5 HEVAG [PSVita sfx] 2017-03-31 20:57:26 +02:00
bnnm
fc71e88019 Add pre-compiled FSB Vorbis setup/codebooks 2017-03-26 15:54:25 +02:00
bnnm
bed84fca2d Add alt loading mechanisms for FSB Vorbis setup/codebooks 2017-03-26 15:53:56 +02:00
bnnm
efdb885a79 Fix crash bug introduced when adding looping 2017-03-26 14:07:50 +02:00
Christopher Snowhill
886a25ca95 Try activating FSB Vorbis. 2017-03-25 18:47:17 -07:00
bnnm
ab05279629 Fix FSB vorbis looping 2017-03-25 19:05:18 +01:00
bnnm
003e48e88c Add FSB4 celt comment 2017-03-25 19:05:08 +01:00
bnnm
a05a11a618 Add FSB5 vorbis decoder 2017-03-25 14:58:34 +01:00
bnnm
01391f4d6d Add FSB Vorbis decoder 2017-03-25 14:57:44 +01:00
bnnm
5260314bc7 Minor check 2017-03-24 16:39:57 +01:00