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
94572fede5
Use meta_MP4 for MP4 FFmpeg too, so no need to ifdef
2018-03-30 21:37: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
99888d6517
Merge branch 'master' of https://github.com/kode54/vgmstream into test
2018-03-30 11:02:28 +02:00
bxaimc
d5c9165d07
Merge branch 'master' of git://github.com/kode54/vgmstream
2018-03-29 21:04:09 -04: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
c052848e26
Add EA .WVE videos [Supercross 2000 (PS), Wing Commander 3/4 (PS)]
2018-03-29 15:39:33 +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
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
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
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
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
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
8bb9fa5f4a
Clean .WSI
2018-03-23 18:34:37 +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
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
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
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
67a2f29f75
Minor FADPCM cleanup
2018-03-08 22:55:50 +01:00
bnnm
789ca26e8a
Add KID .WAF [Ever 17 (PC)]
2018-03-03 18:46:12 +01:00
bnnm
c44b7ef264
Rename some blocked layouts for clarity
2018-02-25 16:52:57 +01:00
bnnm
494dfb8194
Fix .adm [Dragon Quest V (PS2)]
2018-02-25 15:04:29 +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
aca3dc5f2d
Parse "wsmp" loop chunk, rarely found in Xbox games [Dynasty Warriors 5]
2018-02-23 23:30: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
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
67269eaf8a
Add L2SD Ogg [Lineage II Chronicle 4 (PC)]
2018-02-17 02:23:45 +01:00
bnnm
86ce73d181
Rename Wwise Vorbis enums with prefix for clarity
2018-01-28 00:47:06 +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
448d52fa4e
Remove BGW ATRAC3 mode in FFmpeg in favor of custom streamfiles
2018-01-27 13:01:30 +01:00
bnnm
a0e97683e4
Add Starbreeze XWC [Riddick Dark Athena, Syndicate]
2018-01-27 11:00:21 +01:00
bnnm
cbe4b19b92
Add .KM9 [Nobunaga no Yabou - Souzou (Vita)]
2018-01-13 17:47:40 +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
018ea2fc92
Fix Ogg Vorbis streamfile size to allow subsongs
2018-01-11 22:55:23 +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
d85bca24ae
Remove unused flag
2018-01-07 20:15:49 +01:00
bnnm
adf9bc84a5
Remove tabs for consistency
2018-01-04 23:38:22 +01:00
bnnm
dd6c854e14
Fix some ATRAC9 XVAG and minor adjustments
2018-01-04 17:35:14 +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
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
bnnm
b65765a56e
Fix multistream MPEG SCD [Final Fantaxy XIII-2 (PS3)]
2017-12-17 16:39:36 +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
b5da881a44
Remove thpNextFrameSize and use full_block_size instead
2017-12-08 01:20:09 +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
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
bnnm
e3de403c9f
Add Ultima IX .FLX (EA-XA/PCM)
2017-12-03 01:41:25 +01:00
bnnm
b9c3bd9a01
Add Neversoft .OGG [Gun (GC)]
2017-12-02 16:33:43 +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
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
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
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
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
4dfbc3cf6a
Improve CD-XA detection and RIFF-less support; minor XA code cleanup
2017-11-16 19:47:42 +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
6c141a6582
Clean .dvi/.kcey and add proper .PCM extension
2017-11-15 23:26:38 +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
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
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