Either this .digi module is broken or the replayer hasn't been tested for this

Started by GeorgeDoesStuff, December 26, 2021, 16:27:59

Previous topic - Next topic

GeorgeDoesStuff

When it reaches the second pattern, it reverses the sample. However, it is stuck in the sample loop for the next two patterns. Either this Digi Booster module is broken, or the replayer hasn't been tested on a test case related to this. The .flac file showcases what currently happens. I couldn't find a video online of Digi Booster playing this song.

Saga Musix

Indeed it seems like Digi Booster ignores the sample loop when reversing samples. It's in fact much more complex than that, due to the strange nature of its software mixer, but luckily this track doesn't rely on other parts of that behaviour being emulated properly, so it should be easy to come up with a relatively easy fix.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

GeorgeDoesStuff

You could just add a compatibility tickbox that enables/disables all of Digi Booster's software mixing oddities, and check it for every Digi Booster module that OpenMPT comes across, and just update it each time someone finds something inaccurate with it that can be fixed. But then, you'd have to do it for every format that OpenMPT already supports. And what if someone wanted to use only one part of that behavior?

Or, you could just add a compatibility tickbox for each of Digi Booster's software mixing oddities, and check it for every Digi Booster module that OpenMPT comes across, and just add one/update it/remove one each time someone finds something inaccurate with it that can be fixed. This could help someone who wanted to use only one part of the behavior, but then it'd annoy people who'd have to click every tracker compatibility checkbox just to disable playback compatibility with said tracker.

Or, you could just ignore the sample loop entirely. The only problem being, there could be other Digi Booster modules out there that do have a sample go through the loop and use the reverse sample command in the same song.

Saga Musix

You make it sound like adding the checkbox is the hardest part of implementing this. It's not: the oddities in Digi Booster's behaviour can be rather difficult to emulate due to the nature of how channels interact with each other. There will be some sort of fix for sure, but it will probably not be 100% faithful to how Digi Booster works as it might not be technically possible, or it will be so complex that it's not worth the effort. Just please don't give me suggestions how to fix it - I have implemented those compatibility checkboxes, I know how and when they are supposed to be used.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.