Re: [LAU] converting MIDI file format 0 to 1?

From: Ken Restivo <ken@email-addr-hidden>
Date: Tue Sep 11 2007 - 04:23:09 EEST

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Mon, Sep 10, 2007 at 11:55:50AM +0200, Alexandre Ratchov wrote:
> On Fri, Sep 07, 2007 at 11:29:29PM -0400, Paul Coccoli wrote:
> > Does anyone know how to convert a MIDI file from format 0 to 1?
> > KeyKit produces the former, seq24 can apparently read the latter. I
> > want to get sequences I generate in KeyKit into seq24.
> >
> > A command line tool would be best, but any suggestions are welcome.
>
> hi,
>
> you can use midish. Just import the format 0 midi file and then
> export it. This will generate a format 1 midi file with one "tempo
> track" and one track per channel. Example:
>
> $ rmidish
> send EOF character (control-D) to quit
> 1> songimportsmf "sample.mid"
> 2> songexportsmf "sample-fmt1.mid"
> 3>
>
> If you want to convert a lot of midi files then you can embed these
> commands in a small shell script... let me know if you have
> problems with it.
>

Thanks! That works, although it creates 16 channels even if there is only data in 1 channel. It looks from the docs like I can might be able to use filters to solve this.

Holy crap, I'd never heard of midish, but it looks like it'll do all kinds of stuff I was going to write PD or Python (rtmidi) code to do, i.e filtering, splitting, mapping, etc.

Nice, a MIDI shell that I can run from inside emacs. Very useful.

I *love* this linux-audio list. Thank you all so much for being around, and being so helpful.

- -ken
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFG5e39e8HF+6xeOIcRAoAUAKDBOsxpkfyHqJUeiFBGlVBfDvPTPwCdHVwL
PmAwtboWPzwwS00o4MM1cJg=
=Dlc0
-----END PGP SIGNATURE-----
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/mailman/listinfo.cgi/linux-audio-user
Received on Wed Sep 12 20:15:02 2007

This archive was generated by hypermail 2.1.8 : Wed Sep 12 2007 - 20:15:02 EEST