kode54 / dumb

[Semi unmaintained] Dynamic Universal Music Bibliotheque - DUMB - Module/tracker based music format parser and player library -- Please consider using libopenmpt instead of this, it's considerably faster and produces similar or better rendering quality
Other
127 stars 26 forks source link

Feature request: allow client code to programmatically set the next pattern. #84

Open illegalinstruction opened 6 years ago

illegalinstruction commented 6 years ago

Among other things, this would allow for context-sensitive music in games (such as how the boss battle music in Skies of Arcadia goes from somber when the party is near death to triumphant when the enemy has very low health, the minor-key/'you lost all your gold' portion of the Pitfall theme, etc.)

A long time ago, I had a patch for this that compiled against 0.93; if this is a feature you'd be willing to accept, I can bring it up-to-date with the current codebase and make a pull request for it.,

kode54 commented 6 years ago

This may be useful. I'd be willing to integrate this.

I'd also suggest you look into adding support for it to libopenmpt as well, since that's another library I have an interest in, even if I'm not a major contributor or maintainer of that library, but I am a maintainer of a forked plugin that gets new features now and then. I also recommend it over DUMB if your platform can stomach C++ code for the library itself, since it's actually considerably faster than DUMB at mixing. I really need to improve DUMB's mixer performance.

illegalinstruction commented 6 years ago

Hello,

I've forked this and have begun work; you can watch it here: https://github.com/illegalinstruction/dumb/compare/84-feature-request-allow-client-code-to-programmatically-set-the-next-pattern