You are here: MusicXML Reference > Score Schema (XSD) > Complex Types > Complex Type: midi-instrument

Complex Type: midi-instrument

Description

The midi-instrument type defines MIDI 1.0 instrument playback. The midi-instrument element can be a part of either the score-instrument element at the start of a part, or the sound element within a part. The id attribute refers to the score-instrument affected by the change.

Derived By

Restricting xs:anyType

Attributes
Name  Type  Required?  Default  Description 
id  xs:IDREF  Yes 
Content Model

Contains elements as defined in the following table.

Component  Type  Occurs  Default  Description 
  1..1 
midi-channel  midi-16  0..1  The midi-channel element specifies a MIDI 1.0 channel number ranging from 1 to 16.
midi-name  xs:string  0..1  The midi-name element corresponds to a ProgramName meta-event within a Standard MIDI File.
midi-bank  midi-16384  0..1  The midi-bank element specified a MIDI 1.0 bank number ranging from 1 to 16,384.
midi-program  midi-128  0..1  The midi-program element specifies a MIDI 1.0 program number ranging from 1 to 128.
midi-unpitched  midi-128  0..1  For unpitched instruments, the midi-unpitched element specifies a MIDI 1.0 note number ranging from 1 to 128. It is usually used with MIDI banks for percussion. Note that MIDI 1.0 note numbers are generally specified from 0 to 127 rather than the 1 to 128 numbering used in this element.
volume  percent  0..1  The volume element value is a percentage of the maximum ranging from 0 to 100, with decimal values allowed. This corresponds to a scaling value for the MIDI 1.0 channel volume controller.
pan  rotation-degrees  0..1  The pan and elevation elements allow placing of sound in a 3-D space relative to the listener. Both are expressed in degrees ranging from -180 to 180. For pan, 0 is straight ahead, -90 is hard left, 90 is hard right, and -180 and 180 are directly behind the listener.
elevation  rotation-degrees  0..1  The elevation and pan elements allow placing of sound in a 3-D space relative to the listener. Both are expressed in degrees ranging from -180 to 180. For elevation, 0 is level with the listener, 90 is directly above, and -90 is directly below.
Referenced By
Definition
<xs:complexType name="midi-instrument">
  <xs:annotation>
    <xs:documentation>The midi-instrument type defines MIDI 1.0 instrument playback. The midi-instrument element can be a part of either the score-instrument element at the start of a part, or the sound element within a part. The id attribute refers to the score-instrument affected by the change.</xs:documentation>
  </xs:annotation>
  <xs:sequence>
    <xs:element name="midi-channel" type="midi-16" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The midi-device type corresponds to the DeviceName meta event in Standard MIDI Files. The optional port attribute is a number from 1 to 16 that can be used with the unofficial MIDI port (or cable) meta event. Unlike the DeviceName meta event, there can be multiple midi-device elements per MusicXML part starting in MusicXML 3.0. The optional id attribute refers to the score-instrument assigned to this device. If missing, the device assignment affects all score-instrument elements in the score-part.</xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="midi-name" type="xs:string" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The midi-name element corresponds to a ProgramName meta-event within a Standard MIDI File.</xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="midi-bank" type="midi-16384" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The midi-bank element specified a MIDI 1.0 bank number ranging from 1 to 16,384.</xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="midi-program" type="midi-128" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The midi-program element specifies a MIDI 1.0 program number ranging from 1 to 128.</xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="midi-unpitched" type="midi-128" minOccurs="0">
      <xs:annotation>
        <xs:documentation>For unpitched instruments, the midi-unpitched element specifies a MIDI 1.0 note number ranging from 1 to 128. It is usually used with MIDI banks for percussion. Note that MIDI 1.0 note numbers are generally specified from 0 to 127 rather than the 1 to 128 numbering used in this element.</xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="volume" type="percent" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The volume element value is a percentage of the maximum ranging from 0 to 100, with decimal values allowed. This corresponds to a scaling value for the MIDI 1.0 channel volume controller.</xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="pan" type="rotation-degrees" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The pan and elevation elements allow placing of sound in a 3-D space relative to the listener. Both are expressed in degrees ranging from -180 to 180. For pan, 0 is straight ahead, -90 is hard left, 90 is hard right, and -180 and 180 are directly behind the listener.</xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="elevation" type="rotation-degrees" minOccurs="0">
      <xs:annotation>
        <xs:documentation>The elevation and pan elements allow placing of sound in a 3-D space relative to the listener. Both are expressed in degrees ranging from -180 to 180. For elevation, 0 is level with the listener, 90 is directly above, and -90 is directly below.</xs:documentation>
      </xs:annotation>
    </xs:element>
  </xs:sequence>
  <xs:attribute name="id" type="xs:IDREF" use="required">
    <xsd:annotation>
      <xsd:documentation>
      </xsd:documentation>
    </xsd:annotation>
  </xs:attribute>
</xs:complexType>

 

MusicXML Documentation Home
Last built 2/20/2015

7007 Winchester Circle, Suite 140

Boulder, CO 80301