SoftStep Tutorial #6: Making a MIDI File

It is easy to save a SoftStep composition as a MIDI file. The basic idea is that you create some number of Snapshots, then you arrange the Snapshots to play in whatever order you like, for whatever duration you like. Once you have this arranged to your satisfaction, you just click on the record button to record to a MIDI file.

To make it even easier getting started, you don't even need to set up a play list. There is always a default play list that consists of the current AutoSave snapshot. So, really, all you have to do is punch the record button. This is where we will start....

Make a simple sound

We are going for maximum simple here, so when you record and play back, you can track exactly what is going on.

Create a Voice, a Clock, a Counter, and a Slide24 sequencer.

These are all the modules you will need for this tutorial. See How it looks for a picture of them.

Connect the clock input of the Voice module to the Clock output, the Note input of the Voice to the Slide24 output, the clock input of the Counter to the Clock output, the stage input of the Slide24 to the Counter output.

(Clock > Voice clock input) (Clock > Counter > Slide24 > Voice Note input)

Set the Voice Transp to 60, and the Clock Dur input to 1 (quarter notes). You should hear a monotone quarter note beat.

We are going to quickly fill the Slider24 with a chromatic scale up and down. To make things easier, first adjust the Range knob of the Slide24 to 12. Now click on the Fill button of the Slide24 module to activate the Fill utility. Click on Count in the Source section. You will get a ramp going from 0 to 12, the range limit, then back down to 1.

There will be a wrap around burble when the Counter wraps from 127 - 0 because 128 is not evenly divisible by 24. So fix this by setting the Counter Limit input to 23.

The first MIDI recording

At this point you should be hearing the up down scale. Monotonous, but you should be able to see and hear exactly what is going on. We are going to record this free running first, then we are going to record just a single scale run to demonstrate how to exactly control what gets recorded.

First, we record the free running sequence. Click on the Composer icon in the Tool Bar. The Composer utility pops up.


Unlike the image here, you will only see one entry in either side, the automatically created AutoSave Snapshot. You can hide the play list boxes, which you are not using at the moment, by clicking on the button to the lower right of the big measures readout, that has a picture of a book. Book opened, book closed.

Click on the Record button, just under the LED graphic. The red dot will turn bright red, but nothing else happens. Now click on the Play button just under the Record button. The LED directly over the Record button turns on, indicating that recording is in progress. Notice that the big readout counts down from 8. Shortly after it gets to 1, the LED goes off, the Play button pops up, and the Stop button clicks in: the recording is finished. You have just recorded 8 measures of the scale - which is only 6 measures long (24 quarter notes), so the scale would have been recorded just short of 1 1/2 cycles.

At this stage, the MIDI File has been recorded to a temporary file. You can save the file in any directory by clicking on the Save button, just to the right of the Record button. This action simply copies the temporary file into the location of your choice.

Listening to the MIDI Recording

After you have recorded a MIDI file, you can audition it on a MIDI player outside of SoftStep. The topmost of the three long buttons just above the Exit button will launch your default MIDI Player. On most Windows systems, this will be the Microsoft Media Player, but whatever you have set to be the default player (the one that plays when you click on a MIDI file name), is the one that is launched. While the MIDI file player is running, SoftStep will disappear. Once you exit the MIDI file player, SoftStep pops back up as it was before.

Setting Number of Measures to Record

After SoftStep comes back on the modules will start processing again, and you will hear sound. We want to record just the one up/down sequence. This is six measures. So enter 6 into the text box to the right of the record LED, then click on the button to its right. The large blue measure readout will change to 6, as will the highlighted Msrs column in the playlist box.

Now click the Record button again, then the Play button. Let it record the cycle, and when the recording LED goes out, click on the top of the 3 audition buttons as before. You should hear exactly 24 notes, 6 measures of quarter notes. Exit the MIDI player to return to SoftStep.

Controlling Modules with the Play Button

Just recording the modules while they are running works well enough, because modules that need to, know to reset themselves just before recording. Modules such as the Count module, which resets to 0; and the MIDI Voice module, which sends out its Pan, etc. data to be recorded. However sometimes it would be handy to be able to have the modules start up exactly when the Play button is pressed, and stop when Stop or Pause is pressed, or when the recording is finished.

You can do this by using the Control Flags, which is in the module connection list, following the number constants. The most useful of these is Stop which is 127 when the Play button is not pressed, 0 when it is. Connect the Clock module Hold input to the Stop flag. To select Stop, click on the connection for Hold and select ~Stop. The Clock will stop. Now do the same with the Reset input of the Counter module, and it will reset to 0.

