mirror of
https://github.com/vgmstream/vgmstream.git
synced 2025-01-31 20:25:23 +01:00
Merge pull request #1220 from Hexagon123/master
- Some known extensions from various games.
This commit is contained in:
commit
858b7626e0
@ -215,6 +215,7 @@ static const char* extension_list[] = {
|
||||
"his",
|
||||
"hps",
|
||||
"hsf",
|
||||
"hvqm",
|
||||
"hwx", //txth/reserved [Star Wars Episode III (Xbox)]
|
||||
"hx2",
|
||||
"hx3",
|
||||
@ -403,6 +404,7 @@ static const char* extension_list[] = {
|
||||
"pnb",
|
||||
"pona",
|
||||
"pos",
|
||||
"ps3",
|
||||
"ps2stm", //fake extension for .stm (renamed? to be removed?)
|
||||
"psb",
|
||||
"psf",
|
||||
|
@ -19,8 +19,11 @@ VGMSTREAM* init_vgmstream_bik(STREAMFILE* sf) {
|
||||
|
||||
/* .bik/bik2/bk2: standard
|
||||
* .xmv: Reflections games [Driver: Parallel Lines (Wii), Emergency Heroes (Wii)]
|
||||
* .bik.ps3: Neversoft games [Guitar Hero: Warriors of Rock (PS3)]
|
||||
* .bik.xen: Neversoft games [various Guitar Hero (PC/PS3/X360)]
|
||||
* .vid: Etrange Libellules games [Alice in Wonderland (PC)]
|
||||
* .bika: fake extension for demuxed audio */
|
||||
if (!check_extensions(sf,"bik,bik2,bk2,xmv,bika"))
|
||||
if (!check_extensions(sf,"bik,bik2,bk2,ps3,xmv,xen,vid,bika"))
|
||||
goto fail;
|
||||
|
||||
/* find target stream info and samples */
|
||||
|
@ -118,8 +118,9 @@ VGMSTREAM* init_vgmstream_fsb(STREAMFILE* sf) {
|
||||
|
||||
/* .fsb: standard
|
||||
* .bnk: Hard Corps Uprising (PS3)
|
||||
* .sfx: Geon Cube (Wii) */
|
||||
if ( !check_extensions(sf, "fsb,bnk,sfx") )
|
||||
* .sfx: Geon Cube (Wii)
|
||||
* .xen: Guitar Hero: World Tour (PC) */
|
||||
if ( !check_extensions(sf, "fsb,bnk,sfx,xen") )
|
||||
goto fail;
|
||||
|
||||
fsb.id = read_u32be(0x00,sf);
|
||||
|
@ -13,8 +13,9 @@ VGMSTREAM* init_vgmstream_fsb_encrypted(STREAMFILE* sf) {
|
||||
|
||||
/* checks */
|
||||
/* .fsb: standard
|
||||
* .fsb.ps3: various Guitar Hero (PS3)
|
||||
* .fsb.xen: various Guitar Hero (X360/PC) */
|
||||
if (!check_extensions(sf, "fsb,xen"))
|
||||
if (!check_extensions(sf, "fsb,ps3,xen"))
|
||||
goto fail;
|
||||
|
||||
|
||||
|
@ -19,7 +19,10 @@ VGMSTREAM* init_vgmstream_h4m(STREAMFILE* sf) {
|
||||
!is_id32be(0x08,sf, "5\0\0\0"))
|
||||
goto fail;
|
||||
|
||||
if (!check_extensions(sf, "h4m"))
|
||||
/* checks */
|
||||
/* .h4m: common
|
||||
* .hvqm: Shrek: Extra Large (GC) */
|
||||
if (!check_extensions(sf, "h4m,hvqm"))
|
||||
goto fail;
|
||||
|
||||
/* header */
|
||||
|
@ -254,7 +254,7 @@ static int parse_musx_stream(STREAMFILE* sf, musx_header* musx) {
|
||||
|
||||
case 0x5749495F: /* "WII_" */
|
||||
default_channels = 2;
|
||||
default_sample_rate = 44100;
|
||||
default_sample_rate = 32000;
|
||||
musx->codec = DAT;
|
||||
break;
|
||||
|
||||
|
@ -572,13 +572,14 @@ fail:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* .(mp)dsp - single header + interleaved dsp [Monopoly Party! (GC)] */
|
||||
/* .STE - single header + interleaved dsp [Monopoly Party! (GC)] */
|
||||
VGMSTREAM* init_vgmstream_ngc_mpdsp(STREAMFILE* sf) {
|
||||
dsp_meta dspm = {0};
|
||||
|
||||
/* checks */
|
||||
/* .mpdsp: renamed since standard .dsp would catch it otherwise */
|
||||
if (!check_extensions(sf, "mpdsp"))
|
||||
/* .ste: real extension
|
||||
* .mpdsp: fake/renamed since standard .dsp would catch it otherwise */
|
||||
if (!check_extensions(sf, "mpdsp,ste"))
|
||||
goto fail;
|
||||
|
||||
/* at 0x48 is extra data that could help differenciating these DSPs, but seems like
|
||||
@ -757,7 +758,7 @@ fail:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* IDSP - from Next Level games [Super Mario Strikers (GC), Mario Strikers: Charged (Wii)] */
|
||||
/* IDSP - from Next Level games [Super Mario Strikers (GC), Mario Strikers Charged (Wii), Spider-Man: Friend or Foe (Wii)] */
|
||||
VGMSTREAM* init_vgmstream_idsp_nl(STREAMFILE* sf) {
|
||||
dsp_meta dspm = {0};
|
||||
|
||||
@ -821,12 +822,14 @@ fail:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* .ddsp - full interleaved dsp [The Sims 2: Pets (Wii)] */
|
||||
/* .ddsp - full interleaved dsp [Shark Tale, (GC), The Sims 2: Pets (Wii), Wacky Races: Crash & Dash (Wii)] */
|
||||
VGMSTREAM* init_vgmstream_dsp_ddsp(STREAMFILE* sf) {
|
||||
dsp_meta dspm = {0};
|
||||
|
||||
/* checks */
|
||||
if (!check_extensions(sf, "ddsp"))
|
||||
/* .ddsp: assumed?
|
||||
* .wav: Wacky Races: Crash & Dash (Wii) */
|
||||
if (!check_extensions(sf, "ddsp,wav,lwav"))
|
||||
goto fail;
|
||||
|
||||
dspm.channels = 2;
|
||||
|
Loading…
x
Reference in New Issue
Block a user