Support for MDS music file formats (both variants)

Moderator: GZDoom Developers

Cacodemon345
Posts: 398
Joined: Fri Dec 22, 2017 1:53 am
Discord: Cacodemon345#9151
Github ID: Cacodemon345
Operating System: Other Linux 64-bit
Graphics Processor: ATI/AMD (Modern GZDoom)

Support for MDS music file formats (both variants)

Post by Cacodemon345 »

(Apologies if music format suggestions doesn't belong here)

There is, as of now, no support for MDS music file formats (which was existent from the days of Win95). It would be good if support for this was added.

http://www.vgmpf.com/Wiki/index.php?title=MDS#Technical

Doom Legacy has code for exporting MDS files (both maybe with and without the iStreamID integer). You can look at my code if you wish.
User avatar
wildweasel
Moderator Team Lead
Posts: 21368
Joined: Tue Jul 15, 2003 7:33 pm

Re: Support for MDS music file formats (both variants)

Post by wildweasel »

What is the specific application of this format? Is there a wad that uses it already?
Cacodemon345
Posts: 398
Joined: Fri Dec 22, 2017 1:53 am
Discord: Cacodemon345#9151
Github ID: Cacodemon345
Operating System: Other Linux 64-bit
Graphics Processor: ATI/AMD (Modern GZDoom)

Re: Support for MDS music file formats (both variants)

Post by Cacodemon345 »

There isn't any wad that uses it since no source port supports it (apart from Doom Legacy which only uses it for exporting MIDI files to the MDS format). The format was created by Microsoft for Windows 95 for storing MIDI music data to be directly played through the MIDI streaming API (the non-compressed variants which has the iStreamID in their messages can be directly loaded into a MIDIHDR and queued for playback without much setup) and some 90s Arkanoid clones use it for their musics. The compressed variants can be converted to the non-compressed ones by embedding the iStreamID in the messages, modifying the buffer size of the MIDI messages section, setting the flags bit to 0.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 47968
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Support for MDS music file formats (both variants)

Post by Graf Zahl »

Is there anything in this format worth supporting?
Cacodemon345
Posts: 398
Joined: Fri Dec 22, 2017 1:53 am
Discord: Cacodemon345#9151
Github ID: Cacodemon345
Operating System: Other Linux 64-bit
Graphics Processor: ATI/AMD (Modern GZDoom)

Re: Support for MDS music file formats (both variants)

Post by Cacodemon345 »

The feature set of the format is honestly more similar to that of a Type-0 SMF format (except that SysEx messages are absent as that would make it more complicated).

As for the games, like I said, some 90s Arkanoid clones use it for playing back music. A couple of other games use the same MDS format too.
User avatar
wildweasel
Moderator Team Lead
Posts: 21368
Joined: Tue Jul 15, 2003 7:33 pm

Re: Support for MDS music file formats (both variants)

Post by wildweasel »

Given that MID conversions of the above games don't seem particularly difficult to find, I still question why it's necessary to support them in the original format.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 47968
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Support for MDS music file formats (both variants)

Post by Graf Zahl »

Let's make this short: If you are willing to rewrite your code to play this format through our MIDI sequencer, it will most definitely be added to GZDoom. But I see very little value here writing a processor for this format myself.
Cacodemon345
Posts: 398
Joined: Fri Dec 22, 2017 1:53 am
Discord: Cacodemon345#9151
Github ID: Cacodemon345
Operating System: Other Linux 64-bit
Graphics Processor: ATI/AMD (Modern GZDoom)

Re: Support for MDS music file formats (both variants)

Post by Cacodemon345 »

User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 47968
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Support for MDS music file formats (both variants)

Post by Graf Zahl »

Do you also have a file to test this with? Or even better, a link to a site where to find some?
Cacodemon345
Posts: 398
Joined: Fri Dec 22, 2017 1:53 am
Discord: Cacodemon345#9151
Github ID: Cacodemon345
Operating System: Other Linux 64-bit
Graphics Processor: ATI/AMD (Modern GZDoom)

Re: Support for MDS music file formats (both variants)

Post by Cacodemon345 »

User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 47968
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Support for MDS music file formats (both variants)

Post by Graf Zahl »

Just tested and added.

Return to “Closed Feature Suggestions”