Merge pull request #1134 from bxaimc/master

Add brwsd & brwav ext. Fix RWSD for Wii Sports
This commit is contained in:
bxaimc 2022-05-03 23:01:37 -04:00 committed by GitHub
commit 70e047d01d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 2 deletions

View File

@ -118,6 +118,8 @@ static const char* extension_list[] = {
"bo2",
"brstm",
"brstmspm",
"brwav",
"brwsd",
"bsnd",
"btsnd",
"bvg",

View File

@ -11,13 +11,13 @@ VGMSTREAM* init_vgmstream_rwsd(STREAMFILE* sf) {
size_t wave_length;
int codec, channels, loop_flag;
size_t stream_size;
off_t start_offset, wave_offset = 0;
off_t start_offset, wave_offset = 0, labl_offset;
if (!is_id32be(0x00, sf, "RWSD"))
goto fail;
if (!check_extensions(sf, "rwsd"))
if (!check_extensions(sf, "brwsd,rwsd"))
goto fail;
/* check header */
@ -98,6 +98,11 @@ VGMSTREAM* init_vgmstream_rwsd(STREAMFILE* sf) {
/* this is just data size and following data may or may not be from this RWSD */
start_offset = read_32bitBE(0x08, sf);
if (is_id32be(start_offset, sf, "LABL")) {
labl_offset = start_offset;
start_offset += read_32bitBE(start_offset + 0x04, sf);
read_string(vgmstream->stream_name, 0x28, labl_offset + 0x18, sf);
}
stream_size = read_32bitBE(wave_offset + 0x50,sf);