Skip to content

Problems converting to format 0? #6

@hadess

Description

@hadess

I want to preface this by saying I know nothing of the SMF/MIDI format (formats?). The end goal is to be able to play d_e1m1.mid from http://www.theparticle.com/midi/doommidi.html on a device that only supports SMF format 0.

I used the current git master on a Linux system, and used timidity++ for playback testing locally.

This is what I tried:

$ ./midicomp d_e1m1-orig.mid > d_e1m1.asc
$ cp d_e1m1.asc d_e1m1.asc.orig
$ vi d_e1m1.asc
[make changes]
$ diff -up d_e1m1.asc.orig d_e1m1.asc
--- d_e1m1.asc.orig	2019-03-18 03:53:15.200143986 +0100
+++ d_e1m1.asc	2019-03-18 03:53:22.893528897 +0100
@@ -1,4 +1,4 @@
-MFile 1 5 89
+MFile 0 5 89
 MTrk
 0 Meta Copyright "QMUS2MID (C) S.BACQUET"
 0 KeySig 0 major
$ 

The resulting file seems broken, and will play no sound and stop after 3 seconds. Would I need to do anything else? Are there inherent incompatibilities between the formats? If so, could midicomp warn about using features that would not work in the defined format when compiling?

Here are the test files and the intermediary files, to compare with your build, just in case:
midicomp-test.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions