2013年8月31日星期六

令人討厭的 TAK 聲音檔

TAK 聲音檔是近年興起的一種無損壓縮聲音檔
根據 TAK@wiki官方 描述,支援 TAK 的軟件極少
電腦上,支援的軟件亦只能播放,不能編輯;而面對現在的線上播放及手提裝置則暫時沒有支援

為甚麼提及 TAK ?
由於 TTA 是以 GPL 發佈,其演算法是開源,同時支援各種作業系統,能普遍播放及轉換成其他格式,方便編輯
但現在不知甚麼原因, OST 偏向以 TAK 格式發佈,令聲音檔的播放受到極大限制,不能隨時播放亦意味著不能隨轉換或編輯
不知道發佈者在想甚麼……

在 Windows 上可以利用 foobar2000 將 TAK 轉換成其他聲音格式
在 Mac OS X 上可以利用 iTunes
那 Linux 呢 ? Linux 又被拒諸門外 ?
在 官方 中只提及 Linux 可以利用 WineHQ 安裝能在 Windows 播放 TAK 的軟件,並沒有真正解決問題

在 TAK@wiki 中提及 FFmpeg 開發者利用逆向編譯,在 FFmpeg 2.x 所使用的 libavcodec 中加入 tak.* 的的函式庫
但一般 Linux 發行版通常都不會使用最新版的 FFmpeg
以在下正在使用的 Linux Mint 15 並非使用 FFmpeg 2.x
因此使用
sudo apt-get install ffmpeg
仍未能處理 TAK

所以使用者必須到 FFmpeg 官方網頁 (或 libav 官方網頁) 下載具備 tak.* 的 FFmpeg (或 libav)
利用 FFmpeg 官方提供的 git 指令可以輕易下載最新版的 FFmpeg
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
或使用
wget http://www.ffmpeg.org/releases/ffmpeg-2.0.1.tar.bz2
不過使用 wget 下載時就要注意 FFmpeg 的版本編號及下載後需要使用 tar jxvf 解壓縮

不論用甚麼方法下載,完成後進入 FFmpeg 的目錄
使用者可以先輸入
./configure --help
查看安裝 FFmpeg 需要使用的功能或函式庫
以在下而言,在下只打算將 TAK 轉成 mp3 格式,因此需要使用 libmp3lame 函式庫,所以在下使用
path_to_install="${HOME}/softwares/ffmpeg"
./configure --prefix=$path_to_install --enable-libmp3lame
便足夠,但留意啟動 libmp3lame 函式庫,需要先安裝 libmp3lame-dev ,可以輸入
sudo apt-get install libmp3lame-dev
另外有時編譯時會提示 yasm 未被使用建議關閉,在編譯時加入 --disable-yasm 即如下
./configure --prefix=$path_to_install --disable-yasm --enable-libmp3lame

編譯後,輸入
make
make install
(如果 --prefix 設定的位置屬於系統位置, make install 需要使用 sudo 進行安裝)

完成安裝後,輸入
"${path_to_install}/bin/ffmpeg" -i file_of.tak
如果安裝正確,可以顯示 TAK 檔案中的聲音資料

之後便可以輸入
"${path_to_install}/bin/ffmpeg" -i file_of.tak -acodec libmp3lame -ab 128k -ar 44100 -ac 2 file_of.mp3
便可以將 TAK 轉成 mp3
再利是可編輯 mp3 檔案的軟件 (如 Audacity) 剪裁需要的範圍
或利用 FFmpeg 的 -ss 及 -t 屬性直接剪裁範圍亦可

1 則留言 :