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
ad1f719cf3
Remove mus_acm_layout.c as it's not neede anymore
2018-03-16 17:23:50 +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
3eeddcc41e
Add WayForward single/segmented .wave [Shantae and the Pirate's Curse]
2018-03-11 19:24:06 +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
66c9a06351
Add AAX HCA [Binary Domain (PS3)]
2018-03-10 17:33:48 +01:00
bnnm
693fbf8e3b
Clean AAX layout (rename parts, move code around, etc)
2018-03-10 12:19:30 +01:00
bnnm
a7870c5339
Rename coding_ogg_vorbis to coding_OGG_VORBIS for consistency
2018-03-08 23:32:58 +01:00
bnnm
c0906d1b0f
Add CAF .caf/empty extension, cleanup [Baten Kaitos (GC), Fragile (Wii)]
2018-03-08 23:26:10 +01:00
bnnm
b97fc632be
Fix minor compiler warnings
2018-03-03 19:07:59 +01:00
bnnm
789ca26e8a
Add KID .WAF [Ever 17 (PC)]
2018-03-03 18:46:12 +01:00
bnnm
ce568fb6a3
Add .ATSL for PS4/Vita/PC [Warriors All-Stars (PC)]
2018-03-03 02:03:53 +01:00
bnnm
c44b7ef264
Rename some blocked layouts for clarity
2018-02-25 16:52:57 +01:00
bnnm
3c1d4ee825
Validate max channels on allocation
2018-02-25 12:17:51 +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
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
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
216ecf04b2
Rename psx_mgav to ea_swvr and clean for future changes
2018-02-17 21:15:21 +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
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
694cded587
Add stream_size to calculate bitrate in subsongs, print bitrate info
2018-01-28 00:31:12 +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
d8c81bc14a
Add Media.Vision ATX subfiles (decrypted) [Shining Blade (PSP)]
2018-01-27 14:00:31 +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
a0e97683e4
Add Starbreeze XWC [Riddick Dark Athena, Syndicate]
2018-01-27 11:00:21 +01:00
bnnm
ed29f694ed
Add FSB decryption, keys and optional .fsbkey
2018-01-21 01:46:33 +01:00
bnnm
cbe4b19b92
Add .KM9 [Nobunaga no Yabou - Souzou (Vita)]
2018-01-13 17:47:40 +01:00
bnnm
3236676d5d
Fix some XVAG interleave/subsongs/multichannel [God of War 3 (PS4)]
2018-01-13 11:36:35 +01:00
bnnm
adf9bc84a5
Remove tabs for consistency
2018-01-04 23:38:22 +01: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
soneek
160a13dff9
Support for tri-Ace mobile vorbis AAC, support for KTSS
2017-12-27 00:14:50 -05:00
bnnm
331bc187fa
Move XNB from riff.c to xnb.c (cleanup)
2017-12-26 18:17:59 +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
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
bxaimc
0db009b3e6
Add Harmonix Music Systems MOGG Vorbis
2017-12-10 20:30:00 -05:00
bnnm
cc8256d178
Fix some VAWX multichannel files
2017-12-09 19:01:36 +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
98b4f8c5b1
Add NGC DSP subinterleave decoder
...
Meant to replace layout_interleave_byte
2017-12-06 21:04:04 +01:00
bnnm
53698db7c3
Add vgmstream_force_loop, comments (API cleanup)
2017-12-06 16:55:41 +01:00
bnnm
3380451c80
Code cleanup (renames, comments, nitpicks)
2017-12-06 15:32:52 +01:00
bnnm
6072d17f50
Add EA MicroTalk decoder [FIFA 2001 PS2, Ultima IX voices]
2017-12-03 13:44:55 +01: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
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
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
e1bb468bd5
Remove unnecessary check_sample_rate
2017-11-23 23:11:11 +01:00
bnnm
7c7af0bf18
Rename *_DE2 to _*DEC for consistency and since it was first
2017-11-23 22:48:11 +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
8363e26b88
Unify IMA/IMA_int with standard IMA decoder + add stereo IMA
2017-11-19 03:32:21 +01:00
bnnm
36d4f69420
Fix STRM FFTA2 using the wrong IMA, making output slightly incorrect
2017-11-18 22:49:18 +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
79c5cfab49
Clean EA 1SNh/EACS (ea_old) and fix some bugs/looping
2017-11-18 02:20:52 +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
2ad3d432f1
Rename pcm.c > scd_pcm.c (cleanup)
2017-11-16 00:41:06 +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
82b1f235de
Remove/simplify formats.h and move to vgmstream.h for simpler API
2017-11-10 20:26:44 +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
Christopher Snowhill
b316b0ec33
Merge pull request #136 from bnnm/bgw-sab-etc
...
BGW, SAB, etc
2017-10-28 18:22:12 -07:00
bnnm
1ff0cecca8
Fix minor compiler warnings (missing const/static/case defaults/etc)
2017-10-28 01:34:32 +02:00
bnnm
e6cb6facbc
Fix coding_XBOX_int so it properly works with any interleave; comments
2017-10-27 18:56:34 +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
c770490b3d
Add AL2 meta + A-law decoder [Conquest of Elysium 3 (PC)]
2017-10-08 17:51:54 +02:00
bnnm
16786b78d4
Add .opus [Lego City Undercover]
2017-09-30 01:27:47 +02:00
bnnm
8a8ebe3e24
Minor renames for style (ps3_xvag > xvag, x360_nub > nub_xma)
2017-09-29 23:37:20 +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
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
5d12d6fb67
Add big endian mode to coding_PCM16LE_int and rename to coding_PCM16_int
2017-08-27 22:17:13 +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
86b7b45c89
Minor rename
2017-08-19 15:59:29 +02:00
bnnm
3c14d3fdb4
Parse loop_target manually (get_vgmstream_play_samples is just a helper)
2017-08-18 19:32:51 +02:00
bnnm
d9fb118412
Add BINK multi-stream support and v2 header
2017-08-18 19:24:19 +02:00
bnnm
6642607d0e
Add FSB5 PCMFLOAT + decoder [Anima Gate of Memories (PC)]
2017-08-18 18:54:21 +02:00
bnnm
ade662e023
Redo Angel STM: add PCM, adjust looping, unify code, add .lstm
2017-08-12 18:42:38 +02:00
bnnm
b7c807a85c
Add stream name string, for metas than can use it
2017-08-12 11:27:10 +02:00
bnnm
aaa2613802
Add EALayer3 v1 decoder for SCHl [EA games for PS2/Wii/X360/PS3]
2017-08-05 17:54:50 +02:00
bnnm
3e947b5e9d
Remove meta_AHX from MPEG ifdefs
...
I feel parsing a header/meta isn't tied to the ability to init the
codec, which could be swapped if one wanted to use another lib
2017-07-29 23:21:32 +02:00
bnnm
d54492cb95
Update MPEG "interleaved" decoder: now "custom", restructured, added AHX
...
To support future MPEGs of uncertain layout and frame variations (namely
EALayer3) the code has been restructured: mpeg_decoder does stream
procesing and decoding, while mpeg_custom_utils_x does init and parsing
(write to data buffer + update offsets), per MPEG subtype. Internals
have changed but still gives byte-exact results.
AHX has been adapted to this format as a test. Some modes
(P3D/EALayer3/LyN/AWC) are defined for later development but will fail
on init ATM.
2017-07-29 23:14:04 +02:00
bnnm
6308818b77
Simplify MPEG coding/layouts to allow blocked layouts and future changes
2017-07-29 13:05:23 +02:00
bnnm
54ef2b5190
Add Silicon Knights .AUD + SK Vorbis [Eternal Darkness (GC)]
2017-07-29 11:46:53 +02:00