文章

顯示包含「技術文」標籤的文章

【多圖】當下音樂——20個年選、400首歌、一連串數據(下)

圖片
上回分析 本Blog過去20年、每年20大評選共400首歌的一些統計,在下半部份這裡會和幾個香港樂壇頒獎禮歌曲獎項的得獎歌曲作比較,對比各自的選歌分佈。由於本Blog由2005年起開始20大評選,所以比較年份都是各頒獎禮2005年起的結果,比較對象及年份包括: 叱咤頒獎禮——叱咤十大(包含至尊歌曲) :2005-2024,有完整的20年比對,共200首歌。該獎項由1998年起設立; 港台十大中文金曲——十大中文金曲獎 :2005-2024,2021年和TVB合辦的「香港金曲頒獎典禮」不計算在內,共19年,由於部份年份有多於十首得獎歌曲,總數也是200首。該獎項由1978年起設立; CASH金帆音樂獎 —— CASH年度最佳歌曲提名 :2005-2024,由於2020和2021年因疫情取消頒獎禮,故共有18年,一共92首歌曲。該獎項由2002年起公布提名名單; 香港樂評選 —— 年度歌曲前十名(十樂推薦) :2016-2023,共八年80首歌曲。十樂名單從2016年開始,而2024年結果在發文前尚未公佈; TVB十大勁歌金曲——十大勁歌曲曲獎/勁歌金曲獎 :2005-2020共16年,之後停辦。2013年起頒獎禮進行重大改制,金曲由十首改為20首,歌曲總數為240首。該獎項由1983年起設立。 總覽 有些分佈值得先把所有頒獎禮一起作對比,之後才逐個頒獎禮分析。年份方面都是2005年起,即使每個頒獎禮覆蓋年份不完全一樣,本Blog的分佈大致穩定,故不跟隨每個頒獎禮的年份逐個比較了。 歌手類型分佈(男歌手/女歌手/組合/合唱) 上次也談到本Blog基本上是三分天下,男歌手、女歌手、組合與合唱大約各佔三分一; 叱咤十大、十大中文金曲和CASH都是男歌手佔大約一半,而組合+合唱都不足兩成; 香港樂評選比較特別,女歌手佔45%,比男歌手高出超過一倍; 十大勁歌組合和合唱合計僅佔約6%,而男女歌手大約各佔一半而女多於男,有趣的是組合(2005年起)一共只有九首得獎歌,有六首都是來自C AllStar。 國語歌佔比 本Blog接近兩成的國語歌比例,遠遠高於其他頒獎禮,只有CASH的8.7%略為接近。 十大中文和十大勁歌都有獨立的國語歌曲獎項,可能因此國語歌較少獲得十大金曲獎。做功課也糾正一些錯誤記憶,例如之前一直以為《血染的風采》在1989年是港台十大中文金曲...

AI填詞能(一):GPT能辨認粵語九聲嗎?

圖片
開始 前文提到的project ,研究AI可以怎樣幫助寫廣東歌詞。第一件事是測試它能否辨認粵語九聲。我先給它一句歌詞,讓它分辨每一個字是甚麼聲調。文章裡會使用ChatGPT和Microsoft Copilot的免費版,兩者都是基於OpenAI的GPT大語言模型(LLM, Large Language Model)。而我們先用近來全城熱播的話題作品——郭富城《EXIT》(小美填詞)——來試驗: 很準確哦!更驚喜的是「上」字它能答出是第五聲(「上車」的「上」)而不是第六聲「尚」音。那我開始給它一些挑戰,直接叫它填詞: 結果當然是「邊間教會」了,改一下提詞並提供一些例子(純粹合音而基本上沒有意思),看它懂不懂其規律: 證明此路不通。好了,還是不應要求它太多。 如果叫它逐個字提供幾個同聲調的字,GPT又能否做到?為了方便操作也避免AI說太多廢話,我叫它以資料表格方式展示,經過簡單的試驗它能夠給我這個表格: 我再嘗試叫它加一欄包括,每一個字同聲調的幾個字。如果這一點做到的話,至少可以讓它提供一整句合音的句子,即使是毫無意義的字串,說不定其中一兩個字可以令人產生新的意念: 第一次的效果算不錯,是第五聲的兩個字「上」和「舞」不對,略為要求它修正一兩次後,結果開始令人滿意了: 它提供的字已經可以砌出一些全句合音的句子了(當然串起來毫無意義),例如「快馬笑斷唱灰深」,或者「唱我照近快開新」,就這樣的話實際用途還是有限,但作為腦閉塞時brainstorm也許有點用處。 以上只是AI填詞實驗的剛剛開始,短短幾個測試已經開始為之後的研究提供一些方向,之後的進展,就留待下回分解。

