Commit Graph

1208 Commits

Author SHA1 Message Date
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
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
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
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
d5aee307f0 Rename coding_INT_X to coding_X_int for consistency with other codecs 2017-04-29 02:53:36 +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
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
bd3e054b82 Add basic SXD support [Gravity Rush, Freedom Fighter SFX (PSV)] 2017-04-22 15:00:22 +02:00
bnnm
c8f82e6f06 Simplify XMA parsing and don't make it fully FFmpeg-dependant 2017-04-22 13:12:01 +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
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
e3d8d2ec47 Add early (~2009) Wwise Ogg/Vorbis variation [LotR: Conquest PC] 2017-04-15 23:07:15 +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
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
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
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
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
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
5260314bc7 Minor check 2017-03-24 16:39:57 +01:00
bnnm
aeb2c597b6 Improved FSB5 num_samples parsing; comments 2017-03-24 16:39:19 +01:00
bnnm
4bc254d67c Allow FSBs with encryption flag set [Double Fine games] 2017-03-24 16:37:56 +01:00
bnnm
cbd4e4e726 Fixed some MSF looping [Castlevania HoD (PS3)] 2017-03-24 16:37:14 +01:00
bnnm
1a069dd5fa Fix compiling errors without FFmpeg enabled 2017-03-19 19:38:15 +01:00
bnnm
3a98c9e7d5 Add Capcom .AST [Dead Rising X360] 2017-03-19 00:44:58 +01:00
bnnm
bcf93deecd Extend ffmpeg's make_riff_xma_from_fmt/fmt_chunk_swap_endian for XMA1 2017-03-19 00:43:31 +01:00
bnnm
e021cff626 Add some XMA meta descriptions 2017-03-18 19:26:39 +01:00
bnnm
891baff263 More minor file renames (cleanup) 2017-03-18 18:40:46 +01:00
bnnm
2d8ae43fa7 Rename nub to nub_vag and some cleanup 2017-03-18 18:30:22 +01:00
bnnm
fe54a36b93 Rename ps3_sgh_sgb to sgxd (cleanup) 2017-03-18 17:55:35 +01:00
bnnm
e5b384ea40 Rename ps3_vawx to vawx (cleanup) 2017-03-18 17:53:19 +01:00
bnnm
a8fea8f35c Fix Malicious PS3 looping 2017-03-18 17:41:45 +01:00
bnnm
a4327c3529 Improve total_streams check 2017-03-18 17:17:24 +01:00
bnnm
d6ce0f0ae3 Fix SGXD typo (SGDX to SGXD) 2017-03-18 15:07:58 +01:00
bnnm
14d4cd8651 Add XWB size check; Techland's ATRAC3 [Nail'd, Sniper Ghost Warrior PS3] 2017-03-18 00:22:20 +01:00
bnnm
1a2083ad6f Added Ukiyo no Roushi vag variation 2017-03-18 00:19:35 +01:00
bnnm
d13d03e573 Add little endian BFSTM [Blaster Master Zero (3DS)] 2017-03-13 21:19:38 +01:00
bnnm
de523dc6a3 Do some cleanup while we are testing BFSTMs 2017-03-13 21:14:14 +01:00
bnnm
0c55e49a63 More FSB5 flags comments 2017-03-13 20:43:47 +01:00
bnnm
0cf5d4fb00 Add FSB5 XMA; use interleaved MPEGs; fix mono MPEG total samples 2017-03-13 20:08:35 +01:00
bnnm
5763a1a229 Use interleaved MPEG FSB decoder [Timeshift, DJ Hero] 2017-03-13 20:05:28 +01:00
bnnm
663cb43b3f Make init_vgmstream_hca_offset local (wasn't used anywhere else) 2017-03-10 17:32:42 +01:00
bnnm
79a5942cb9 Add HCA extension check to avoid some malloc/frees 2017-03-10 17:26:27 +01:00
bnnm
8fc73c6d02 Minor SCD cleanup 2017-03-09 20:56:26 +01:00
bnnm
a5556e587c Added "short" MPDS (coefs missing) [T3, MI: Operation Surma (GC)] 2017-03-09 20:37:48 +01:00
bnnm
ce591bbe12 Added new GENH codecs: ATRAC3/plus, XMA1/2, FFMPEG
Also some extra fields: total samples, skip samples, data size,
atrac3/xma modes
2017-03-09 19:33:31 +01:00
bnnm
098946057e Do some GENH cleanup before further additions
No changes in logic (tested for all types):
- move codec types to enum for later reference
- move NGC_DTK validation and AICA/DSP adpcm init to setup block
- use vgmstream_open_stream instead of manual stream opening.
  There were 2 cases, interleave (different offset per channel, multiple
streamfiles) and none (same offsets per channel, one streamfile), now
handled by it.
2017-03-09 16:53:34 +01:00
bnnm
0e658031cc Add basic multistream FSB5 support; code cleanup 2017-03-05 17:43:41 +01:00
bnnm
7f90359e40 Fix some XWB XACT2 looping [Blue Dragon, Prey] 2017-03-05 17:34:37 +01:00
bnnm
9d97a346d3 Save number of streams info 2017-03-04 02:16:35 +01:00
bnnm
39abb97b61 Save number of streams info 2017-03-04 02:09:00 +01:00
bnnm
93bcf85e9c Minor code cleanup 2017-03-04 02:07:48 +01:00
bnnm
3d1ae80f56 Fixed SFX SGDXs; show multi stream number 2017-03-04 02:06:11 +01:00
bnnm
85a3ec749f Show stream numbers in the description (few multi-stream formats only) 2017-03-04 02:05:07 +01:00
bnnm
f92babb383 Fix looping for XACT1/2 PCM and XMA 2017-02-25 19:53:21 +01:00
bnnm
d2a31378c2 move xma_get_samples from xma.c to FFmpeg utils (needed by XWB)
xma.c now uses ffmpeg's fmt_chunk_swap_endian, too
2017-02-25 19:52:07 +01:00
bnnm
8b72e32a97 Adjust XMA sample reader (cleanup, looping, prep for changes) 2017-02-25 18:35:56 +01:00
bnnm
fbb9af5410 Tweak FFmpeg XMA1 fake RIFF 2017-02-25 17:29:25 +01:00
bnnm
0296be392f Redone XWB with full support [many XBOX360 games]
Includes PCM/XBOX-ADPCM/MS-ADPCM/XMA1/XMA2/WMAv1/WMAv2/WMApro.
Known issues (examples needed):
- PCM8bit, WMAv1 (XBOX) and WMApro (late XBOX360) not tested
- compact mode not tested
- earlier (XACT2) MS-ADPCM looping not tested
- XACT2 v35/36/37 may not play correctly (~few mid 2006 games)
2017-02-25 13:57:18 +01:00
bnnm
9ff0e2b8a7 Fix again rare FFmpeg bug when reading "fake" filesizes 2017-02-25 13:43:05 +01:00
Christopher Snowhill
223f732e17 Merge pull request #70 from bnnm/interleaved-mpeg
Interleaved MPEG
2017-02-19 21:41:42 -08:00
bnnm
7f98f5b4f6 Remove MPEG sample rate check and channel/sample rate pointer updates
Rarely used, frame sample rate/channels are now exposed, and FFmpeg will
end up playing any MP3 anyway.
Encoders may modify sample rate to adjust looping to frame boundaries,
too.
2017-02-19 21:16:09 +01:00
bnnm
f993fe37de Add some preliminar code for multichannel FSBs 2017-02-19 20:28:13 +01:00
bnnm
c38aa72761 Enable multichannel MPEG (fixed frame size) in XVAGs 2017-02-19 20:21:57 +01:00
bnnm
d3a1fba917 Simplify XVAG/code cleanup preparations 2017-02-18 15:43:29 +01:00
Link
4963e97216 Fairy Fencer F: Advent Dark Force Looping OGG support added. 2017-02-18 08:04:16 +01:00
bnnm
7418b61793 Hide buffer and mpeg_bytes_to_samples MPEG internals; cleanup
Also removes VBR check from metas; it's only needed because
mpeg_bytes_to_samples doesn't work with VBR, but now it'll return 0,
which would be validated later.
2017-02-18 00:17:38 +01:00
bnnm
2e41586e68 Move AHX MPEG init code to mpeg_decoder and other cleanup 2017-02-17 18:35:58 +01:00
bnnm
6b99cf8f72 Use free_mpeg to close MPEG internals 2017-02-17 18:18:06 +01:00
bnnm
a7982bc743 Remove MPEG internals 2017-02-17 16:48:29 +01:00
bnnm
ef5b17f508 Remove old FSB5 mpeg code 2017-02-17 16:44:07 +01:00
bnnm
5b04bbc32a Add a couple of extra memory validations on BIK init 2017-02-17 16:39:38 +01:00
bnnm
d26c813cbd Fix some rare AKB2 [Mobius FF SFX] 2017-02-12 15:43:57 +01:00
bnnm
b661996313 Relax loop validation [ESPN 2002] 2017-02-12 15:00:10 +01:00
bnnm
b3ca092b6a Add AKB support for OGG/alt AAC [SQEX iOS: Dragon Quest 2-6, FF6, TWEWY] 2017-02-12 14:42:02 +01:00
bnnm
9317ce9cc2 Add ffmpeg_set_skip_samples to manually fix encoder delay in some cases 2017-02-12 13:17:01 +01:00
bnnm
8d973f4eb9 Allow negative start time in init_seek (for Ogg) 2017-02-12 12:18:44 +01:00
bnnm
5040b4746e Fix minor bugs; cleanup
- loop flag parsed from the spec [TTT HD]
- add joint stereo ATRAC3 [Silent Hill HD]
- fix MSFv1 ATRAC3 sample rate [Digi World SP]
- use "fake RIFF" ATRAC3 for flexibility (sample rate fix)
2017-02-04 23:26:13 +01:00
bnnm
3d9ce4c15e Fixed FSB5 sample rate and channels, multichannel IMA ADPCM; cleanup 2017-02-04 23:20:11 +01:00
bnnm
b44cd87a7b Fix multichannel IMA FSB 2017-02-04 19:37:48 +01:00
bnnm
13bec0d5be Add check in free_ffmpeg to avoid segfault if data is NULL
free() accepts NULL so free_ffmpeg should too, I guess
2017-02-04 17:54:43 +01:00
bnnm
2aa025f245 Added BIK/BIKa 1/2 [various game movies] 2017-02-04 13:00:13 +01:00
bnnm
bc49757f20 Added/finished looping MP4 (.lmp4) [FFDimensions, Tales of Hearts R iOS] 2017-02-04 11:10:02 +01:00
bnnm
d8df47e080 Simplify SGXD code 2017-01-28 00:41:51 +01:00
bnnm
a468e9b1b1 Fix stream and interleave sizes in some cases 2017-01-27 23:39:52 +01:00
bnnm
c3490f99d9 Fix a rare FFmpeg bug when reading "fake" filesizes 2017-01-27 23:16:00 +01:00
bnnm
685c7bafad Fix MSA sample count [Psyvariar (PS2)] 2017-01-27 19:32:40 +01:00
bnnm
7e106d6a33 Add basic multistream FSB support 2017-01-27 18:01:40 +01:00
bnnm
45bd8a37cb Allow looping in IDSPs with loop_end over num_samples 2017-01-27 16:19:08 +01:00
bnnm
802e414bdc Fix mono Xbox decoding, mono DSP start_offset; code cleanup 2017-01-26 23:31:02 +01:00
bnnm
35a3d44c89 Move Xenoblade 3D DSP .adx from CRI .adx to its own meta (cleanup)
The CRI .adx code is now like before it was added (44075c4)
2017-01-25 22:28:15 +01:00
bnnm
195958b20a Move Xenoblade 3D DSP .adx from CRI .adx to its own meta (cleanup) 2017-01-25 22:23:45 +01:00
bnnm
9ae63e470b Add .str extension for Ben 10: Galactic Racing 2017-01-25 20:36:57 +01:00
bnnm
a809a7c628 Add Omikron: The Nomad Soul IMA ADPCM coding and meta 2017-01-25 20:25:39 +01:00
bnnm
28dc316f95 Add NPS extension (Beautiful Katamari) 2017-01-22 11:40:01 +01:00
bnnm
b726349ece Fix multistream count offset [Dragon Quest X SFX] 2017-01-19 00:33:12 +01:00
bnnm
78349c3c8f Move "skip chunks" to OGG, only FFXIV needs it and breaks some DQ10 DSPs 2017-01-19 00:29:55 +01:00
bnnm
11968a5593 Add support for WiiBGM demuxed from G1L [Romance of Three Kingdoms 12] 2017-01-18 21:28:14 +01:00
bnnm
ef44b5b5cc SCD DSP: validate size/offset and don't crash when failing to open 2017-01-18 21:19:43 +01:00
bnnm
85e63743b7 Added SCD DSP Wii U [Dragon Quest X (Wii U)] 2017-01-15 20:42:26 +01:00
Christopher Snowhill
efdbf8c331 Merge pull request #61 from bnnm/formats-stuff
Formats and stuff
2017-01-14 14:16:16 -08:00
bnnm
72f252327f Added SCD ATRAC3plus [Lord of Arcana (PSP)] 2017-01-14 23:00:19 +01:00
bnnm
07c179e51c Remove unused init_ffmpeg_faux_riff
Superseded by init_ffmpeg_header_offset and various ffmpeg_make_riff_x
2017-01-14 22:29:47 +01:00
bnnm
d3ba419aa9 Fixed SCD XMA [Final Fantasy XIII (X360)] 2017-01-14 22:27:52 +01:00
bnnm
376b4acbb2 Minor func rename (ffmpeg_make_riff_xma2_from_fmt) 2017-01-14 22:25:15 +01:00
bnnm
7f02c9951d Fixed 6ch "multi" IDSP [Tekken Tag Tournament 2 (Wii U)] 2017-01-14 21:21:39 +01:00
bnnm
a1f8407ab1 Fixed GSP+GSB DSP total samples [Super Swing Golf GC] 2017-01-14 03:05:07 +01:00
bnnm
b96e7d7bbf Added ATRAC3/XMA in GSP/GSB [Quantum Theory PS3/X360] 2017-01-14 01:39:21 +01:00
bnnm
c68608149c Moved check_extensions/open_stream to streamfile.c/vgmstream.c 2017-01-14 00:59:54 +01:00
bnnm
14d2363670 Moved dsp_read_coefs_be to ngc_dsp_decoder.c 2017-01-13 23:56:48 +01:00
bnnm
f5750ba2cc Moved make_riff_x to ffmpeg_decoder.c (only actually used by FFmpeg)
Also added make_riff_xma2_from_fmt_be
2017-01-13 23:47:52 +01:00
Christopher Snowhill
72f3e3555b Added sanity check to MCA decoder, fixes some odd rips I've just encountered. 2017-01-09 09:29:08 -08:00
bnnm
2467f9afdc Added CXS [Eternal Sonata (Xbox 360)] 2017-01-08 14:19:32 +01:00
bnnm
01981a6686 Added PS2 VDS/VDM [Graffiti Kingdom] 2017-01-08 12:59:04 +01:00
bnnm
4e6ce8747d Added .swag [Frantix PSP] 2017-01-08 12:03:31 +01:00
bnnm
86ba7a6a23 Remove some old DEBUG code 2017-01-08 02:58:52 +01:00
bnnm
c7c1564d9f Minor cleanups (no functionality changes)
- added comments, code alignment for clarity
- renamed some decoders for consistency (ex. eaxa > ea_xa, invert_psx >
psx_bmdx, vgm_adpcm_cfg > psx_cfg)
- removed layout_dkt_interleave (same as nolayout)
- removed skip_last_channel (not used anymore)
- removed meta_DSP_HALP (not used anymore)
2017-01-08 01:09:20 +01:00
bnnm
3e4299b373 Added ATRAC3/XMA in VAWX (.xwv) [Moon Diver, No More Heroes X360] 2017-01-07 17:04:21 +01:00
bnnm
2557074ceb Added .nps extension [Venus & Braves PS2] 2017-01-07 14:33:10 +01:00
bnnm
8b8a9ecd4e Basic support for multi-stream SCD (FF XIV sfx) 2017-01-03 21:13:36 +01:00
bnnm
8913ccdd47 Add SCD OGG v3 decryption (FF XIV Heavensward)
Original code by ShadowRoze and algorithm by Ioncannon.
2017-01-03 19:03:08 +01:00
bnnm
aaf137817c IMA tweaks 2017-01-02 17:03:49 +01:00
bnnm
a77d4d21ce Manually setting layout_none was not needed in mono PCM files 2017-01-02 15:42:26 +01:00
bnnm
9d33b42584 Improved SPW (PCM, sample rate) 2017-01-02 15:24:10 +01:00
bnnm
ee5a40224d Added PS ADPCM of configurable frame size (FF XI, Blur, Afrika)
This fuses the FF XI/BSF/Short VAG decoder variants into a single one
(FF XI alone has 4 possible frame sizes); also fixed FF XI sample rate
and some cleanup.
2016-12-29 23:34:21 +01:00
bnnm
6c82a508ef Redone FSB1-4: improved XMA/MPEG, bugs, looping
Now parses FMOD's flags correctly and should work for all versions.
There are still some problems with IMA ADPCM which also happened before.
2016-12-29 14:06:57 +01:00
bnnm
fa31aa2cd7 Fixed wrong meta 2016-12-28 16:14:44 +01:00
bnnm
d4f45eaaee Moved debug FSB5 MPEG from fsb.c to fsb5.c 2016-12-28 11:39:56 +01:00
bnnm
ad3b081681 Fix possible segfault 2016-12-27 23:18:41 +01:00
bnnm
e06ddd0076 Fixed minor compiler warnings (unused/uninitialized vars) 2016-12-27 16:33:10 +01:00
bnnm
8daafeea90 Adjusted loop detection for some dual stereo files (Ecco the Dolphin)
It was detecting one channel as looping and other as non-looping.
2016-12-26 16:09:16 +01:00
bnnm
46d7fcfe80 Added Killzone VAGp (.vag); code cleanup 2016-12-26 13:30:43 +01:00
bnnm
973c4bff1d Added namco XMA (.xma), Soul Calibur II HD XMA (.past) variations 2016-12-26 13:27:47 +01:00
bnnm
ea7b8d2570 Added short VAG variation (SGXD type 5 found in PS3 Afrika) 2016-12-21 23:00:34 +01:00
bnnm
0b3050cf0a Added PSVita HEVAG (original algorithm by daemon1) 2016-12-21 20:44:16 +01:00
bnnm
4c25807b3d Prepare loop finder for HEVAG and minor touches 2016-12-21 00:48:47 +01:00
bnnm
75485c388e Moved VAG loop finder to function; comments, code preps 2016-12-20 23:29:36 +01:00
Christopher Snowhill
6a4577f561 Fixed MSS sample count handling, hopefully. 2016-12-18 19:54:41 -08:00
Christopher Snowhill
ad85fc8bc3 Make XMA support dependent on FFmpeg inclusion, for now. 2016-12-18 11:41:26 -08:00
bnnm
8140800587 Added proper/looped .XMA 2016-12-18 18:12:27 +01:00
bnnm
c1c1cd1ba6 init_ffmpeg accepts any generic header; init_seek edge cases (for XMA) 2016-12-18 13:10:08 +01:00
bnnm
27868be723 Fixed v5 header coef positions 2016-12-16 20:34:44 +01:00
bnnm
2a7b645d23 Fixed PS2 MSS sample count and description 2016-12-16 20:29:02 +01:00
bnnm
76dc236b41 Added .pos support for .vgmstream (FFmpeg) files not directly supported
The format is LE 4+4 [loop_start loop_end], or LE 4+4+4 [loop_start
loop_end num_samples] when FFmpeg can't determine correctly num_samples
2016-12-11 13:05:54 +01:00
bnnm
e6334e72af MAIATRAC3PLUS: use fact_samples if possible (manual calcs can be off) 2016-12-10 16:07:54 +01:00
bnnm
cdfd47eb7b FFmpeg: expose block/frame size, rename totalFrames for clarity 2016-12-10 15:53:29 +01:00
bnnm
22d7708d68 Added FFmpeg MP4/AAC 2016-12-06 17:12:56 +01:00
bnnm
c5066fdd09 Check for segfault 2016-12-06 11:53:54 +01:00
bnnm
80c72166e5 AT3: read skip samples to fix edge loops 2016-12-06 00:28:16 +01:00
bnnm
6568acc305 Favor FFMPEG over MPEG due to inaccurate looping and worse MPEG support 2016-12-04 23:10:18 +01:00
bnnm
2ac3db4d03 SGDX fixes: AT3/AC3 codecs (via FFmpeg), ADPCM interleave, unify code 2016-12-04 23:10:18 +01:00
bnnm
bf7d3da39a Load HCA encryption keys from external file (songname.extkey or .extkey) 2016-12-04 23:10:17 +01:00
bnnm
0faa3286aa Don't manually check framesRead and rely on FFmpeg's EOFs
FFmpeg's duration isn't always reliable (ie. bad headers) and the
decoder detects EOFs already, extra decoding attempts should be ignored.
This way vgmstream can use other values without modifying
ffmpeg_codec_data's state.
2016-12-03 11:42:38 +01:00