View Issue Details

IDProjectCategoryView StatusLast Update
0001190OpenMPTFile Format Supportpublic2019-01-13 13:37
ReporterRyanBram Assigned To 
PrioritylowSeverityfeatureReproducibilityN/A
Status newResolutionopen 
Summary0001190: FLAC compression for MPTM samples/instruments
Description

Current OpenMPT and libopenmpt has a major feature: OPL3 instrument inside S3M and MPTM.
This feature of course not backward compatible, because older version of OpenMPT doesn't have built in FM engine, yet.
My conclusion is backward compatible is not always necessary if the feature can give benefit for future MPTM format and feature.

OpenMPT already has support for compressed format: MO3. But there are several drawbacks when using MO3:

  1. MO3 is not a standalone format, it is basically an container for several module formats (IT, XM, S3M, MTM, MOD, MPTM), so in order to support MO3, a library/software should support all of those formats;

  2. There are 2 codecs that is used to compress MO3 samples: MP3 and Vorbis. Similar with above, in order to support MO3, a library/software should support both codecs;

  3. Because all of above issues, MO3 isn't as lightweight as it should be, therefore limiting itself to be portable or lightweight format, especially for web application using emscripten version of libopenmpt in low end machine. There are always delay when decoding this format for game music;

  4. Currently the only way to create MO3 is using proprietary software from UN4SEEN. We don't know how much MTPM format will evolve that will makes UN4SEEN MO3 encoder may unusable for converting future MPTM to MO3.

By using FLAC for MPTM, user can get advantages such as:

  1. FLAC is lossless format, so sample compression will have same quality as original;
  2. FLAC is fast. So hopefully it is fast enough to be used for web application using emscripten version of it in low end machine;
  3. MPTM is a standalone format, so support for IT, XM, S3M, MTM, and MOD is not necessary (programmer can make standalone library or software than only support playback MPTM and reduce the size of library);
  4. There are already single file public domain decoder for FLAC (dr_flac) which not contradict with OpenMPT BSD license;
  5. Creating MPTM doesn't need external tool, because it is the native format for OpenMPT.

And in addition to those advantage maybe there are also feature to use LossyWAV commandline binary for reducing FLAC size even further. So OpenMPT can also support lossy FLAC compression beside lossless FLAC without needing additional codecs.

Thanks.

TagsNo tags attached.
Has the bug occurred in previous versions?
Tested code revision (in case you know it)

Relationships

child of 0000865 new Revised MPTM format - idea pool 

Activities

Saga Musix

Saga Musix

2019-01-13 11:12

administrator   ~0003813

  1. MPTM already supports lossless compression (not FLAC though), yielding fairly good compression results
  2. If you absolutely want to use FLAC or any other codec, you can already use external samples

I understand that you want to see OpenMPT as a all-in-one solution to create the smallest possible music. However it is first and foremost a general-purpose tracker, and as such it doesn't make a lot of sense to add explicit integration for tools like LossyWav. If someone really needs this functionality, they can simply run all their samples through that tool.

Issue History

Date Modified Username Field Change
2019-01-13 09:18 RyanBram New Issue
2019-01-13 11:12 Saga Musix Note Added: 0003813
2019-01-13 11:12 Saga Musix Priority normal => low
2019-01-13 13:37 manx Relationship added child of 0000865