手機(jī)版 | 網(wǎng)站導(dǎo)航
觀察家網(wǎng) > 宏觀 >

mid格式轉(zhuǎn)換器 mid格式

互聯(lián)網(wǎng) | 2023-08-01 01:24:20

1、1 總觀一個(gè)mid文件主要包括兩部分,標(biāo)頭數(shù)據(jù)和音軌數(shù)據(jù)。

2、簡(jiǎn)介的第二部分介紹標(biāo)頭數(shù)據(jù),第三部分介紹音軌數(shù)據(jù)。


(相關(guān)資料圖)

3、mid文件包含僅一個(gè)標(biāo)頭數(shù)據(jù)來(lái)描述文件格式等,和任意數(shù)量的音軌數(shù)據(jù)。

4、一個(gè)音軌可以被理解為多聲道磁帶的磁軌你可以指定一個(gè)音軌為一個(gè)聲音,一段填充空白,一個(gè)樂(lè)器或你希望的什么東西。

5、2 標(biāo)頭數(shù)據(jù)標(biāo)頭數(shù)據(jù)出現(xiàn)在文件的開頭,描述文件的三個(gè)部分。

6、標(biāo)頭數(shù)據(jù)總向這樣:4D 54 68 64 00 00 00 06 ff ff nn nn dd dd前4比特等價(jià)于ASCII字符“MThd”。

7、在這4比特頭標(biāo)簽之后,總是00 00 00 06,因?yàn)轭^信息總是六比特。

8、(譯者按:這六比特頭信息是4D 54 68 64 00 00,最后兩比特用0填充。

9、之后是的00 06而不是06,是因?yàn)檎妥兞恳純蓚€(gè)字節(jié)。

10、這就是數(shù)字6前面多出來(lái)一個(gè)字節(jié)的原因。

11、下同。

12、)ff ff是文件類型,一共有3種類型:0 - 單音軌1 - 多音軌,同步音軌2 - 多音軌,異步音軌單音軌,顧名思義,只有一條音軌。

13、同步多音軌是說(shuō)所有的音軌并行播放,通俗地說(shuō),同時(shí)開始播放,這樣可以在音樂(lè)中代表不同的聲部。

14、異步多音軌不一定在音樂(lè)開始時(shí)播放。

15、它們可以完全異步。

16、nn nn是mid文件的音軌數(shù)量。

17、dd dd是每個(gè)四分音占用的時(shí)間片(這個(gè)以后再詳細(xì)說(shuō)明)。

18、(譯者按:這兩個(gè)比特越大,音樂(lè)節(jié)奏越快。

19、)3 音軌數(shù)據(jù)標(biāo)頭數(shù)據(jù)之后,文件剩下的部分是音軌數(shù)據(jù)。

20、每個(gè)音軌都有一個(gè)標(biāo)頭,和你需要的數(shù)個(gè)命令。

21、就像文件的標(biāo)頭數(shù)據(jù),音軌標(biāo)頭是這樣的:4d 54 72 6b xx xx xx xx這里的前4比特等價(jià)于ASCII字符的“MTrk”。

22、之后的4個(gè)字節(jié)說(shuō)明了這個(gè)音軌長(zhǎng)度,音軌字節(jié)數(shù)(不包括音軌標(biāo)頭)。

23、標(biāo)頭之后的是midi事件。

24、這些事件實(shí)際上是送向midi合成器接口的數(shù)據(jù)和一個(gè)附加數(shù)據(jù):時(shí)間片。

25、時(shí)間片表示經(jīng)過(guò)多少tick之后事件開始被運(yùn)行。

26、每四分音之后的時(shí)間片被預(yù)先定義在標(biāo)頭數(shù)據(jù)里。

27、這里的時(shí)間片是可變長(zhǎng)度的編碼數(shù)據(jù)。

28、這種格式盡管有些混亂,卻可以使大數(shù)字使用隨意的字節(jié)數(shù),不用浪費(fèi)被填成0的字節(jié)。

29、這些數(shù)被轉(zhuǎn)換為7比特的字節(jié),每個(gè)字節(jié)最特殊的最高有效位(MSB),除了數(shù)字的末字節(jié)是0外,其他字節(jié)是1。

30、這樣,讀取數(shù)字每次讀一字節(jié),當(dāng)你看到最高有效位是0時(shí),你就會(huì)知道這是數(shù)字的最后一個(gè)字節(jié)。

31、根據(jù)mid規(guī)格,整個(gè)時(shí)間片最多占4字節(jié)。

32、時(shí)間片之后是mid事件,每個(gè)mid事件(除了運(yùn)行事件)有一個(gè)最高位是1的命令字節(jié)(字節(jié)數(shù)值>=128)附錄列表A是大部分命令。

33、每個(gè)命令有不同的參數(shù)和長(zhǎng)度,但命令后的數(shù)據(jù)必須是最高位為0的字節(jié)(字節(jié)數(shù)值)。

34、以上規(guī)則有一個(gè)例外,是meta事件,它可以包含最高位是1的數(shù)據(jù)字節(jié)。

35、然而,meta事件要求有一個(gè)長(zhǎng)度參數(shù),這樣能減輕你的困惑。

36、一個(gè)可能帶來(lái)混亂的細(xì)節(jié)(subtlety)是運(yùn)行模式。

37、實(shí)際上這里是mid命令被疏忽,最近的mid命令發(fā)行物被假設(shè)的地方。

38、這意味著mid事件可以由時(shí)間片和和參數(shù)構(gòu)成,這參數(shù)會(huì)轉(zhuǎn)到可能存在的命令。

39、4 總結(jié)如果這些解釋只能增加本文的混亂,那么附錄的例子可能使本文清晰一些。

本文到此分享完畢,希望對(duì)大家有所幫助。

標(biāo)簽:

  • 標(biāo)簽:中國(guó)觀察家網(wǎng),商業(yè)門戶網(wǎng)站,新聞,專題,財(cái)經(jīng),新媒體,焦點(diǎn),排行,教育,熱點(diǎn),行業(yè),消費(fèi),互聯(lián)網(wǎng),科技,國(guó)際,文化,時(shí)事,社會(huì),國(guó)內(nèi),健康,產(chǎn)業(yè)資訊,房產(chǎn),體育。

相關(guān)推薦