Commit Graph

2285 Commits

Author SHA1 Message Date
bnnm
7c84391c26 Fix some Frostbite SPS [Need for Speed: The Run (X360)] 2018-07-14 23:00:02 +02:00
Christopher Snowhill
f5551f7415
Update ps2_vpk.c
Fix channels variable references.
2018-07-10 17:23:04 -07:00
AnonBaiter
dd88a38f8c
Adjust VPK code to fix some oddities
this is my first time at coding so see if there's some big goof-up i made up here
2018-07-10 18:20:05 -03:00
bnnm
272f25cebb Fix bank .ivaud [GTA IV (PC)] 2018-07-06 23:41:29 +02:00
bnnm
44dc7ce7ea Add missing EA SCHl patch [SSX3 (PC)] 2018-07-06 21:27:49 +02:00
bnnm
23974334c9 Fix some EA SCHl MicroTalk [Need for Speed: Most Wanted (PC)] 2018-07-06 21:14:56 +02:00
bnnm
383bd41b5f Don't setup offsets when samples=0 to avoid EOF reads 2018-07-06 21:07:08 +02:00
bnnm
780e642543 Fix some Frostbite .SPS [Need for Speed: The Run (PC)] 2018-07-06 21:04:27 +02:00
bnnm
2df613d893 Fix various music .ivaud [GTA IV (PC)] 2018-07-06 21:04:06 +02:00
bnnm
d158a4a35e Simplify struct memsets, using standard 0-setup 2018-07-06 19:37:26 +02:00
bnnm
0cae31d045 Add doc 2018-06-30 21:24:19 +02:00
bnnm
d5f8b4f078 Fix some .joe looping jingles 2018-06-30 20:43:26 +02:00
bnnm
78542225f5 Allow extensionless files in Winamp [Baten Kaitos 2 (GC)] 2018-06-30 17:35:07 +02:00
bnnm
2695612624 Fix The Bouncer .vs (.str) 2018-06-30 16:01:29 +02:00
bnnm
dbb5a4458b Add .mus Ogg [Redux - Dark Matters (PC)] 2018-06-30 13:43:12 +02:00
bnnm
57f8c1922e Add hca keys 2018-06-30 13:31:20 +02:00
bnnm
9ca643d09e Add .vai/apc extensions 2018-06-30 13:31:12 +02:00
Shawn Presser
a700fda10d
Update xvag.c 2018-06-28 15:30:33 -05:00
Shawn Presser
e91703fe6a If a file has no extension, try to play it anyway
This allows fb2k to play Last Of Us (PS3) speech files, which have no
file extension.
2018-06-21 22:53:19 -05:00
bxaimc
ca5cdfe5a9 Add HCA decryption key for PriPara: All Idol Perfect Stage (Switch) 2018-06-18 03:34:56 -04:00
bnnm
12233dd0bb Remove ps2_adsc as it's handled in ps2_ads now 2018-06-17 01:12:53 +02:00
bnnm
ae3307e6f0 Redo ADS to fix various issues
- Fix minor samples bugs
- Fix ADSC variation [Kenka Bancho 2, Shunjuku no Okami]
- Fix misc loops [Culdcept, Katakamuna, Super Galdelic Hour]
- Fix Capcom loops [MM X7, BOF5, Clock Tower 3]
- Fix cavia loops [Drakengard 1/2, GITS: Stand Alone Complex]
- Fix Angel Studios videos [Red Read Revolver, Spy Hunter 2]
- Fix misdetected files [Gran Turismo 2000 videos]
2018-06-17 01:08:52 +02:00
bnnm
a535a497f4 Fix some vid EA SCHl and simplify EA block parsing 2018-06-17 01:06:38 +02:00
bnnm
8dd90cd783 Make sure samples_to_do 0 does nothing in blocked layout
It would affect some decoders with codec_data (ex. EA-MT), even though
decoded samples were being ignored
2018-06-17 01:04:16 +02:00
bnnm
2e75bce0c3 Add .fsb basic headers mode [Biker Mice from Mars (PS2)] 2018-06-17 00:52:46 +02:00
bnnm
90c3613289 Fix some Ubi Lyn [Michael Jackson The Experience (Wii)] 2018-06-17 00:51:42 +02:00
bnnm
5b2af49f57 Fix some .wem [Guitar Hero Live (X360)] 2018-06-17 00:50:42 +02:00
bnnm
1a73c574c0 Clean ADS code 2018-06-10 21:08:06 +02:00
bnnm
4e15ba517b Add MPS extension 2018-06-10 19:27:14 +02:00
bnnm
3be7ec8c68 Add FSB key [Monster Jam (PS2)] 2018-06-10 19:26:37 +02:00
bnnm
973a649fbe Document MIH/MIB/MIC/MSH details 2018-06-09 19:30:20 +02:00
bnnm
7a21345415 Fix some Ubi Jade [Peter Jackson's King Kong (Xbox)] 2018-06-09 17:33:15 +02:00
bnnm
ff6abc48fa Fix some FSB [Hard Reset (PC)] 2018-06-09 17:32:35 +02:00
bnnm
c9175e4d28 Fix JOE num_samples 2018-06-09 17:31:08 +02:00
bnnm
de9fe570e0 Add subsongs for FFmpeg formats 2018-06-09 17:30:28 +02:00
Christopher Snowhill
254791551b
Merge pull request #235 from bnnm/h4m-joe-aif
H4M, JOE, AIF
2018-06-03 14:44:42 -07:00
bnnm
9d86c42ea4 Add .H4M videos (wip) 2018-06-03 13:08:41 +02:00
Michael Turutanov
7cec87720c Added HCA key for Princess Connect Re:Dive 2018-06-02 17:29:22 +03:00
bnnm
66e2c9c671 Fix some .JOE [Super Farm (PS2), Sitting Ducks (PS2), The Mummy (PS2)] 2018-06-02 16:14:26 +02:00
bnnm
88250d3d26 Add AIFC IMA4 [Alida (PC)] 2018-06-02 16:13:37 +02:00
bnnm
48c11e81ca Fix some .XWC [The Darkness (X360)] 2018-06-02 16:05:58 +02:00
bnnm
776d85fee0 Fix TXTP upper ranges 2018-06-02 16:01:58 +02:00
Christopher Snowhill
311eeebc1b
Merge pull request #232 from bnnm/xwb-lyn-etc
XWB, LYN, etc
2018-05-27 14:52:16 -07:00
bnnm
4ad607c520 Add .xss RIFF extension [Spider-Man the Movie (Xbox)] 2018-05-27 17:32:15 +02:00
bnnm
2772696166 Add .rda extension [Rhythm Destruction (PC)] 2018-05-27 17:31:20 +02:00
bnnm
79ab74bf4a Add .xwb ATRAC9 [Stardew Valley (Vita)] 2018-05-27 17:30:59 +02:00
bnnm
7ad34736a3 Fix TXTH data_size for IMA 2018-05-27 17:29:23 +02:00
bnnm
9af7eadbcb Fix some Ubi LyN [Michael Jackson the Experience (PS3)] 2018-05-27 17:28:48 +02:00
Christopher Snowhill
f26b99b6cb
Update txtp.c
Fix "mode" keyval parse to else-if condition so other conditions don't fall through it.
2018-05-26 16:26:55 -07:00
Christopher Snowhill
b341f8d6b6
Merge branch 'master' into master 2018-05-20 16:22:31 -07:00
bxaimc
05aca5ceeb Formatting some things 2018-05-19 16:17:18 -04:00
bxaimc
94a9cf1f7f Add SADF DSP variant from Xenoblade Chronicles 2 (Switch) 2018-05-19 16:05:25 -04:00
bnnm
a57134dc2b Add .gwd Ogg [Adagio Cloudburst (PC)] 2018-05-19 11:37:21 +02:00
bnnm
f1f165a815 Minor Ogg Vorbis cleanup 2018-05-19 11:24:20 +02:00
bnnm
883e018aab Fix nus3bank with varying header [Super Smash Bros (Wii U)] 2018-05-19 11:22:29 +02:00
bnnm
1888990b75 Add HCA key 2018-05-19 11:22:08 +02:00
bnnm
b23e1fbac7 Extra validations for Wwise/Jade 2018-05-19 11:21:40 +02:00
bxaimc
bcf2948a7d Add channel multiplier for KNS/KTSS in Hyrule Warriors (Switch) 2018-05-17 14:27:18 -04:00
bxaimc
0cbdbd8b7c Remove unread PSI metadata ext 2018-05-16 19:53:15 -04:00
bxaimc
caf3bb871c Add PSI file reading in Opus for loops in BlazBlue: Cross Tag Battle (Switch) 2018-05-16 17:58:09 -04:00
bnnm
17952d0db7 Add .rxx extension 2018-05-12 13:55:12 +02:00
bnnm
92419c2143 Add tri-Ace .aac Vita [Judas Code (Vita)] 2018-05-12 13:53:58 +02:00
bnnm
a975eff1a2 Fix TXTH XMA multichannel and num_samples 2018-05-12 13:53:43 +02:00
bnnm
68c8f1bb76 Fix missing .lopus 2018-05-06 11:56:54 +02:00
bnnm
6276df57b5 Add TXTP "mode = layers" for multilayered songs 2018-05-05 23:07:50 +02:00
bnnm
c09bc1e936 Add .xwb DSP hack [Stardew Valley (Switch)]
Also try to open common .xsb name combos
2018-05-05 23:06:59 +02:00
bnnm
f586f443e8 Fix some EA SWVR [Freekstyle (PS2/GC)] 2018-05-05 23:02:22 +02:00
bnnm
da930bc3c9 Add .opus variation [Fast RMX (Switch)] 2018-05-05 23:01:49 +02:00
Christopher Snowhill
35cd14fa04
Merge pull request #220 from bnnm/bao-downmix-etc
BAO, downmix, etc
2018-04-29 17:04:19 -07:00
bnnm
a924859d8f Fix ADX key 2018-04-29 23:46:29 +02:00
bnnm
fb63ad4aae Clean mib and add PS-ADPCM check 2018-04-29 21:05:30 +02:00
bnnm
d292531654 Add switch_audio [Gal Gun 2 (Switch)] 2018-04-29 21:04:55 +02:00
bnnm
65b322943f Add .trj/trm extensions [Need for Speed 3 (PS)] 2018-04-29 20:31:08 +02:00
bnnm
10e506675b Add (wip) Ubi .pk support [Just Dance (Wii)] 2018-04-29 20:28:27 +02:00
bnnm
eb9fdbf188 Add ADX key 2018-04-29 20:25:51 +02:00
bnnm
59ac455447 Fix some EA SCHl [Need for Speed 3 (PC)] 2018-04-29 19:41:38 +02:00
bnnm
d5fc1159c5 Fix half interleave IDSPs [Taiko no Tatsujin 3 (WiiU)] 2018-04-29 19:40:56 +02:00
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
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
6ce4580683 Add .msv extension [Fight Club (PS2)] 2018-03-29 16:09:32 +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
ae999b6769 Add .vis extension [AirForce Delta Strike (PS2)] 2018-03-29 01:21:50 +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
a2acd045bf Fix missing nxap 2018-03-25 19:59:58 +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
5d9c5c4ff7 Adjust interleave last block description 2018-03-24 19:30:35 +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
eb4168f9b9 Rename aica_decoder.c to yamaha_decoder.c for clarity
AICA ADPCM is not really exclusive to Dreamcast as Yamaha used it in
their sound chips before.
2018-03-24 12:20:22 +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
d821ecb117 Improve Dreamcast AICA decoding (not very noticeable)
On decoding start step_size was 0, but Yamaha ADPCM is supposed to start
at 127 so there was some deviation, usually minor as most files start in
silence.
2018-03-24 12:13:04 +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
08875e9a95 Fix true multichannel RSD6XADP [Scarface (Xbox)] 2018-03-23 21:21:56 +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
bd684f7680 Rename wsi_blocked.c to blocked_wsi.c 2018-03-23 18:35:53 +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
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
98aa30a38e Add MUS ACM Ogg [Planescape: Torment Enhanced Edition (PC)] 2018-03-16 17:43:51 +01:00
bnnm
ad1f719cf3 Remove mus_acm_layout.c as it's not neede anymore 2018-03-16 17:23:50 +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
bnnm
f525b46d20 Add Ogg .rof extension [The Rhythm of Fighters (Mobile)] 2018-03-11 19:47:57 +01:00
bnnm
de94edb34b Clean segmented layout setup 2018-03-11 19:43:26 +01:00
bnnm
3eeddcc41e Add WayForward single/segmented .wave [Shantae and the Pirate's Curse] 2018-03-11 19:24:06 +01:00
bnnm
78f4d5eb7d Fix some .ADM glitches [Dragon Quest V (PS2)] 2018-03-11 01:06:31 +01:00
bnnm
5cebfc49db Rename aax_layout.c to segmented.c 2018-03-10 20:28:23 +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
619fbf17c5 Fix some MUSX v5 [Predator: Concrete Jungle (Xbox/PS2)] 2018-03-10 18:51:57 +01:00
bnnm
1c7a944633 Remove AAX copying ADPCM history between segments
ADX already have history in the header (resulting output is slightly
different but probably more accurate).
2018-03-10 17:39:32 +01:00
bnnm
453801e899 Remove unused aax_streamfile.h 2018-03-10 17:35:25 +01:00
bnnm
66c9a06351 Add AAX HCA [Binary Domain (PS3)] 2018-03-10 17:33:48 +01:00
bnnm
3ad6261208 Add check when calling free/seek/reset codec
It's possible to set a "coding" that triggers calls to the above while
codec_data is still null, when using special layouts like AAX
2018-03-10 16:59:00 +01:00
bnnm
693fbf8e3b Clean AAX layout (rename parts, move code around, etc) 2018-03-10 12:19:30 +01:00
bnnm
f90ab79596 Move AAX UTF table reading to its own file for clarity 2018-03-10 00:27:06 +01:00
bnnm
a7870c5339 Rename coding_ogg_vorbis to coding_OGG_VORBIS for consistency 2018-03-08 23:32:58 +01:00
bnnm
22063cf0d8 Rename caf files for consistency 2018-03-08 23:31:07 +01:00
bnnm
c0906d1b0f Add CAF .caf/empty extension, cleanup [Baten Kaitos (GC), Fragile (Wii)] 2018-03-08 23:26:10 +01:00
bnnm
79080d34f3 Add DTK .wav/lwav extension [Alien Hominid (GC)] 2018-03-08 22:56:06 +01:00
bnnm
67a2f29f75 Minor FADPCM cleanup 2018-03-08 22:55:50 +01:00
bnnm
b8641db34c Fix PCM SAB/MAB [Chrono Trigger (PC)]
Also rename post_meta/subheader to "extradata" as seen in debug strings
from the exes
2018-03-08 22:53:24 +01:00
bnnm
51aa1660f2 Fix compact XWB [NFL Fever 2004 demo from Amped 2 (Xbox)] 2018-03-08 22:51:50 +01:00
bnnm
61bfcb18c8 Add Rebellion .MIC extension [Rogue Trooper (PS2)] 2018-03-04 00:17:58 +01:00
bnnm
710e5e11cd Minor comments 2018-03-04 00:16:49 +01:00
bnnm
d21793bf22 Add UserMacro to make changing dependencies easier 2018-03-03 20:45:32 +01:00
bnnm
b97fc632be Fix minor compiler warnings 2018-03-03 19:07:59 +01:00
bnnm
13fcb28b3c Add KID .WAF [Ever 17 (PC)] 2018-03-03 18:49:11 +01:00
bnnm
789ca26e8a Add KID .WAF [Ever 17 (PC)] 2018-03-03 18:46:12 +01:00
bnnm
50354e404c Clean some DSP metas 2018-03-03 18:44:02 +01:00
bnnm
36ff981ef9 Rename atsl3.c to atsl.c for consistency 2018-03-03 02:05:14 +01:00
bnnm
ce568fb6a3 Add .ATSL for PS4/Vita/PC [Warriors All-Stars (PC)] 2018-03-03 02:03:53 +01:00
bnnm
7fc5c6e582 Add RIFF/OGG .ADX extension [Remember 11 (PC)] 2018-03-03 01:10:39 +01:00
bnnm
e9b2751064 Add XBOX mono/int to GENH/TXTH (as codec_mode 1) [Manhunt (Xbox)] 2018-03-03 01:09:44 +01:00
bnnm
e7b564462f Rename some blocked layouts files for clarity 2018-02-25 16:58:21 +01:00
bnnm
c44b7ef264 Rename some blocked layouts for clarity 2018-02-25 16:52:57 +01:00
bnnm
c7173a6df5 Remove debug 2018-02-25 16:49:17 +01:00
bnnm
3b59acbf8a Add .adm looping (requires exe in the same dir) [Dragon Quest V (PS2)] 2018-02-25 16:28:15 +01:00
bnnm
15ca185052 Add util to get base filename without path 2018-02-25 16:27:48 +01:00
bnnm
494dfb8194 Fix .adm [Dragon Quest V (PS2)] 2018-02-25 15:04:29 +01:00
bnnm
3c1d4ee825 Validate max channels on allocation 2018-02-25 12:17:51 +01:00
bnnm
4331fb7685 Add .e4x [Driver 3 (PC)] 2018-02-25 12:17:35 +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
bae7eb0fd1 Add .xwav to riff.c, now .lwav and .xwav decode the same 2018-02-24 22:32:13 +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
2966185f26 Add FSB key 2018-02-23 23:31:08 +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
3579858ef4 Write header sample in FSB-IMA (now is byte-exact vs FMOD's tools) 2018-02-23 23:17:13 +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
42f44925f4 Fix possible segfault with some FFmpeg versions 2018-02-17 23:21:41 +01:00
bnnm
2992287e3f Fix XBOX_IMA missing layout_none 2018-02-17 22:16:41 +01:00
bnnm
2f05cfa2e9 Rename psx_mgav to ea_swvr 2018-02-17 21:19: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
317fe4f7d3 Use xbox_ima_bytes_to_samples, WWISE-IMA follows XBOX-IMA and not MS-IMA
This can be seen comparing games of different platform, ex. Resogun PS3
(WWISE-IMA) vs Vita (ATRAC9)
2018-02-17 19:46:15 +01:00
bnnm
7c41cb22bf Add wwise_ima comment about alternate nibble expand 2018-02-17 19:44:18 +01:00
bnnm
47bdada1e8 Rename ps2_aus.c to aus.c for consistency 2018-02-17 19:05:13 +01:00
bnnm
a0fa4422ca Tweak minor debug stuff 2018-02-17 18:53:37 +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
5e00485948 Fix msadpcm_bytes_to_samples not counting small last block samples 2018-02-17 17:44:47 +01:00
bnnm
830f904afb Use fact_samples if possible and add .snd [Layton Brothers (iOS)]
fact_samples can be specified with non-PCM codecs, per spec.
2018-02-17 17:32:58 +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
d969c85bc8 Remove unneeded loop fix 2018-02-17 03:29:58 +01:00