fsb support for Night at the Museum (Wii) FSB4

git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@646 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
This commit is contained in:
halleyscometsw 2009-05-12 21:21:24 +00:00
parent 7fd12dcc3d
commit 4bfa2b3450

View File

@ -289,15 +289,25 @@ VGMSTREAM * init_vgmstream_fsb4(STREAMFILE *streamFile) {
vgmstream->loop_start_sample = 0; vgmstream->loop_start_sample = 0;
vgmstream->loop_end_sample = read_32bitLE(0x50,streamFile); vgmstream->loop_end_sample = read_32bitLE(0x50,streamFile);
} }
start_offset = 0x80;
break; break;
/* WII (de Blob) */ /* WII (de Blob, Night at the Museum) */
case 0x40000802: case 0x40000802:
vgmstream->coding_type = coding_NGC_DSP; if (read_32bitLE(0x14,streamFile)==0x20)
vgmstream->layout_type = layout_none; {
vgmstream->interleave_block_size = read_32bitLE(0x54,streamFile)/channel_count; /* Night at the Museum */
vgmstream->coding_type = coding_NGC_DSP;
vgmstream->layout_type = layout_interleave_byte;
vgmstream->interleave_block_size = 2;
}
else if (read_32bitLE(0x14,streamFile)==0x10)
{
/* de Blob */
vgmstream->coding_type = coding_NGC_DSP;
vgmstream->layout_type = layout_none;
vgmstream->interleave_block_size = read_32bitLE(0x54,streamFile)/channel_count;
}
else goto fail;
vgmstream->num_samples = (read_32bitLE(0x54,streamFile)/8/channel_count*14); vgmstream->num_samples = (read_32bitLE(0x54,streamFile)/8/channel_count*14);
start_offset = 0xe0;
if (loop_flag) { if (loop_flag) {
vgmstream->loop_start_sample = 0; vgmstream->loop_start_sample = 0;
vgmstream->loop_end_sample = read_32bitLE(0x50,streamFile); vgmstream->loop_end_sample = read_32bitLE(0x50,streamFile);
@ -308,6 +318,8 @@ VGMSTREAM * init_vgmstream_fsb4(STREAMFILE *streamFile) {
} }
start_offset = read_32bitLE(0x08,streamFile)+0x30;
vgmstream->meta_type = meta_FSB4; vgmstream->meta_type = meta_FSB4;
if (vgmstream->coding_type == coding_NGC_DSP) { if (vgmstream->coding_type == coding_NGC_DSP) {