【BLE MIDI】MIDI 文件格式分析 ( FF 58 04 拍号 | 音符开指令 | 音符关指令 | 音轨结束标志 )
文章目錄
- 前言
- 一、FF 58 04 拍號
- 二、音符開指令
- 三、音符關指令
- 四、音軌結束標志
前言
在博客 【BLE MIDI】MIDI 文件格式分析 ( MIDI 文件頭解析 | MIDI 文件頭標識 | MIDI 文件頭長度 | MIDI 文件格式 | MIDI 軌道個數 | 基本時間 ) 分析了 MIDI 文件的前 0 ~ 13 個字節 ;
4D 54 68 64 00 00 00 06 00 00 00 01 01 E0在博客 【BLE MIDI】MIDI 文件格式分析 ( MIDI 軌道分析 | MIDI 軌道頭 | MIDI 軌道長度 | delta-time 間隔 ) 中 , 分析了軌道中的如下選中信息 ,
4D 54 72 6B 00 00 00 25 00【BLE MIDI】MIDI 文件格式分析 ( FF 03 軌道名稱 | FF 51 03 四分音符時長 ) 博客分析了 軌道名稱 , 以及 四分音符時長 指令 ;
一、FF 58 04 拍號
FF 58 04 04 02 18 08 : 39 ~ 45 字節 , 拍子記號 ;
FF 58 04 是拍子記號的標志 ;
04 02 18 08 分別表示 :
- 04 : 拍子記號的分子 ;
- 02 : 拍子記號分母標志 , 這里的值是 2 的次冪值 , 如當前設置的值是 2 , 則拍子記號的分母是 22=42^2 = 422=4 , 分母是 4 ;
- 18 : 每個 MIDI 時鐘包含的 tick 數 ; 標準值是 24 , 一般不會改變 ;
- 08 : 每 24 個 MIDI 時鐘 , 對應的 32 分音符的數目 ; 標準值是 8 , 一般不會改變 ;
后面的 00 是 delta-time , 與下一個 midi 事件間隔的 tick 數 ;
delta-time 參考 【BLE MIDI】MIDI 文件格式分析 ( MIDI 軌道分析 | MIDI 軌道頭 | MIDI 軌道長度 | delta-time 間隔 ) 四、delta-time 間隔 博客章節 ;
二、音符開指令
90 3C 64 : 47 ~ 49 字節 , 音符開指令 ;
90 是音符開標志 ;
3C 是音符音高 60 , 取值范圍 0 ~ 127 ;
64 是音符的力度值 , 取值范圍 0 ~ 127 ;
后面的 8E 7E 是 delta-time , 與后面的指令間隔的 tick 數 ;
delta-time 參考 【BLE MIDI】MIDI 文件格式分析 ( MIDI 軌道分析 | MIDI 軌道頭 | MIDI 軌道長度 | delta-time 間隔 ) 四、delta-time 間隔 博客章節 ;
三、音符關指令
80 3C 40 : 52 ~ 54 字節 , 音符關指令 ;
80 是音符開標志 ;
3C 是音符音高 60 , 取值范圍 0 ~ 127 ;
40 是音符的力度值 , 取值范圍 0 ~ 127 ;
后面的 00 是 delta-time , 與后面的指令間隔的 tick 數 ;
delta-time 參考 【BLE MIDI】MIDI 文件格式分析 ( MIDI 軌道分析 | MIDI 軌道頭 | MIDI 軌道長度 | delta-time 間隔 ) 四、delta-time 間隔 博客章節 ;
四、音軌結束標志
FF 2F 00 : 56 ~ 58 字節 , 音軌結束標識 ;
至此 , 整個 midi 文件解析完畢 ;
總結
以上是生活随笔為你收集整理的【BLE MIDI】MIDI 文件格式分析 ( FF 58 04 拍号 | 音符开指令 | 音符关指令 | 音轨结束标志 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【BLE MIDI】MIDI 文件格式分
- 下一篇: 【开发环境】戴尔电脑系统重装 ( 下载