Commit Graph

4501 Commits

Author SHA1 Message Date
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
dd64be04dd Simplify block parsing by just having 0 samples on empty blocks 2018-04-12 23:37:05 +02:00
bnnm
6f4388045e Add ps_cfg_bytes_to_samples for clarity 2018-04-12 23:21:53 +02:00
bnnm
6f3522348e Allow blocks with 0 samples (ignored, then next block is called)
Happens in Kakuto Chojin .stx, can be used to simplify some blocks
parsers so they don't have to manually search for next valid block and
can just set 0 samples if empty block is found.

Also move block_update code since it was getting a bit unwieldy.
2018-04-12 22:51:24 +02:00
bnnm
dacac7f9b4 Fix missing .rpgmvo extension 2018-04-12 22:46:59 +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
Christopher Snowhill
806f703bcd Updated libatrac9.dll binary and signature. 2018-04-10 15:47:44 -07:00
Christopher Snowhill
2f93dc2a45
Merge pull request #213 from bnnm/master
Fix ATRAC9 regression
2018-04-10 15:41:32 -07:00
bnnm
6d81db7cc3 Fix ATRAC9 regression 2018-04-10 21:01:30 +02:00
Christopher Snowhill
94f65eb661 Update libatrac9.dll binary and signature. 2018-04-08 19:27:27 -07:00
Christopher Snowhill
7a458c0bc3
Merge pull request #212 from bnnm/ubi-misc
Ubi, misc
2018-04-07 19:48:21 -07:00
bnnm
27087edea2 Add .rpgmvo Ogg [RPG Maker MV games] 2018-04-07 19:04:06 +02:00
bnnm
bf4898a770 Fix 6ch EAlayer3 in EA SCHl [Medal of Honor 2010 (PC)] 2018-04-07 13:56:20 +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
36c00208d9 Fix correctly test.exe -L 2018-04-07 12:11:30 +02:00
bnnm
254f980a50 Improve layered layout bitrate calculation 2018-04-07 11:44:29 +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
Christopher Snowhill
aaedb81c2e
Merge pull request #211 from bnnm/quick-fixes
Quick fixes
2018-04-01 18:15:04 -07: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
Christopher Snowhill
35bede85fe
Merge pull request #209 from haspor/master
Android change for streamfile
2018-03-31 17:54:45 -07:00
Christopher Snowhill
3ef2f62ad1
Merge pull request #210 from bnnm/aica-layers-eatrax-misc
AICA, layers, EATrax, misc
2018-03-31 17:54:33 -07: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
7a08ea263f Add FFmpeg fake header/header_size check to simplify some calls 2018-03-31 13:07:26 +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
00aaf8fe02 Remove old XMA2 v3 to v4 transformation since FFmpeg now parses both 2018-03-30 22:14:32 +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
f87284026a Fix test.exe -L creating "smpl" chunk but also looping the song
Since one would to to control looping using the "smpl" chunk it makes no
sense for vgmstream to loop the song.
Also write "smpl" before "data" as it looks cooler
2018-03-30 21:33:14 +02:00
bnnm
da568d47c3 Remove incorrect comment and move code around 2018-03-30 21:29:32 +02:00
bnnm
d990d8b8cd Rename scd_int_layout.c to layered.c for consistency 2018-03-30 21:29: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