由聽AI張國榮到訓練AI汪明荃得出的十點啟示

圖片
一:先弄清AI翻唱的原理。 撇除一切高深術語,制作AI歌手翻唱簡單而言分兩個部分。舉個例子,假如我要用AI盧凱彤唱林二汶的《最後的信仰》,第一是是輸入一堆盧凱彤的唱歌片段(說話片段也可),讓電腦學習「盧凱彤的歌聲是怎樣的」;第二是提供《最後的信仰》這歌的人聲(vocal)部分,是不是林二汶唱的這裡無關重要,電腦只知道要把交給它的歌聲,換成它學會的盧凱彤聲音就對了。所以,在兩個部分裡都有重要一環,就是把人聲從音樂分離出去,交給電腦訓練的和指派給它替換的歌聲,都必須是純人聲。我是去到研究AI翻唱才知道在網上可以找到不少用AI技術把歌曲去人聲的工具(例如線上工具 Vocal Remover 和需要下載的 Ultimate Vocal Remover ),這就明白了為甚麼YouTube很容易找到最新推出的流行曲的純音樂版,那AI去人聲效果比起以自動去人聲作為賣點的唱K神器強到不知哪裡去。 二:有些歌手不宜做AI。 第一次聽AI翻唱廣東歌是AI張國榮的《到底發生過甚麼事》和《時光倒流一句話》,聲音的相似程度驟聽是有點驚喜的,但完全沒有張國榮的神髓。張國榮的特色不在聲線而在難以量化的感染力和感情,而且不同年代的張國榮唱腔也不盡相同,你很難說「如果張國榮唱這首歌」會是怎樣個唱法,也更難重現張國榮的演繹了。黃家駒同理,他那種搖滾精神的感染力也是AI模仿不來的,有些歌本質上跟黃家駒已經格格不入,套用到AI黃家駒身上有時更感覺尷尬,也許值得做的AI黃家駒翻唱恐怕只有三人時代的Beyond吧。 三:零瑕疵歌手AI較易模仿? 如果AI歌手的弱點是沒有感情,那照計訓練「零瑕疵靚聲王」的AI會有更好效果,馬上想起的粵語有李克勤,國語有林志炫,可是暫時也不見有他們的AI仿製品,否則可以驗證我的假設。如果有AI林志炫,正經的我想聽它翻唱方大同2012或之前任何作品:不正經的,我想聽黃明志《擊敗人》! 四:AI翻唱很容易聽厭。 一來以AI現時能力模仿歌手也只有形似沒有神似,二來很容易聽到發音不準如「譚仔阿姐」附體(這也是AI翻唱廣東歌之一大難處),三來經常重重覆覆幾個歌手互相「翻唱」對方的歌(例如陳奕迅姜濤張敬軒林家謙),或者一首金曲被各種AI唱到爛(例如《到底發生過甚麼事》至少找到四個AI翻唱),聽多幾首已缺乏新鮮感。 五:為甚麼AI孫燕姿可以量產? 當今華語歌壇最紅的AI歌手應該是孫燕姿了,翻唱...

用spreadsheet寫簡譜之後續:如何不需逐字輸入歌詞?