Now click on the Record button, then the Play button. You will hear exactly 24 notes play and be recorded. When the recording stops, click on the top of the 3 audition buttons as before. You should hear the exact same notes. Exit the MIDI player to return to SoftStep.

Creating a Play List

If you have a number of Snapshots saved, you can sequence them with the play list editor part of the Composer utility. We will do this next, but first we need to create a couple snapshots to work with.

First, dismiss the Composer utility by clicking on the Exit button. Now type a name, such as "Up/Down," in the Snapshot text box on the Tool Bar then click on the camera icon to take the Snap. It should now read "001 Up/Down".

Make one more riff: Click on the Slide24 module's Fill button. Click on the Invert button in the Modify group. The Slide24 values will become a valley instead of a peak. Type another name in the Snapshot text box - "Down/Up" - and click on the Snapshot camera icon. It should now read "002 Down/Up."

Bring the Composer utility back on line by clicking on its button in the Tool Bar. We need the full display now, so if you had it closed, click on the book button to open it, so you can create a play list.

Remember, the image above is just a sample image, and the text examples are different from what you are working with.

The text box on the left, labeled "Snapshots," will have the three items in your Snapshot list, "AutoSave," "Up/Down," and "Down/Up." This list is always an exact copy of the drop down Snapshot list on the Tool Bar, and it represents the source Snapshots from which you build your play list. The rightmost box is the play list. This is where you add, delete, and rearrange those Snapshots into a composition.

For this example, you will build an opus of 3 sections: 6 measures of "Up/Down," 12 of "Down/Up," and 3 more of "Up/Down".

First, click on the 2nd line in the left, Snapshot, box. It should read "001 Up/Down." The line will highlight and it will become the current Snapshot. Click on the Add button, topmost in the far right column of buttons. This will add the Snapshot to the play list. Next, click on the 3rd line of the left box , "002 Down/Up," then click on Add again (you can also just double click on the source line - it does the same thing). And, finally, select "001 Up/Down" again and put it into the play list.

Your play list should now have 4 lines. "AutoSave," that was there originally, "Up/Down, " "Down/Up," and "Up/Down" again. Delete "AutoSave" by clicking on it to highlight it (it's probably highlighted already), then clicking on the Delete button, 3rd from top in the edit buttons column.

Take a moment to look at the entry columns in the play list box. First column, labeled "Step" is the sequence step and it is always in order, 000 to whatever. This is the order in which the play list gets played. Next, is a 1 character column with "B" at the start, and "E" at the end. In this tutorial, we will begin at the first entry and end at the last, as is already set. But you can changes these to start somewhere other than the 1st, and/or end somewhere short of the last. The third column is labeled "Msrs," - Measures - and has the number of measures each entry will play. This is likely set to 8, the default. You will want to change that in a moment. Lastly, is the Snapshot number and name that will be played for each step.

Click on the first play list item to highlight it, and 6 in the text box below the big blue measures read out, as you did before. Click on the button to the right of the text box to enter it. You will see that the Msrs column in the play list now is set to 6. Set the next entry to 12, and the last to 3. That does it. You are now ready to record your piece to a MIDI file.

Before recording, audition the piece by first clicking on the Stop button (so it will play from the start if it was in Pause), and then the Play button. You should hear the first sequence played once (6 msrs), then a switch to the 2nd sequence which is played twice (12 msrs), then back to the 1st sequence which is played halfway (3 msrs).

If it didn't happen this way - 6 measures of "Up/Down," 12 of "Down/Up," and 3 of "Up/Down" again - try clicking on Play again. If it still is not right, back up and review what you have done so far

Assuming it did play as expected, you can now record to MIDI. Same drill as before: Click on Record, then Play. The Recording LED goes on. When the recording stops, click on the Save button to give it a name (otherwise, the file is just a temporary file that will be overwritten next time you record.). You will get a standard Windows File Save dialog box. Give the file a name and save it somewhere that makes sense to you. Then click on the top of the 3 audition buttons as before to hear how the finished MIDI file sounds outside of SoftStep. That's it. Your MIDI file is now independent of SoftStep and can be played on a web page, inserted into a standard notation sequencer, or just played on any standard MIDI file player.

How it looks:

SoftStep is Copyright © 1999-2004 by John Dunn and Algorithmic Arts. All Rights Reserved.