迦南詩選的數位化
丁陳漢蓀 3/23/2006
1.
迦南詩選的數位化
小敏的迦南詩選現在已經累積了一千多首,傳唱海內外,是國內及國外教會極大的祝福。
許多教會和團契聚會的時候,沒有鋼琴伴奏,完全靠領唱者帶領。如果音調和節奏不準確,詩歌的情調和意味就不能很完全地為大家體驗。迦南詩選是用簡譜印行的。不是很有經驗的鋼琴家,也不能很輕易地看著簡譜來伴奏。
我在此提出一套很簡單實用的方法,可以將歌曲簡譜改寫為電腦可以處理的文字檔。這些文字檔可以在視窗系統下編譯成為數位音樂的MIDI檔並可演奏。我輸入了27首作為範例。愛好迦南詩選的朋友可以群策群力,一同來將全部迦南詩選輸入電腦,供給海內外基督徒做聚會時的詩歌伴奏。
2. 簡譜旋律的數位化
簡譜也稱數字記譜法,是由7個阿拉伯數字來代表音符,它的發明人是法國的蘇埃蒂道士。1665年,蘇埃蒂寫了一本書,名叫《學習素歌和音樂的新方法》,公佈了他所發明的數字簡譜,稍後又由法國著名的思想家、教育家和文學家盧梭等加工完善,成為一種完整的記譜法。這種記譜法16世紀初步成型於歐洲,但是並不受歐洲音樂家的重視。日本在明治維新後引進,用於推廣音樂教育。中國在廿世紀初由留學日本的音樂家李叔同等引進中國,改進後被普遍採用創作歌曲,大部份的國樂也都用簡譜記錄。
簡譜其實是詩歌數位化的過程最重要的一步。因為音符用數字代表,已經是數位化了。如果將其他的符號稍加修改,就可以完全用電腦處理,並且可以轉譯成為可以播放的MIDI音樂檔案。
MIDI是一種數位化音樂的標準代碼。音樂用MIDI的形式記錄下來,就可以儲存在電腦中,並傳送到相容的音響設備中演奏出來。以前MIDI的音響設備價格昂貴,只有專業的數位音樂家才能裝設使用,所以並不普及。現在的個人電腦的視窗系統就附加了MediaPlayer的應用程式,可以演奏MIDI檔案。所以我們只要能夠將簡譜轉譯為MIDI檔案,迦南詩選數位化的技術問題就解決了。餘下的操作過程,就是將簡譜輸入電腦的工夫了。
我在這裡提供一套程式,可以將簡譜用適當的文字檔格式輸入電腦,然後將此文字檔轉譯成MIDI檔。這些MIDI檔可以收集在一個檔案夾中,用視窗系統的MediaPlayer演奏出來,帶領會眾唱這些詩歌。
要來解釋簡譜的文字檔格式,我先用一個例子。下面圖一是迦南詩選268首”中國的早晨五點鐘”的影印本。
圖一.
中國的早晨五點鐘