圖片
2019年寫過幾篇用spreadsheet寫譜的技術文, 關於寫簡譜的一篇 近月一直是本blog最高點擊率的文章,另一篇講 寫chord譜 的也是本blog歷年點擊率前十之一,為數不多的技術文原來比樂評文更受歡迎(汗)。 chord譜那篇一直也多人看,簡譜篇則是近月點擊量急升 當年其實有一個技術問題沒有處理,就是加歌詞只能逐字鍵入,後來其實找到更高效率的方法,趁近來該文進入熱門,分享一下這三年後的後續,在此之前,快速回顧用spreadsheet寫簡譜的幾招: 一:指定欄寬,每個音一格 二:高低八度符號用框線表示 三:以句子分行 四:歌詞的字體可以設定得比音符大 五:可加chord在上面 至於除了逐字鍵入之外,還有沒有更快的方法?是有的,Google Sheets有一個不起眼的功能可以幫到你。 首先需要準備的是: 一:已寫好簡譜的試算表;  二:歌詞,複製在最簡單的文字編輯器(例如Notepad) 排好歌詞讓一行歌詞對一行旋律。在每個字加插空格,如果簡譜中有空格,則在歌詞加多一格。 紅框中其實有兩個空格 選取一行,點滑鼠右鍵→複製(或鍵盤按Ctrl/Cmd+C)。回到寫上簡譜的試算表,在相應的行的第一格點滑鼠右鍵→貼上(或鍵盤按Ctrl/Cmd+V),到時你會發現全句都貼上在第一格,不用擔心,留意下面有一個剪貼簿符號,點開; 選擇「將文字隔成不同欄」, 在分隔符選「空格」, Google Sheets便會自動分配全行文字到不同格了。 如果有「走位」(例如多了或少了一個空格),也只需善用「插入儲存格」或「刪除儲存格」功能調整位置便可以了。 這麼寫簡譜時便可以一次copy and paste一整行而不需逐字鍵入了,效率登時大大提升。 圖文並茂也未必及短片有效吸收,所以還是準備了一條短片和讀者分享。現場實測,以張天賦《小心地滑》為例,處理全首歌詞也只需不足9分鐘。

最簡單便捷的寫譜軟體(六線譜篇)

圖片
承接上兩篇文章分享用試算表軟體(如Google Sheets)寫 chord譜 和 簡譜 ,今次講的是結他用的六線譜(Tab)。繼續用Google Sheets示範。 六線譜有兩種寫法,一種是完全用數字記錄每個音彈哪一弦哪一格,一至六線分別用六行(rows)表示,數字代表彈結他的第幾格;第二種是用和弦記號輔助,在譜上面標示和弦,六線譜主要記錄指法,要彈的線打「x」就可以,如果彈奏時有和弦以外的音才用數字表示。如果主要是彈chord伴奏的話,這樣會比較方便。 例一:某首歌的前奏 例二:附上和弦標記 寫結他六線譜的幾點具體貼士: 一、一般用每四小節一行,每半拍一格 :以4拍4為例,每小節分八格,3拍分六格,如此類推。如果有16分音符又如何?建議的做法是用左/右對齊在視覺上分開兩個音。相反地,如果是四分音符或更長,只要把後面適當的格數留空就可以; 留意「x」是靠左,「3」是靠右 二、善用調整欄寬功能 :每一欄的寬度相同以使看起來比較整齊,最有效率是選取所有欄,點滑鼠右鍵,選「重新調整欄寬」(可參考 簡譜 一文)。多短音而需「左右對齊大法」的話,欄寬適宜闊一點; 三、每小節用邊框分隔 ; 四、列印時不要移除格線 :這做法與chord譜和簡譜有分別,因為格線在六線譜的存在有助你數算拍子。另外六線譜較難一頁print完,為免print出來支離破碎,需要設定哪裡分頁,在列印頁面有「設定自訂分頁符號」可以讓你設定; 錯重點:示範的是首經典老歌 老實說要用spreadsheet完全取代寫譜軟體確實是有難度,尤其是一些特別的彈法和更複雜的拍子標記(要不然也不用軟體設計師經年累月寫出專用的寫譜程式了),不過當你想暫時記錄自己正在修改中的彈法時,這是一個最方便的方法。要一邊思考那段結他怎編,一邊煩惱著把它輸入陌生軟體的正確方式,確實是很磨人的事。 真正六線譜。來源:小學雞結他網

最簡單便捷的寫譜軟體(簡譜篇)

