Commit Graph

2008 Commits

Author SHA1 Message Date
bnnm
452033f14a Clean DSP metas and fix some loop checks 2018-04-29 19:40:21 +02:00
bxaimc
ce2082a8d4 Add .KNS for KTSS meta 2018-04-29 13:24:01 -04:00
Christopher Snowhill
47d2b53c23
Merge pull request #216 from bxaimc/master
Add SNDS support for The Incredibles (PS2)
2018-04-21 19:05:11 -07:00
Christopher Snowhill
4ea0d1a9d7
Merge pull request #217 from bnnm/opus-sps-etc
Opus, sps, etc
2018-04-21 19:04:13 -07:00
bnnm
e8b2759dcf Add Capcom multistream Opus [RE: Revelations (Switch)] 2018-04-22 02:20:46 +02:00
bnnm
7a212eed9b Allow layers of more than 1 channel 2018-04-22 02:19:37 +02:00
bnnm
f45b08586d Less debug 2018-04-22 02:17:42 +02:00
bxaimc
0f4bd6ab57 Add SNDS support for The Incredibles (PS2) 2018-04-21 16:45:04 -04:00
bnnm
bc4f7e9b5f Less debug 2018-04-21 21:56:49 +02:00
bnnm
686d77debc Clean Switch opus meta
Separate header variations since every other dev is going to make their
own, it was getting kind of messy.
2018-04-21 21:52:30 +02:00
bnnm
ee05880c2d Rename nsw_opus.c to opus.c
The abbreviation was strange, should still be clear it's not ogg_opus
2018-04-21 21:00:11 +02:00
bnnm
ab6cc8c6ce Adjust EALayer3 V2 discard modes 2018-04-21 03:31:24 +02:00
bnnm
5229e7385d Clean dsp meta
Use a common function since most parsers did the same thing with minor
config params.

Also add extra validations to Cabela's DSP since it was hijacking other
DSPs.
2018-04-21 02:14:21 +02:00
bxaimc
26249d4750 add .CVS support for Disney's Aladdin in Nasira's Revenge (PS1). Add support for >2 channels XA2 for RC Revenge Pro (PS2) 2018-04-20 18:41:25 -04:00
bnnm
fcf5f26e9d Fix Naomi .adpcm num_samples and checks 2018-04-20 21:00:17 +02:00
bnnm
165cb400b1 Add .at9 opus [Penny-Punching Princess (Switch)] 2018-04-20 20:37:19 +02:00
bnnm
befcbbd4fb Add PPST .sng [Parappa the Rapper (PSP)] 2018-04-20 18:27:08 +02:00
bnnm
fdaba703d6 Add "-" channel mask separator in TXTP for some shells 2018-04-20 17:07:00 +02:00
bnnm
ab2cecf92d Add encrypted .ogg from Ys VIII (PC) 2018-04-20 17:02:56 +02:00
bnnm
84b1b31608 Add .sps in Frostbite(?) containers [Need For Speed Rivals (PS4)] 2018-04-20 00:22:40 +02:00
bnnm
46f333cc8e Remove get_realname from streamfiles as it's not used anymore
It was implemented for Audacious only to open companion NWA files, but
current version has no need for it. In case there is some obscure thing
that needs it, Audacious's vfs.cc should translate or return realnames
transparently, without having to modify other streamfiles.
2018-04-19 22:54:45 +02:00
bnnm
3d2f7e0de2 Clean NWA meta
To open external files it was using get_realname, which only was
actually implemented in Audacious, but Audacious can use get_name to
open external files just fine anyway (for any path, encoding, etc)
2018-04-19 22:44:05 +02:00
bnnm
4a8e8a87e8 Fix some .SNU sample rate [Dead Space 2 (PC)] 2018-04-19 22:40:47 +02:00
bnnm
7d992af25e Fix some EALayer3 skips [Need For Speed Rivals (PS4)]
Uses a custom streamfile to remove .sps blocks for EALayer3, as V2P
needs it since frames may be split between blocks.
2018-04-19 22:26:46 +02:00
bnnm
2268d9c5bf Rename ea_eaac_eatrax_streamfile.h to ea_eaac_streamfile.h 2018-04-19 22:23:09 +02:00
bnnm
271626921a Fix some .MSA 2018-04-19 22:20:18 +02:00
bnnm
d6ade4123f Add buffer_streamfile (for custom IO) and simplify stdio reads 2018-04-19 22:19:30 +02:00
bnnm
a8bb304998 Minor cleanup 2018-04-18 21:03:24 +02:00
bnnm
97874749da Fix possible segfault 2018-04-18 20:41:11 +02:00
bnnm
ee3fae5a37 Minor doc 2018-04-18 20:11:42 +02:00
bnnm
f5a3a2b5bc Add .ad extension 2018-04-18 20:10:53 +02:00
bnnm
adc7a776f9 Fix some Switch .bfwav interleave/panning; cleanup 2018-04-18 20:10:48 +02:00
bnnm
e8aad5a38a Add FSB key 2018-04-18 20:09:21 +02:00
bnnm
27777a8b75 Add HCA key 2018-04-18 20:08:50 +02:00
bnnm
5435080684 Fix EA SWVR sample rate and PC codec 2018-04-15 02:29:17 +02:00
bnnm
a181a04179 Update docs 2018-04-15 01:47:46 +02:00
bnnm
6e900315ab Load Vorbis setup in fsb/wwise from array first, as it's most common 2018-04-15 01:16:45 +02:00
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
887ceec4cd Simplify WVE block parsing by ignoring empty blocks 2018-04-13 16:46:24 +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
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
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
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
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
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
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
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
bnnm
99888d6517 Merge branch 'master' of https://github.com/kode54/vgmstream into test 2018-03-30 11:02:28 +02:00
-
d5b095361c revert back the Android change. It seems that the 'dup' is not working perfectly with unistd.h either. 2018-03-30 08:22:03 +03: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