Audio/MIDI multitrack recording software
MultitrackStudio
Manual : External MIDI Instruments

External MIDI Instruments

External MIDI Instrument window
External MIDI Instrument window
An External MIDI Instrument sends the track's MIDI data to a MIDI Out device. This can be either a MIDI (or USB) connector, a synth on the soundcard, or a software emulation of such a device.

Patch section

The large display in the Patch section shows the name of the patch. Clicking the Select button lets you select a patch by name. The names are stored in a Patchmap file. The 'hamburger' button menu can be used to select the Patchmap file that corresponds to your MIDI device. Also see the MIDI-CI paragraph below.

Tip: You can use the Up/Down Arrow keys to step through the patches.

The Bank:Prog display indicates the bank (optional) and the program used. The bank/program value can be altered by clicking it. Bank and program are numbers (0..16383 and 0..127 respectively) separated by ':' (for example: 1:2 means Bank 1 and Program 2). The Bank number equals 128 * MSB + LSB, where MSB is CC0 and LSB is CC32. You can type something like MSB:LSB:2 and the bank number will be calculated from the MSB and LSB values. Press Enter to accept the new value, or Esc to cancel the operation.

Channel indicates the MIDI channel being used.

Controls section

The Controls section affects the way the patch sounds.

Detune detunes the patch using Pitch Bend messages. The value is stored in the MIDI file as RPN 1.

Bright, Reverb and Chorus control MIDI controllers 74, 91 an 93 respectively. Some synths (e.g. SoundBlaster Live!) may need to be set up properly in order to respond to controllers 91 and 93 (Reverb and Chorus). Controller 74 (Brightness) may not be supported by your synthesizer.

The MIDI Out Device

A MIDI Out Device can be either a MIDI connector or a synth on the soundcard. MultitrackStudio Pro supports four devices, lower editions supports two MIDI Out devices. To select MIDI Out devices go to the Studio menu's Devices window.

The MIDI In and MIDI Out device are connected by default (messages received on an incoming channel are forwarded to the corresponding outgoing channel). When a software instrument is used in record mode the MIDI In channel being used is disconnected from the MIDI Out channel.

Note: Interconnecting a MIDI In and MIDI Out device creates a loop that will slow down (and ultimately halt) your computer. MultitrackStudio will detect this loop and disconnect the MIDI in and out devices in order to avoid freezing the computer.

Virtual MIDI channels

A MIDI Out Device contains 16 MIDI channels. MIDI Out devices are virtualized by MultitrackStudio, meaning that a single MIDI channel on a MIDI Out device can be used by more than one stream. MultitrackStudio will automatically take care of playing each note using its own stream's patch and controllers. Obviously, this only works if streams using the same MIDI channel don't play notes at the same time.

The following controllers have a default value, and don't need any attention:

  • Modulation (#1)
  • Volume (#7)
  • Pan (#10)
  • Expression (#11)
  • Sustain (#64)
  • Soft (#67)
  • Brightness (#74)
  • Reverb (#91)
  • Chorus (#93)
  • Aftertouch
  • Pitch Bend

All other controllers do not have a default value. If they are used in one stream they should be defined in all other streams using the same channel on the same MIDI Out Device.

MIDI 2.0

'Multi-timbral expression' is used to convert MIDI 2.0 per-note controls to MIDI 1.0. This should work with most MIDI gear, provided it is multitimbral (this means you can play 16 instruments on 16 channels). Like MPE, each notes gets its own MIDI channel. Channels 12..16 and the channel used by the track are used for this purpose, that's 6 channels in total (or 5 if the track uses channel 12 or above). The other channels are available for other tracks.

'Multi-timbral expression' works with per-note pitch bend, brightness, aftertouch and expression. These message are converted to their channel counterparts. 'Multi-timbral expression' will be used automatically when per-note pitch bend, brightness or expression are sent.

MultitrackStudio won't use pitch bend range values exceeding 24 semitones in order to ensure good compatibility. Pitch bend values will be converted automatically if a track uses a higher pitch bend range. If your hardware doesn't support 24 semitones you can set a lower value in the per-note pitch bend editor.

macOS 11 supports MIDI 2.0. 'Multi-timbral expression' won't be used if the connected device uses the MIDI 2.0 protocol.

Tip: to use per-note expression with an MPE keyboard you can use the Keyboard Mapper. Set it up to map per-note aftertouch or per-note brightness to per-note expression.

MIDI-CI

Note: MIDI-CI support is available in the Mac version only.

MIDI-CI is part of MIDI 2.0, it allows a sender to receive information from a receiver.
MultitrackStudio supports MIDI-CI to retrieve program names and controller names from a MIDI Out Device. This obviously only works with devices that support this.

The Patchmap menu, available via the 'hamburger' button, features a "Allow MIDI-CI" option. It reads "Allow MIDI-CI (available)" if program names are actually available. If they are, the MIDI-CI information replaces the selected patchmap automatically. "Allow MIDI-CI" is enabled by default, you can switch it off if you want to use a patchmap file instead.

Note: Currently, MIDI-CI is available for MIDI Out Device 1 only, and for USB MIDI 2.0 class compliant devices only. macOS 14 is required.

Under the hood
The part of MIDI-CI used is called Property Exchange. The ResourceList, ChannelList, ProgramList and ChCtrlList resources are used. MultitrackStudio subscribes to the ChannelList resource, so it gets notified when something changes.