-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature Request] - New module formats #65
Comments
My take on this: it's a fairly absurd amount of work to make sure some module formats are supported correctly (see: #18 #23 #25 #37) and MikMod has deficiencies in the formats it already does support. This isn't a problem unique to MikMod, either: libxmp's FAR support was barely better off than MikMod's before I started my patch, its MED/OctaMED effects edge cases are worse than MikMod, and I've had to put quite a bit of work into Impulse Tracker and Digital Symphony modules. More formats would be nice, but I think continuing to fix the formats MikMod already does support would probably be better. Formats that should be mostly fine:
Formats with well known deficiencies:
Formats in desperate need of a deep dive to find bugs. Said bugs are almost guaranteed to exist:
|
Fully agree with Alice here. mikmod's support of some of the most popular formats is abysmal, and before anything else this must be fixed. It doesn't make sense to offer more formats while so many files are played incorrectly already, and it really doesn't make sense to have so many different module playback libraries available that are all mediocre at best at playing the most popular formats. Otherwise the outcome of this request is simply "libxmp with mikmod library interface, but worse". Really, I don't think adding any new features to mikmod makes sense at this point without a serious rewrite because the library itself is already stuck in the past - not being threadsafe by using global variables everywhere being one of the biggest issues of the current library design. |
Right. What MikMod really needs right now pretty much is a new major version to address the following issues:
I don't know that there's a way to make the drivers reentrant but I doubt it'd be necessary, if you're doing that you pretty much need to bring your own software mixer anyway. I'm not familiar enough but going off everything else in this library, they could probably use some additional safety checks after the other stuff is done. |
Major overhaul, yes - and I like the idea :) |
It seems that libxmp can load more different module formats than MikMod. It would be nice, if those can be adapted to MikMod.
I don't mind to give it a try at some point, if it is ok to take the code from libxmp (more or less) and make a MikMod loader from them.
The text was updated successfully, but these errors were encountered: