Question

I am making a simple game in order to learn a new language. I am in the process of collecting some music for the game and would like to use the MIDI format so that I can control the flow of the track (i.e., I would like to have an introduction that only plays once and does not play again when the song loops.)

I am having a tough time finding information on how to modify existing MIDI files so that they may send a control change signal to the synthesizer. Has anyone had experience with this?


I think that I should have been more clear with my original question. I am using an existing game engine which takes care of playing the music. I am under the impression that this control change value must be embedded directly in the MIDI file itself as I have no control over the synthesizer. From the manual:

MIDI files are played via the DirectMusic Synthesizer. If a BGM MIDI file contains the control change value 111, that value is recognized as where the song will start repeating after it reaches the end.

I wish I could do it programmatically. I suppose what I am after here is some sort of editor which will allow me to modify the MIDI file that I already have.

Was it helpful?

Solution

DirectMusicProducer is probably your best free option if you are playing using DirectMusic. I don't believe the MIDI record feature will include control changes, but your engine may support playing segment files which are much more flexible.

The only MIDI sequencer I use cost around $300 (USD) about 10 years ago (and no longer appears to exist), but I am not aware of any good quality free MIDI file sequencers. (Note that "MIDI editor" is probably different to "MIDI file editor" or "MIDI sequencer")

OTHER TIPS

Sounds like what you really want is a midi editor

try looking in the Midi 1.0 spec

Here's a table of the control change messages though it looks like you're looking for a way to do this in software. yes?

you could try just sending it as raw midi data (ie. the messages on that table)

looking over your question again... my answer is not that useful...

what I would do if I were you is separate the introduction into it's own file and then you have a file containing just what you want to loop.

you could also look at the spec for the Standard Midi File format (SMF)

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top