下面圖二是簡譜的文字檔。
圖二.
“中國的早晨五點鐘”的文字檔.
: P1
5_ 1 ^ 1 ^ | 1 ^ 1 ^ 1 ^ 2 ^ |
3 . 5 ^ | 1 - |
6_ ^ 1 2 ^ | 2 ^ 3 ^ 6_ |
5_ - 5 - |
hush ;
: P2
6_ 1 1 ^ | 1 6_ |
5 ^ 6 ^ 6 ^ 5 ^ | 3 - |
1 ^ 2 ^ 2 ^ 1 ^ | 6_ ^ 1 ^ 2 ^ 3 ^ |
2 - 2 - |
hush ;
: P3
P1 ;
: P4
1 1 ^ 1 ^ | 1 6_ |
6 6 ^ 5 ^ | 3 - |
2 ^ 2 ^ 2 ^ 1 ^ | 1 6 ^ 5 ^ |
5 - 5 - |
hush ;
: P5
6 ^ 1' ^ 1' ^ 1' ^ | 1' ^ 7 ^ 6 ^ 5 ^ |
6 - |
3 ^ 5 6 ^ | 5 2 |
3 - 3 - |
hush ;
: P6
2 2 ^ 1 ^ | 2 3 |
6 6 ^ 5 ^ | 3 - |
2 ^ 2 ^ 2 ^ 1 ^ | 1 6 ^ 5 ^ |
5 - 5 - |
hush ;
: P7
1' 1' | 1' 7 ^ 5 ^ |
6 - |
3 ^ 5 ^ 5 ^ 6 ^ | 5 2 |
3 - 3 - |
hush ;
: P8
2 2 ^ 1 ^ | 2 3 |
6 6 ^ 6 ^ | 5 3 |
6 6 ^ 5 ^ | 6 5 |
1' - 1' - |
hush ;
: song P1 P2 P3 P4 P5 P6 P7 P8
;
這個簡譜的文字檔,是採用符式編程語言(FORTH Programming Language)的語法。它的語法規則十分簡單,就是每行文字包含一系列的指令,
指令之間用空格分開。在圖二中所有的數字1-7,都是代表音符的指令。其他的符號,大多是規定音節長度的指令。下面表一中列出和簡譜相關的指令:
|
數目字1至7 |
正常的音符 |
|
數目字1’至7’ |
高八度的音符 |
|
數目字1_至7_ |
低八度的音符 |
|
數目字0 |
休止符 |
|
符號 ^ |
1/8音節 |
|
符號 - |
1/2音節 |
|
符號 -- |
3/4音節 |
|
符號 --- |
1/1音節 |
|
符號 -. |
5/8音節 |
|
符號 ^ |
1/8音節 |
|
符號 . |
3/8音節 |
|
符號 ^. |
3/16音節 |
|
符號 | |
音節終止,下一音符附加和弦 |
|
hush |
停止所有音符 |
其他的指令是符式語言中編程用的指令:
|
: |
開始建造一個新指令,用後續的文字串作為新指令的名稱。 |
|
; |
結束新指令 |
在這個”中國的早晨五點鐘”的例子中,我們為每一句歌詞都建造一個新指令,就是P1, P2, P3, P4, P5, P6, P7和P8。最後我們將這八個指令結合成為一個名稱是song的新指令,就可以轉譯成為可以演奏的MIDI檔。把每一句歌詞都建造一個新指令有很多好處。許多歌曲中的歌詞會重複,就不必重複輸入相同的音符系列。好像例子中P3和P1是相同的,所以只要用P1建造P3就可以了。另外一個好處是在音符輸入有錯誤的時候,我們可以獨立測試各個歌詞,就比較容易找到錯誤的地方了。
用這個方法,我們就可以將簡譜數位化,並產生在個人電腦上可以演奏的MIDI檔歌曲。
3. 和弦的數位化
上面我們只談到將歌曲的主題旋律數位化。要為歌曲伴奏,需要加上和聲陪襯,才更優美動人。和聲是茲事體大,要專業的作曲家或有經驗的鋼琴家才能勝任。但是有許多年輕的歌手用吉他伴奏。只需要掌握一些基本的和弦,就可以將歌曲的主調美化,給聽眾豐厚和諧的音感,襯托旋律和詩歌的意境。如果我們要很當回事地將迦南詩選數位化來為各處的會眾伴奏,加入和弦是必要的。我也看到好幾本迦南詩選的選集附表和弦。用電腦來處理和弦不是困難的事,只是我對音樂樂理是門外漢,所以只能提供一些最簡單的工具,在詩歌每一小節開始的時候,加入簡單的和弦。
加入和弦的規則列在下表中:
|
音符1, 4, 5 |
大調和弦(major) |
|
音符2, 3, 6 |
小調和弦(minor) |
|
音符7 |
augmented和弦 |
和弦是自動配置在每個小節的第一音符上的。小節之間是用”|”指令分割的。所以如果你要在一小節中間的一個音符強加和弦,就可以在這個音符之前插入一個”|”指令。
4.
簡譜編譯系統
簡譜編譯系統包裝在一個壓縮的檔案”迦南詩選。ZIP”。用UNZIP展開全部檔案,並將全部檔案存入一個你選定的檔案夾中。假設個這檔案夾名字是”迦南詩選”,你可以看見在這個檔案夾中所有的檔案,顯示於這以下的視窗圖像內。
圖2.2 簡譜編譯系統的視窗圖像
用滑鼠點選F#.EXE檔案。按滑鼠兩下載入F#系統。F#系統首先顯示一個檔案選擇交談區,如以下螢幕的選擇視窗圖像,請你選擇一個.FEX延伸檔。這些延伸檔案包含下列示範程式:
MIDIsongs3.FEX
簡譜編譯系統載入程式
開啟MIDIsongs3.FEX檔案,簡譜編譯系統即被載入。它開動後即將所有的簡譜文字檔編譯並產生對應的MIDI檔。
圖2.6 簡譜編譯系統的控制台視窗
關閉這個視窗,用滑鼠點擊新產生的MID檔就可以演奏出來。
4.
簡譜編譯系統的載入程式
簡譜編譯系統的載入程式是MIDIsongs3.FEX。它的程式文字如下。它的前半部是符式系統的擴建指令,準備好簡譜編譯系統。它的後半部是載入所有簡譜文字檔的指令。當你寫好了一首新的簡譜檔,你可以加入相當的FLOAD指令,就可以將新的歌曲編譯出來了。
: <<extend.fex>> ;
CR
FLOAD init.f
\ initial stuff
FLOAD win32.f \
win32 system interface
FLOAD consolei.f \ api and constant defination
FLOAD ui.f
\ user interface helper routine
FLOAD console.f \ open console
window
FLOAD fileinc.f \ read and write
files
FLOAD append.f \ append
strings
FLOAD ansi.f
\ ANSI FORTH standard words
FLOAD extend.f \
extension word set
FLOAD midi3.f \
compile
FLOAD 我心平靜.f
FLOAD 中國心.f
FLOAD 同路人.f
FLOAD 活水泉.f
FLOAD 讚美主.f
FLOAD 良人和我.f
FLOAD 十個童女.f
FLOAD 喚醒中華.f
FLOAD 胸懷世界.f
FLOAD 主愛無可比.f
FLOAD 非常的歲月裡.f
FLOAD 同一個地球.f
FLOAD 跟著聖靈走.f
FLOAD 誰是牧羊人.f
FLOAD 磐石磐石.f
FLOAD 主的靈在膏抹.f
FLOAD 我們所信的神.f
FLOAD 中國早晨五點鐘.f
FLOAD 帶著你的歡笑.f
FLOAD 最知心的朋友.f
FLOAD 既然跟從了主.f
FLOAD 這裡有神的同在.f
FLOAD 聖靈帶著你我走.f
FLOAD 求主給我一顆心.f
FLOAD 我們的心中多快樂.f
FLOAD 主啊求你來到我們中間.f
FLOAD 主啊願你拉著我們的手.f
這裡有我編寫好的27首迦南詩選中的歌曲,供給大家做參考。如果你的目的是輸入新的迦南詩選,就可以挑一個檔案做範本,將音符和音節指令修改就可以了。如果你有興趣了解MIDI碼,可以研究MIDI3.F檔案。如果你對符式FORTH語言有興趣,可以上我的網站http://www.offete.com/查閱有關F#系統的資料。