📄 readme.mts
字号:
======================================================================MIDI Tuning Standard summary======================================================================Besides GS/XG scale tuning which adjusts the pitch of 12 tones in anoctave individually, TiMidity++ supports MIDI Tuning Standard inUniversal SysEx. MIDI Tuning Standard has the following advantagescompared with GS/XG scale tuning: - Support for microtonal sound other than 12 tones - The pitch can be adjusted in 1/100 cent or less accuracy - Temperaments can be rationally setup based on the tonalityFor details, please refer to the recommended practice.(1) Bulk Tuning Dump Request (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 00 tt F7F0 7E Universal Non-Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"00 sub-ID#2 = "bulk tuning dump request (Non Real-Time)"tt tuning program number (0 - 127)F7 EOX----------------------------------------------------------------------(2) Bulk Tuning Dump (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 01 tt <tuning name> [xx yy zz] ... chksum F7F0 7E Universal Non-Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"01 sub-ID#2 = "bulk tuning dump (Non Real-Time)"tt tuning program number (0 - 127)<tuning name> 16 ASCII characters[xx yy zz] frequency data for one note (repeated 128 times)chksum checksum (XOR of all bytes excluding F0, F7, and chksum)F7 EOX----------------------------------------------------------------------(3) Single Note Tuning Change (Real-Time)----------------------------------------------------------------------F0 7F <device ID> 08 02 tt ll [kk xx yy zz] F7F0 7F Universal Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"02 sub-ID#2 = "single note tuning change (Real-Time)"tt tuning program number (0 - 127)ll number of changes (1 change = 1 set of [kk xx yy zz])[kk MIDI key number xx yy zz] frequency data for that key (repeated 'll' number of times)F7 EOX----------------------------------------------------------------------(4) Bulk Tuning Dump Request (Bank) (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 03 bb tt F7F0 7E Universal Non-Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI tuning standard"03 sub-ID#2 = "bulk tuning dump request (Bank) (Non Real-Time)"bb tuning bank number (0 - 127) (described as 1-128 in MIDI Tuning Specification)tt tuning program number (0 - 127)F7 EOX----------------------------------------------------------------------(5) Key-Based Tuning Dump (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 04 bb tt <tuning name> [xx yy zz] ... chksum F7F0 7E Universal Non-Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI tuning standard"04 sub-ID#2 = "key-based tuning dump (Non Real-Time)"bb tuning bank number (0 - 127) (described as 1-128 in MIDI Tuning Specification)tt tuning program number (0 - 127)<tuning name> 16 ASCII characters[xx yy zz] frequency data for one note (repeated 128 times)chksum checksum (XOR of all bytes excluding F0, F7, and chksum)F7 EOX----------------------------------------------------------------------(6) Scale/Octave Tuning Dump 1-Byte Form (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 05 bb tt <tuning name> [xx] ... chksum F7F0 7E Universal Non-Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI tuning standard"05 sub-ID#2 = "scale/octave tuning dump 1-byte form (Non Real-Time)"bb tuning bank number (0 - 127) (described as 1-128 in MIDI Tuning Specification)tt tuning program number (0 - 127)<tuning name> 16 ASCII characters[xx] frequency data for C,C#,... B (12 bytes total) 00H means -64 Cent 40H means +/- 0 Cent 7FH means +63 Centchksum checksum (XOR of all bytes excluding F0, F7, and chksum)F7 EOX----------------------------------------------------------------------(7) Scale/Octave Tuning Dump 2-Byte Form (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 06 bb tt <tuning name> [xx yy] ... chksum F7F0 7E Universal Non-Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI tuning standard"06 sub-ID#2 = "scale/octave tuning dump 2-byte form (Non Real-Time)"bb tuning bank number (0 - 127) (described as 1-128 in MIDI Tuning Specification)tt tuning program number (0 - 127)<tuning name> 16 ASCII characters[xx yy] frequency data for C,C#,... B (24 bytes total) 00H 00H means -100 cents (8,192 steps of .012207 cents) 40H 00H means 0 cents (equal temperament) 7FH 7FH means +100 cents (8,191 steps of .012207 cents)chksum checksum (XOR of all bytes excluding F0, F7, and chksum)F7 EOX----------------------------------------------------------------------(8) Single Note Tuning Change (Bank) (Real-Time)----------------------------------------------------------------------F0 7F <device ID> 08 07 bb tt ll [kk xx yy zz] ... F7F0 7F Universal Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI tuning standard"07 sub-ID#2 = "single note tuning change (Bank) (Real-Time)"bb tuning bank number (0 - 127) (described as 1-128 in MIDI Tuning Specification)tt tuning program number (0 - 127)ll number of changes (1 change = 1 set of [kk xx yy zz])[kk MIDI key number xx yy zz] frequency data for that key (repeated 'll' number of times)F7 EOX----------------------------------------------------------------------(9) Single Note Tuning Change (Bank) (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 07 bb tt ll [kk xx yy zz] ... F7F0 7E Universal Non-Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI tuning standard"07 sub-ID#2 = "single note tuning change (Bank) (Non Real-Time)"bb tuning bank number (0 - 127) (described as 1-128 in MIDI Tuning Specification)tt tuning program number (0 - 127)ll number of changes (1 change = 1 set of [kk xx yy zz])[kk MIDI key number xx yy zz] frequency data for that key (repeated 'll'number of times)F7 EOX----------------------------------------------------------------------(10) Scale/Octave Tuning 1-Byte Form (Real-Time)----------------------------------------------------------------------F0 7F <device ID> 08 08 ff gg hh [ss] ... F7F0 7F Universal Real-Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"08 sub-ID#2 = "scale/octave tuning 1-byte form (Real-Time)"ff channel/options byte 1 bits 0 to 1 = channel 15 to 16 bits 2 to 6 = reserved for future expansiongg channel byte 2 - bits 0 to 6 = channel 8 to 14hh channel byte 3 - bits 0 to 6 = channel 1 to 7[ss] 12 byte tuning offset of 12 semitones from C to B 00H means -64 cents 40H means 0 cents (equal temperament) 7FH means +63 centsF7 EOX----------------------------------------------------------------------(11) Scale/Octave Tuning 1-Byte Form (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 08 ff gg hh [ss] ... F7F0 7E Universal Non Real-Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"08 sub-ID#2 = "scale/octave tuning 1-byte form (Non Real-Time)"ff channel/options byte 1 bits 0 to 1 = channel 15 to 16 bits 2 to 6 = reserved for future expansiongg channel byte 2 - bits 0 to 6 = channel 8 to 14hh channel byte 3 - bits 0 to 6 = channel 1 to 7[ss] 12 byte tuning offset of 12 semitones from C to B 00H means -64 cents 40H means 0 cents (equal temperament) 7FH means +63 centsF7 EOX----------------------------------------------------------------------(12) Scale/Octave Tuning 2-Byte Form (Real-Time)----------------------------------------------------------------------F0 7F <device ID> 08 09 ff gg hh [ss tt] ... F7F0 7F Universal Real-Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"09 sub-ID#2 = "scale/octave tuning 2-byte form (Real-Time)"ff channel/options byte 1 bits 0 to 1 = channel 15 to 16 bits 2 to 6 = reserved for future expansiongg channel byte 2 - bits 0 to 6 = channel 8 to 14hh channel byte 3 - bits 0 to 6 = channel 1 to 7[ss tt] 24 byte tuning offset of 2 bytes per semitone from C to B 00H 00H means -100 cents (8,192 steps of .012207 cents) 40H 00H means 0 cents (equal temperament) 7FH 7FH means +100 cents (8,191 steps of .012207 cents)F7 EOX----------------------------------------------------------------------(13) Scale/Octave Tuning 2-Byte Form (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 09 ff gg hh [ss tt] ... F7F0 7E Universal Non Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"09 sub-ID#2 = "scale/octave tuning 2-byte form (Non Real-Time)"ff channel/options byte 1 bits 0 to 1 = channel 15 to 16 bits 2 to 6 = reserved for future expansiongg channel byte 2 - bits 0 to 6 = channel 8 to 14hh channel byte 3 - bits 0 to 6 = channel 1 to 7[ss tt] 24 byte tuning offset of 2 bytes per semitone from C to B 00H 00H means -100 cents (8,192 steps of .012207 cents) 40H 00H means 0 cents (equal temperament) 7FH 7FH means +100 cents (8,191 steps of .012207 cents)F7 EOX----------------------------------------------------------------------(14) Temperament Tonality Control Tuning (Real-Time)----------------------------------------------------------------------F0 7F <device ID> 08 0A sf mi F7F0 7F Universal Real-Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"0A sub-ID#2 = "temperament tonality control tuning (Real-Time)"sf number of sharp/flat (1 byte) 39H means 7 flats 3FH means 1 flat 40H means key of C 41H means 1 sharp 47H means 7 sharpsmi major/minor (1 byte) 00H means major key 01H means minor key 02H means passing major key 03H means passing minor keyF7 EOX----------------------------------------------------------------------(15) Temperament Tonality Control Tuning (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 0A sf mi F7F0 7E Universal Non Real-Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"0A sub-ID#2 = "temperament tonality control tuning (Non Real-Time)"sf number of sharp/flat (1 byte) 39H means 7 flats 3FH means 1 flat 40H means key of C 41H means 1 sharp 47H means 7 sharpsmi major/minor (1 byte) 00H means major key 01H means minor key 02H means passing major key 03H means passing minor keyF7 EOX----------------------------------------------------------------------(16) Temperament Type Control Tuning (Real-Time)----------------------------------------------------------------------F0 7F <device ID> 08 0B ff gg hh tt F7F0 7F Universal Real-Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"0B sub-ID#2 = "temperament type control tuning (Real-Time)"ff channel/options byte 1 bits 0 to 1 = channel 15 to 16 bit 2 = port A/B bits 3 to 6 = reserved for future expansiongg channel byte 2 - bits 0 to 6 = channel 8 to 14hh channel byte 3 - bits 0 to 6 = channel 1 to 7tt temperament type (1 byte) 00H means equal temperament 01H means Pythagoras tuning 02H means mean-tone tuning 03H means pure intonation 40H means user-defined temperament #0 41H means user-defined temperament #1 42H means user-defined temperament #2 43H means user-defined temperament #3F7 EOX----------------------------------------------------------------------(17) Temperament Type Control Tuning (Non Real-Time)----------------------------------------------------------------------F0 7E <device ID> 08 0B ff gg hh tt F7F0 7E Universal Non Real Time SysEx header<device ID> ID of target device (7F = all devices)08 sub-ID#1 = "MIDI Tuning Standard"0B sub-ID#2 = "temperament type control tuning (Non Real-Time)"ff channel/options byte 1 bits 0 to 1 = channel 15 to 16 bit 2 = port A/B bits 3 to 6 = reserved for future expansion
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -