BRSTM Encoding Comparison? by Kurausukun at 12:01 AM EDT on May 22, 2014
Just as a test, I created two .brstms from the same source file with the same loop points, one using brstmmake.exe, and the other with BrawlBox v0.71, and compared them in Audacity by inverting one of them, and then mixing the tracks. What I found was a lot of quantization noise, but I'm not sure which encoder it's coming from. I also found what I can only assume is a small part (~14000 samples) of the loop being cut off of one, but again, I'm not sure which one it comes from. Can someone with a little more knowledge than me tell me which encoder is more likely to be which?
When I packaged brstmmake, I just put a quick little wrapper around brawllib's brstm encoder, so unless they changed something they should be the same.
After further inspection, I realized I was just looking at the audio wrong--the levels of noise were pretty much the same. The loop was just vgmstream properly aligning the loop points to account for the loop start sample constraint (the song loops and sounds the same, but the waveform is slightly different). By the way, is there any reason brstms' loop starts must be a multiple of 14336? Does this provide some advantage?
When I made brstmmake, I did modify it to alignr the loop points. I think brawllib does that too in newer versions. The aligned loop point makes sure it plays back properly on an actual Wii.