Enhanced Sidplayer File Converter
Posted: Sun Mar 07, 2010 11:26 pm
So, getting tired of the standard Sidplay programs available, and wanting to listen to real C64 music on my iPhone, I finally bashed out a program that can convert commie .mus and .str files into a ready-to-upload .m4a file.
It uses the resid library, and compresses as it transcodes, so the performance seems to be around 50% of realtime. My implementation of the Enhanced Sidplayer file format is incomplete, mostly in the areas surrounding the Modulation commands. I haven't run it in a loop across the entire CGSC database or anything, but it does seem to handle most files I throw at it by process of random selection. I suspect all of the most popular commands are now implemented. A bit lightly tested in the filter area, tho, sorry.
I'm putting the source code up (OS X only, sorry) for a command line version of the converter at http://files.me.com/henrik511/to6j9p . If you specify a music package name, it will look for any .mus, .str files, and build a mono or stereo .m4a file. So, for instance, if you have Two_Part_Invention.mus and Two_Part_Invention.str and you give the command "ConvertFile Two_Part_Invention", it should generate "Two_Part_Invention.m4a".
This is slightly better than the current SidPlay solutions for three reasons:
* It knows when to stop playing, so you don't have to babysit it.
* It is geared to conversion, so you only have to do this once
* It works with the CGSC collection rather than the HVSC collection, so it does real music rather than game music
It is slightly worse because:
* It has no GUI
* It's a bit of hack into the ConvertFile sample demo, not a proper application
If there's real interest, I'll keep working. If not, it meets my needs, and I'll just convert the CGSC for my own use.
It uses the resid library, and compresses as it transcodes, so the performance seems to be around 50% of realtime. My implementation of the Enhanced Sidplayer file format is incomplete, mostly in the areas surrounding the Modulation commands. I haven't run it in a loop across the entire CGSC database or anything, but it does seem to handle most files I throw at it by process of random selection. I suspect all of the most popular commands are now implemented. A bit lightly tested in the filter area, tho, sorry.

I'm putting the source code up (OS X only, sorry) for a command line version of the converter at http://files.me.com/henrik511/to6j9p . If you specify a music package name, it will look for any .mus, .str files, and build a mono or stereo .m4a file. So, for instance, if you have Two_Part_Invention.mus and Two_Part_Invention.str and you give the command "ConvertFile Two_Part_Invention", it should generate "Two_Part_Invention.m4a".
This is slightly better than the current SidPlay solutions for three reasons:
* It knows when to stop playing, so you don't have to babysit it.
* It is geared to conversion, so you only have to do this once
* It works with the CGSC collection rather than the HVSC collection, so it does real music rather than game music
It is slightly worse because:
* It has no GUI
* It's a bit of hack into the ConvertFile sample demo, not a proper application
If there's real interest, I'll keep working. If not, it meets my needs, and I'll just convert the CGSC for my own use.