八、音樂 (Music)
 
    1. 音樂的表示法 (Music representation)

    2.  
      1. 標準音樂描述語言 (SMDL, Standard Music Description Language):
      2. 標準音樂描語言是由”音樂資訊處理標準”(MIPS) 協會制定的,制定的目的就是為了訂定一個音樂編碼的規格。在這個描述語言中加入一些例如作曲者或是曲名等等的資訊,另外這個規格定義了一些和音樂有關的元件。

         

      3. 音樂樂器數位界面 (MIDI, Musical Instrument Digital Interface):
      4. MIDI的制定解決了電子樂器之間溝通的問題,它是一種音樂訊息的規格,MIDI 1.0規格定義了:

         

          1. 標準MIDI的三個輸出入埠 (MIDI-IN, MIDI-OUT, MIDI-THRU) 及電子訊號的輸出入迴路規格。
          2. MIDI訊息 (Messages) 的基本模式是由三個位元組所組成,包含一個狀態位元組 (Status Byte) 和二個資料位元組 (Data Bytes)。
          3. 每一種型式 MIDI Messages 的格式及基本內容。
          4. 16 個MIDI頻道。
          5. 傳輸速率31.25 K 鮑率 (Baud, or bps) 。
           
        MIDI的輸出入埠如下圖所示
           
        MIDI-IN接收由其他MIDI裝置所送的MIDI訊號,MIDI-OUT送出由本機所產生的MIDI訊號,至於MIDI-THRU其實是和MIDI-IN串連在一起的,因此它會送出由MIDI-IN所接收的所有MIDI訊息。如果我們把主控鍵盤樂器的MIDI-OUT接到第二台鍵盤,則我們彈奏的音會由第二台鍵盤上發出。如果是接到電腦的MIDI介面卡的MIDI-IN上,則這些MIDI訊息就可以錄到電腦裡儲存起來。我們任何的彈奏動作都會產生MIDI訊息,例如彈一個鍵叫做Note-On,放掉一個鍵則又發出Note-Off的MIDI命令。詳細連接請看下圖:
           
           
        MIDI訊息是由三個位元(Byte)以31.25K鮑率的速度來傳送,狀態位元(status byte)指明訊息的用途,剩下的資料位元組(data bytes)則是指定訊息的變化值。舉例來說,當我們在電子合成器上彈奏任何一個音時 (假設彈奏中央C (Do),其Note Number為十六進位的3C,而力度為十六進位的64),合成器的MIDI-OUT埠會送出三個位元組的MIDI訊息,它們分別是(90,3C,64),其中第一個位元組是MIDI命令,代表這個訊息是要求發一個聲音,第二個位元組代表彈奏的音名代碼,第三個位元組則記錄著這個音的力度,力度愈強,所表示的值越大,音量相對地愈大:
           

          90:代表MIDI命令 "開始發音 (Note On) "。

          3C:代表被彈下的鍵號 (Note Number) ,3C即代表中央C。

          64:表按鍵力度 (Velocity) 。力度的範圍為0∼127,若鍵盤樂器無法感受彈鍵力量大小,則送出一個平均值 (100) 。
           
           

        介紹 MIDI訊息前先簡單介紹一些MIDI的基本觀念:
           
        1. 頻道(Channel):
        2. MIDI可以有16個MIDI頻道,大部分的MIDI訊息都有它所在頻道號碼的描述,例如Note On的訊息如果在第一個頻道時它的值為90,但如果是在第二個頻道則Note On訊息值會是91。

          因為 1001 00002 => 90h 0000 表示channel 1

          1001 00012 => 91h 0001 表示channel 2

          依此類推。

           

        3. 鍵盤音符號碼(Key number):
        4. 在MIDI規格中每一個音符都有一個規定的音符號碼,共定義了128個按鍵。

           

        5. 控制器(Controller):
        6. 在MIDI中可以改變MIDI裝置操作特性的稱為控制器。舉例來說一般常使用的延長音踏板或是變音滑輪,皆是可以改變原來的效果的控制器。MIDI一共預留了128種控制器的編號,但是並非所有的編號都被使用,這樣做的目的是可以讓新發明的控制器來使用這些號碼。

           

        7. 同時發聲(Polyphony):
        8. 合成器或音樂鍵盤同一時間能彈奏的音符個數,通常目前的合成器都具有同時能發16個音符以上的能力。只能發單一音符的稱為單音(monophonic)。

           

        9. 歌曲(Song):
        10. 儲存在MIDI裝置中錄好的一串MIDI訊息稱為一首歌曲。

           

        11. 編曲器(Sequencer):
        12. 用來編輯、錄製及播放MIDI訊息的一套軟體。
           
           

      5. 補充教材: MIDI 簡介

      6.  
         
    3. 音樂的處理 (Music processing)
    4.  

      市面上有許多MIDI Sequencer,我們利用一套 Midisoft軟體來簡單介紹基本的MIDI編輯、錄音以及放音等功能。

      下圖為Midisoft程式執行時的畫面:

       
      1. 編輯:
      2. 對於MIDI訊息我們可以做複製、刪除、貼上等基本功能,下圖顯示的是我們想將一部份不滿意的音符做刪除的動作,首先要先將欲刪除的部份選擇出來,再執行刪除的指令。
         

         
        我們亦可以在任何地方插入一個MIDI訊號,也就是一個音符。下圖顯示一個插入音符的編輯畫面:
         
         
      1. 即時錄音 (real time recording)
當使用MIDI鍵盤連接時,我們可以使用即時錄音模式來輸入MIDI訊號。當使用者在MIDI鍵盤上按下任何的音符,編曲機會即時將所接收到的MIDI訊息顯示在螢幕上。下圖即為錄音模式時的操作畫面。