Categories
野人獻曝

在Ubuntu以CUE分割無損的APE、TTA、FLAC音樂檔案

UPDATE: 直接裝flacon這個QT介面的程式就不必自己做苦工了。

其實這個功能有些現成的程式或是指令稿可以完成,像是gCue2tracksSplit2flac之類的,不過因為用起來老是遇到錯誤又不知道到底出錯在哪,還是自己研究了一下用一般的指令來完成工作吧。

首先安裝會用到的工具:
sudo apt-get install cuetools shntool

UPDATE: Fedora 底下是這樣:
sudo yum install cuetools shntool
sudo ln -s /usr/bin/cuetag.sh /usr/bin/cuetag

然後是各個CODEC的解碼器(雖然有些作法是用ffmpeg來轉檔再處理,不過這裡我們直接處理掉),針對TTA的解碼,到TAU網站下載編譯好的ttaenc執行檔放到/usr/bin來用。而APE的解碼是需要mac這個程式(在 Ubuntu 底下裝完flacon就有了),至於flac的解碼系統預設應該就有裝了。要是mac裝不起來的話,也可以用ffmpeg -i inputaudio.ape outputaudio.flac先轉換成flac來處理討厭的APE格式。

進行分割:cuebreakpoints album.cue | shnsplit -o flac -d /home/wm/ output.wav(album.cue與output.wav請分別代換成你要分割的CUE與無損格式檔案,這一步有些人是用bchunk來做)
會在/home/wm目錄底下輸出分割好的flac檔案。
最後加上CUE裡面的標籤資訊:cuetag album.cue /home/wm/split-track*.flac就大功告成了,分割後轉成flac,要再轉換到其他格式只要使用圖形化的SoundConverter就能處理了。

如果這樣就結束了,這篇就不夠看了,來來,sudo apt-get install zenity裝上zenity吧!

#!/bin/bash
#cuesplit.sh
#dependency:
#cuetool shntool
#mac ttaenc
#zenity
audio=`zenity --file-selection --title="Choose the Audio file"`
echo "Audio File: $audio"
cue=`zenity --file-selection --title="Choose the CUE file"`
echo "CUE File: $cue"
path=`zenity --file-selection --directory --title="Choose the Output Path"`
echo "Output Path: $path"
cuebreakpoints $cue | shnsplit -o flac -O always -d $path $audio
cuetag $cue ${path}/split-track*.flac
echo 'Done'

以上存成cuesplit.sh,在終端機中執行,這樣只要在zenity提供的檔案對話框中選好要處理的檔案,剩下的就自己搞定啦!
P.S. 轉換目標的檔名或所在路徑包含非英數字元或是空白字元似乎會出問題,得自己先修改CUE跟音訊檔的名稱。

One reply on “在Ubuntu以CUE分割無損的APE、TTA、FLAC音樂檔案”

發表迴響