2011-08-22 12:28 墳墓 (Brian Hsu)
開始之前的工商服務
這個專案在徵虛擬歌手的聲優,條件和報酬如下,有興趣請連絡 Paul Liu。
- 中文
- 蘿莉音
- 不需會唱歌
- 限女性
- 成品授權條款:CC-BY 3.0(只要對方有註名出處,就可以拿去用)
- 報酬:¥20000
前言
這是昨天在 COSCUP 上聽 PaulLiu 提到的用自由軟體打造虛擬歌手後,回家試了一下 之後的筆記,因為對語音合成這一塊並沒有很熟,所以如果下面的東西有錯,煩請大 家幫忙補正。
另外,很不幸的,雖然在現場的時候魔法設計師有現場 DEMO 在 Linux 跑這東西,但 我到現在還是無法讓他正常動起來。
成果範例
http://www.facebook.com/video/video.php?v=10150150376548285
組成元件
這個虛擬歌手並不是單一的自由軟體專案,而是由各自的三個專案組成,表列如下:
-
- 這個是 UI,他的目的是『做一個更好的 Vocaloid 介面』,可以吃 Vocaloid/UTAU 和下面介紹的自由軟體的語音合成引擎
- 授權條款:GPLv3
- 程式語言:C#
- 附註:
- 是目前我遇到的最大問題,無法讓他正常在 Linux 下執行。
- 程式碼非常大一包,裡面還會用到 Wine,我的功力不足,解析不能。
- 他是用很奇怪的方法把 C# 原始碼轉成 Java 檔,再用 javac 編譯出 Java 版。
-
- 聲音分所合成系統(不用解釋了吧?讓歌手能唱歌的最重要的元件。)
- 授權條款:GPLv3
- 程式語言:C++
- 相依性:libfftw
- 附註:
- 官方下載點在該網頁最下方有一個 zip 檔連結
- 建議下載 PaulLiu 包的,裡面有 Linux 可以用的 makefile
-
- PaulLiu 改寫的 wavtool,做用不明,看起來像生 .wav 檔用的
- 授權條款:GPLv3
- 程式語言:C 語言
- 相依性:libsndfile
- 附註:
- 下載方式如下:
git clone git://git.sourceforge.jp/gitroot/wavtool-pl/wavtool-pl.git
- 下載方式如下:
使用音源
目前可以免費、合法取得的音源是『重音テト』,非自由軟體授權,聽說是日本的一個女高中生錄的。
抓取的時候請抓取最新版『連續音』+『單獨音』那個,另外,下載來的壓縮檔是日文編碼檔名,無法直接在 UTF-8 的 Linux 環境下解壓縮,囧。
解決方法:在 Windows XP 上面到控制台/地區與語言/進階把『非 Unicode 的程式使用編碼』那邊調成『日文』,解壓縮後用 Samba 把他搬到 Linux 上。
EFB-GW 程式編譯與使用
-
編譯
- 將 PaulLiu 包的那包解壓縮
- 確定你的 Linux 系統上有裝 libfftw 這個函式庫
- 依照下列方式編譯
cd efb-gw
rm test1
make clean
make
- 編譯完後應該會出現一個叫 test1 的可執行檔
- 執行 ./test1 應該會出現『error: 引数の数が不正です.』的錯誤訊息
-
測試執行
- 將『重音テト』的解壓縮後的『重音テト連続音』資料夾放在 efb-gw 的上一層目錄
- 用
mplayer ../重音テト連続音/_あるろあん.wav
聽一下原始的聲音 - 在 efb-gw 目錄執行 ./ex1.sh
- 這個時候會出現一個新的 o1.wav 檔
- 用
mplayer o1.wav
檔來聽合成後的聲音,你會發現中間幾個字的音被吃掉了 - 修改 ex1.sh,將 B3 改成 C3,然後重新執行 ./ex1.sh
- 用
mplayer o1.wav
來聽新的合成音,會發現音調改變了
-
結論
- 可以看出這是整個系統最核心的部份,其實有很多可以玩的
- 不過很不幸的,我不知道他後面那一堆參數是幹嘛用的。XD
wavtool-pl 編譯與使用
-
編譯
- 用
git clone git://git.sourceforge.jp/gitroot/wavtool-pl/wavtool-pl.git
下載原始碼 cd wavtool-pl/src/
gcc *.c -o wavtool-pl -lsndfile
- 這個時候會有一個 wavtool-pl 的執行檔出現
- 用
-
使用
- 執行 ./wavtool-pl 會出現一串訊息
- 很不幸的,我也不知道那一串參數的做用,囧。
Cadencii 編譯與使用
- checkout http://svn.sourceforge.jp./svnroot/cadencii
- cd cadencii/Cadencii/trunk
- chmod +x configure
- ./configure
- make
- 還沒成功過……orz.
結語
最大的難關是讓 Cadencii 能跑起來……orz. 其實不那麼堅持在 Linux 上跑的話,他有已經編好的 Windows / MacOS 版本可以用。
回響