Commit Graph

1541 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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
c052848e26 Add EA .WVE videos [Supercross 2000 (PS), Wing Commander 3/4 (PS)] 2018-03-29 15:39:33 +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
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
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
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
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
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
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
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
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