From e994af85ab99d8226ab748a17b4f98e0b117972b Mon Sep 17 00:00:00 2001 From: bxaimc Date: Thu, 21 Mar 2019 19:18:26 -0400 Subject: [PATCH] change channelMultiplier to num_layers --- src/meta/ktss.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/meta/ktss.c b/src/meta/ktss.c index b4ed2415..0c82f7ca 100644 --- a/src/meta/ktss.c +++ b/src/meta/ktss.c @@ -4,7 +4,7 @@ VGMSTREAM * init_vgmstream_ktss(STREAMFILE *streamFile) { VGMSTREAM * vgmstream = NULL; int loop_flag, channel_count; - int8_t version, channelMultiplier, codec_id; + int8_t version, num_layers, codec_id; int32_t loop_length, coef_start_offset, coef_spacing; off_t start_offset; size_t data_size, skip = 0; @@ -19,14 +19,14 @@ VGMSTREAM * init_vgmstream_ktss(STREAMFILE *streamFile) { loop_length = read_32bitLE(0x38, streamFile); loop_flag = loop_length > 0; - // For reasons unknown, a channel multiplier exists in Hyrule Warriors (Switch) - // It seems to be present in other Koei Tecmo KNS but the channel count was always - // explicitly defined in the 0x29 byte. Here, 10 channel files have '2' in 0x29* - // and '5' in 0x28 whereas previous titles usually contained '1' + // A layered stream/track model seems to be used in Hyrule Warriors (Switch). + // It's also present in other Koei Tecmo KNS but the channel count was always + // explicitly defined in the 0x29 byte and the number of layers was set to 1. + // Here, 10 channel files are set up with 2 channels in 5 layers. // Super hacky on KT's part and ours to implement but it works. - channelMultiplier = read_8bit(0x28, streamFile); + num_layers = read_8bit(0x28, streamFile); - channel_count = read_8bit(0x29, streamFile) * channelMultiplier; + channel_count = read_8bit(0x29, streamFile) * num_layers; /* build the VGMSTREAM */ vgmstream = allocate_vgmstream(channel_count, loop_flag);