Is there a single catch-all-features tracked music format?

6

1

I have an archive of old(ish) tracked music in various formats - .mod, .s3m, .it and Commodore 64 .sid files.

Is there a single, well-supported, tracked music format with a super-set of the features of all of these, to which I can losslessly convert all of my files?

I'm specifically interested in a format with support for a variety of tags (a-la-ID3).

einpoklum

Posted 2013-05-12T18:32:00.917

Reputation: 5 032

Do you want to be able to still edit them tracker-style after conversion? – Ƭᴇcʜιᴇ007 – 2013-05-12T18:34:56.663

2Why not stick with the original formats? – user1686 – 2013-05-12T19:50:53.157

@grawity: added my motivation. – einpoklum – 2013-05-13T07:23:14.267

@techie007: Preferably, yes; I don't want to render them as AAC or FLAC etc. – einpoklum – 2013-05-13T07:24:07.707

Would ogg work?

– Ryan Gates – 2013-07-02T20:45:21.727

@RyanGates: IIANM, ogg is for storing audio sampled over time, not 'musical notes' like tracked formats. – einpoklum – 2013-07-03T11:41:17.730

What about SMF or XMF?

– RedGrittyBrick – 2013-07-08T20:52:03.777

@RedGrittyBrick: I don't know about XMF, but MIDI files, to the best of my knowledge, do not contain arbitrary samples and lack some of the tracking features of some of S3M/IT/XM etc. Not 100% sure about that though. – einpoklum – 2013-07-09T13:10:27.413

Answers

3

Note: I'm an OpenMPT/libopenmpt developer and have worked on code dealing with module formats for more than ten years.

The quite simple answer to this question is "no". Not even the IT format, as suggested by mr_lou, is a viable superset of any of the mentioned formats. There is no format that does everything all the other formats do, and in particular among the formats you mentioned, .sid is the odd one out because it is not a tracked music format (it contains program code to execute on the C64 or emulator). Just among the formats you mentioned, each of them has unique commands not supported by the other formats:

  • MOD has Invert Loop, which is rather unique to this format
  • Playing S3Ms the "canonical" way (i.e. how ScreamTracker 3 would play them) is incompatible with IT in several ways, because it handles effect memory differently.
  • Most people would believe XM is a subset of IT, but IT lacks some commands that XM has (e.g. Key Off or Set Envelope Position).
  • Historically there have been some formats which tried to achieve what you want to achieve (e.g. MikMod's internal format, or BWSB's GDM), but they really are not supersets of all formats, and more realistically just model the capabilities of MikMod's or BWSB's internal workings.

You could continue this list with about any combination of two module formats and you will always find something that is done differently or is not supported by one of the formats. Each format and player has its own quirks which are unique to that format. Converting between those formats is always a lossy process in the general case. Please do not convert modules to different formats unless you absolutely must.

About the metadata issue, it would make the most sense to store this metadata separately from the file, because most module formats have poor metadata support, and embedding custom metadata is not always possible. This could for example be solved with a database like the STIL database for C64 SID music that comes with the High Voltage SID Collection.

I believe a viable solution to your problem is not to invent yet another container format to possibly contain every tracked music ever, but to have a standardized tracker music database and a player that can handle a wealth of formats (e.g. by combining libraries such as libopenmpt, UADE, reSID and some others). There are various players that can be extended with plugins (such as XMPlay) which do a great job at this. Currently in the works is also a modern reincarnation of HippoPlayer, which aims to be able to play almost any tracked music format, and in the end also provide rich metadata, possibly through an external database. You can see the progress of this project here: https://github.com/emoon/HippoPlayer

j_schultz

Posted 2013-05-12T18:32:00.917

Reputation: 156

1

If you absolutely insist on converting all your files to the same format, I would recommend using Impulse Tracker (IT) files rather an eXtended Module (XM) files. Of all the (oldskool) module formats out there, IT is the one offering the most features. So if you convert an IT to XM you will almost certainly lose some data. To do the conversion, OpenMPT is worth a look. It'll open many different formats and let you save in another format.

That being said, it is a silly idea. There's a reason the different file formats were created in the first place. They are all very different from each other. And considering the amount of work it would be to convert all of your files, you'd spend far less time doing a database system app for the existing different files instead. Chances are that most of your files are already online at ModArchive anyway, which features an online player.

mr_lou

Posted 2013-05-12T18:32:00.917

Reputation: 141

+1 for the archive link, but - are the formats really so different from each other than each one has features the others don't, preventing a trivial lossless conversion to a common format? Specifically IT? – einpoklum – 2018-04-15T07:42:20.327

Yes, each format has features the others don't. To my knowledge, IT is the best one of them all, and you should theoretically be able to convert MOD, S3M, XM and others to IT without losing anything. (Not SID though. That's something different). – mr_lou – 2018-04-15T11:16:36.997

How do your two sentences agree with each other? Don't you lose the information in the missing features? – einpoklum – 2018-04-15T11:17:26.657

As each fileformat was created, something new was added compared to the one that came before. MOD was 8-bit 4-channel only, with a set of commands. XM was 16-bit up to 32 channels, expanding on the commands. IT added even more to that. So you can never convert an IT to anything else without losing something. As I said, as far as I know, IT is the best one of them all, so convert a MOD to IT should be ok. But again: Don't do this. Use ModArchive, or make your own database system. – mr_lou – 2018-04-15T12:44:51.493

See @j_schultz's answer. It seems things are more complex than that, and essentially almost no format conversion is lossless. – einpoklum – 2018-04-15T13:22:40.220

Yes I'm the one who linked him here. And he recommends a database system like I did. – mr_lou – 2018-04-15T13:35:59.803

1

Just got a hunch that the best format would be the "Extended Module" format which is supported by VLC, FastTracker and Milkytracker so that could be good.

Wikipedia points out that "XM is a common format for many chip tunes."

I 'think' tags are supported but I know that you can grab each sample and instrument from the format so if it were me I would look into that.

Wikipedia

Half-Shot

Posted 2013-05-12T18:32:00.917

Reputation: 11

0

http://www.renoise.com/

I'd recommend looking into Renoise which is the next major step (imho) since fast-tracker and XM (which could be more appropriate for you). Renoise is an evolution of mod/xm (in my use of it) but I see that it also supports loading S3M so definitely worth checking out.

MrPras

Posted 2013-05-12T18:32:00.917

Reputation: 16

Renoise is a player, it seems. Does it also have its own format? – einpoklum – 2016-01-26T11:11:20.617