圖片
(2022更新:之後找到方法可以一次輸入整行歌詞而不需逐字鍵入,詳細請看 後續文章 ) 上回分享 如何在Google Sheets寫出整齊的chord譜 ,如果要寫簡譜記下旋律的話又如何使用試算表幫助呢?以下是幾點心得: 一、指定欄寬,每個音一格 :用每一格填一個音是最合理的做法,記住要調整每欄的寬度以免每欄之間留太多空位; 選取需要的欄(一般可一次過選所有欄),按滑鼠右鍵,「重新調整橺寬度」 所有欄同一寬度看起來比較整齊 二、高低八度符號用框線表示 :傳統上簡譜高低八度的符號是在上下加點(「・」),但在試算表上那一點該怎樣加?試過兩個辦法,一個是每一句佔三行,上下兩行預留加點,但效果是佔據空間太多;個人建議改用上下框線標示,同樣易讀而節省空間; 用一般歌譜的上下點的話會太多空位 用儲存格上下框線(見紅框)既方便又不難理解 三、以句子分行 :寫chord譜時建議一行四小節,但簡譜的話建議還是以句子分行,視乎歌曲長度每行一句或兩句,最重要是可以一頁列印出來(再一次提提大家,記住列印時要移除格線,詳情請參考Chord譜篇一文); 四、歌詞的字體可以設定得比音符大 :經驗是如果歌詞和音符用上同樣字體,列印出來歌詞會變得很小,所以可以把歌詞的字型放大一點,例如設為12或14,而音符設定為10或11; 五、可加chord在上面 :簡譜和chord譜可以並存,只要再加一行把和弦加在適當的音上面就可以了。 Chord在旋律上面 以上的心得可以幫助你在Google Sheets寫出整齊的簡譜,當然當中也有未盡完善的地方,例如未能表達每個音的長度(四分/八分/十六分音符之類),曾見過有文章介紹用Excel輸入完整簡譜,但需要插入大量圖案以致非常不方便。此外,歌詞因為每字佔一格,所以需要逐字輸入(也因此找來《心經》示範,因為逐字打當是抄了一次經,阿彌陀佛!),但要記錄旋律方便自己彈奏或練唱也已經很有用。 (參考:《心經》簡譜和chord譜的 Google Sheet連結 ) 之後會分享輸入結他六線譜的方法,敬請留意。

最簡單便捷的寫譜軟體(Chord譜篇)

圖片
如果你有彈結他或彈琴玩流行曲,少不了上網找譜或自己執chord。可能你也試過跟著網上的chord譜自彈自唱,但和弦標記和歌詞不對位,或者在幾個不知是彈半個還是一個小節的和弦中不知彈到哪裡;自己寫譜執chord的話,手寫固然太麻煩,用word或者寫成html一來很容易走位,二來要是寫到中間想把兩行合併為一行或一行分兩行都是非常麻煩的事。 一般在網上見到的chord譜 坊間有專門的寫譜軟體例如 Guitar Pro 、 Noteflight 或 Musescore 等,但即使是最簡單的樂譜,也需要重新學習輸入方法。在下的一個慘痛經歷是用Musescore打六線譜,嘗試在同一個音多加一條線配和弦,但這一個動作已經花了半個小時爬完文看完YouTube還是沒有解決辦法,也因此最後決定放棄Musescore不用。況且某些軟體免費版只有有限功能,或者在專用的檔案格式不方便分享協作。究竟有沒有甚麼方法可以寫出簡易又整齊的樂譜,包括chord譜、簡譜和六線譜? 近來發現,用試算表軟體(例如Excel或Google Sheets)寫譜可以寫得又方便又整齊,特別是跟著彈的時候,容易認出chord progression的pattern,練習多了要記譜便容易得多。另外就是把譜寫在試算表上,要列印出來很容易讓它一頁印好,無論是印成紙張樂譜或是製作pdf在平板電腦看都很方便。 分享一下用spreadsheet寫譜的幾點心得。以下以Google Sheets作示範,寫的是去年大熱的RubberBand《未來見》: 一、每行四個小節,每小節兩格: 流行曲的chord progression很多時候以四小節為一單位,每四小節一行比較容易讓人看出歌曲的pattern。彈chord伴奏的話很多時候是一個或半個bar轉chord,所以兩格為一小節比較方便輸入和弦。如果有些位置轉chord更頻密的(例如一拍一個chord),那就唯有在一格入兩個chord了。當然,如果全首歌都是一個小節一個chord的話,每小節佔一格也可。 二、加歌詞的時候善用左中右對齊: 輸入歌詞當然需要放在對應的和弦下方。同時,為了盡量保存一句歌詞的完整性,有些儲存格需要改為靠中或靠右對齊,以免歌詞看起來支離破碎。另外,很多時候句子的開頭仍在上一個bar,建議預留A欄填入並把該欄設為向右對齊。 (上) ...