midi.h
上传用户:fs3633
上传日期:2021-05-14
资源大小:909k
文件大小:4k
源码类别:

midi

开发平台:

Visual C++

  1. #ifndef MIDI_H
  2. #define MIDI_H
  3. /*******************************************************************************
  4.  * midi.h - Common MIDI declarations.
  5.  *
  6.  * Copyright (C) 2002 Leslie Sanford
  7.  *
  8.  * This library is free software; you can redistribute it and/or
  9.  * modify it under the terms of the GNU Lesser General Public
  10.  * License as published by the Free Software Foundation; either
  11.  * version 2.1 of the License, or (at your option) any later version.
  12.  *
  13.  * This library is distributed in the hope that it will be useful,
  14.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  16.  * Lesser General Public License for more details.
  17.  *
  18.  * You should have received a copy of the GNU Lesser General Public
  19.  * License along with this library; if not, write to the Free Software
  20.  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  21.  *
  22.  * Contact: jabberdabber@hotmail.com
  23.  *
  24.  * Last modified: 09/22/2003
  25.  ******************************************************************************/
  26. namespace midi
  27. {
  28.     //----------------------------------------------------------------
  29.     // Constants
  30.     //----------------------------------------------------------------
  31.     // Status byte for Active Sensing message
  32.     //一個活躍的消息
  33.     const unsigned char ACTIVE_SENSING = 0xFE;
  34.     // Command value for Channel Pressure (Aftertouch)
  35.     //一個頻道的命令值
  36.     const unsigned char CHANNEL_PRESSURE = 0xD0;
  37.     // Status byte for Continue message
  38.     //一個延續的消息的標誌位
  39.     const unsigned char CONTINUE = 0xFB;
  40.     // Command value for Control Change message
  41.     //改變控件消息的命令值
  42.     const unsigned char CONTROL_CHANGE = 0xB0;
  43.     // Status byte for System Exclusive message
  44.     //系統唯一消息的標誌位
  45.     const unsigned char SYSTEM_EXCLUSIVE = 0xF0;
  46.     // Status byte for End of System Exclusive message
  47.     //一個系統消息結束的唯一標誌位
  48.     const unsigned char END_OF_EXCLUSIVE = 0xF7;
  49.     // Status byte for MIDI Time Code Quarter Fram message
  50.     const unsigned char MIDI_TIME_CODE = 0xF1;
  51.     // Command value for Note Off message
  52.     //音符關閉的命令值
  53.     const unsigned char NOTE_OFF = 0x80;
  54.     // Command value for Note On message
  55.     //音符開啟的命令值
  56.     const unsigned char NOTE_ON = 0x90;
  57.     // Command value for Pitch Bend message
  58.     const unsigned char PITCH_BEND = 0xE0;
  59.     // Command value for Polyphonic Key Pressure (Aftertouch)
  60.     //被壓下去的鍵的聲音的值
  61.     const unsigned char POLY_PRESSURE = 0xA0;
  62.     // Command value for Program Change message
  63.     //改變程序消息的值
  64.     const unsigned char PROGRAM_CHANGE = 0xC0;
  65.     
  66.     // Status byte for Song Position Pointer message
  67.     const unsigned char SONG_POSITION_POINTER = 0xF2;
  68.     // Status byte for MIDI Song Select message
  69.     //選擇MIDI音樂的標示位
  70.     const unsigned char SONG_SELECT = 0xF3;
  71.     // Status byte for Start message
  72.     //開始的消息
  73.     const unsigned char START = 0xFA;
  74.     // Status byte for Stop message
  75.     //停止的消息
  76.     const unsigned char STOP = 0xFC;
  77.     // Status byte for System Reset message
  78.     //重置系統的消息
  79.     const unsigned char SYSTEM_RESET = 0xFF;
  80.     // Status byte for Timing Clock message
  81.     //時間定時器的消息
  82.     const unsigned char TIMING_CLOCK = 0xF8;
  83.     // Status byte for Tune Request message
  84.     //調音請求的消息
  85.     const unsigned char TUNE_REQUEST = 0xF6;
  86.     //
  87.     // For unpacking and packing short messages
  88.     //取出和包裝的短消息
  89.     const unsigned char SHORT_MSG_MASK = 15;
  90.     const unsigned char SHORT_MSG_SHIFT = 8;
  91. }
  92. #endif