Open christiansacks opened 2 years ago
I have no plans to expand support for MOD formats. I have done about as much as I can with the documentation I have available. I didn't think they were much used anymore.
Ah That's a shame, there's a whole scene of demoscene musicians who would disagree that it isn't used anymore. If you change your mind in the future, I know that the demoscene would all be very grateful.
Thanks and best wishes, Christian aka MeaTLoTioN
On 13/04/2022 23:11, James Heinrich wrote:
I have no plans to expand support for MOD formats. I have done about as much as I can with the documentation I have available. I didn't think they were much used anymore.
It's all a matter of file format documentation.
Is there something specific that's not working? If there's a specific issue with a specific file that you want me to look at, please provide a sample file.
Well here's the thing, I use a platform called AzuraCast which is a platform to create an internet radio station. It works hand in hand with liquid soap, icecast, etc.
AzuraCast uses your getID3() to recognise and use music/audio files to be able to be played, however the formats that are available to use with getID3() are not as exhaustive as ffmpeg for example, which AzuraCast uses to actually play the audio files.
The file format audio/x-mod and audio/xm are just a few of the tracked music files that I would like to use. Here's a link to what audio/x-mod is about; https://en.wikipedia.org/wiki/MOD_(file_format)
There's a whole scene of tracker musicians who produce music in this format every day, and the file sizes are so small it would really cut down the storage and bandwidth usage if we could also use these formats in our radio streams.
An example track is attached.
I hope that these help, you can get the track info with ffprobe so hopefully you can also work out how to do it with getID3() so AzuraCast can implement using these files.
Many thanks, Christian aka MeaTLoTioN
On 14/04/2022 13:44, James Heinrich wrote:
It's all a matter of file format documentation.
Is there something specific that's not working? If there's a specific issue with a specific file that you want me to look at, please provide a sample file.
I can't attach that file type here, so a link: https://erb.pw/sundance.mod
Other formats I'd wish to use;
STM/S3M: https://en.wikipedia.org/wiki/S3M_(file_format) IT: https://en.wikipedia.org/wiki/Impulse_Tracker XM: https://en.wikipedia.org/wiki/XM_(file_format)
All the above are able to play with things like ffmpeg/vlc/etc, and all are current formats that are used by tracker musicians partly because of the small sizes of the files that they produce, among many reasons.
Hope this helps.
Those formats have all had roughed-in support in getID3 for many years (they're detected, but no in any detail). I'm lacking proper file format documentation. I managed to find some partial old documentation for the first sample file you sent: http://www.textfiles.com/programming/FORMATS/modulesg.txt https://web.archive.org/web/20100921225940/http://io.debian.net/~tar/debian/xmp/xmp-2.7.1/docs/formats/Ultimate_Soundtracker-format.txt That was enough to get the file format recognized and extract song and track names, but I have not had any insight on how to calculate the track length.
I have a bunch of test files if you want to try them all out, downloadable from https://erb.pw/silver.zip ... There's about 200 files of .mod .stm .s3m .xm formats.
According to ffmpeg, they're of type;
.STM = pcm_f32le application/octet-stream .MOD = pcm_f32le audio/x-mod .S3M = pcm_f32le audio/x-s3m .XM = pcm_f32le audio/xm audio/x-mod
Hope this helps you out.
I've taken another look at it but I still don't understand how to calculate the playtime of mod files in general. Until someone wants to volunteer some code or documentation that shows how to do that I likely can't do anything more, sorry.
Hi there,
I don't know if this is a good place to ask this... how "future" are the future plans for this feature? I'm desperate to get this included, so that my favourite streaming service that I use can use the file formats that I really would like to use, instead of having to convert them all to MP3.
Thank you for listening.