看板 AudioPlayer 關於我們 聯絡資訊
先從「標籤 - 檔案名稱」這個檔案命名功能講起好了。 一般的用法是,整理完TAG,各個標籤欄位該輸入的都輸入好以後, 全選處理中的所有檔案,然後按下這個按鈕依據標籤資訊重新命名各個檔案。 當我們按下這個按鈕後,會出現一個對話視窗,要你選擇格式字串。 而格式字串可以提供的操作非常的多,除了基本的標籤欄位變數跟檔案資訊變數外, 居然還提供了函式功能!!! 所有詳細的使用方式請參照官網說明文件: 標籤變數:http://www.mp3tag.de/en/help/options_converter.html 函式功能:http://www.mp3tag.de/en/help/main_scripting.html 那麼接下來,我就一步一步的寫,因為最後完成版實在太長了,怕會嚇到大家。 因為我是從iTunes開始用,後來才轉foobar2000跟Songbird, 所以我的檔名命名習慣跟整理方式是沿襲iTunes預設的方式, 在各個artist資料夾底下再開各個album的資料夾, 所以我的檔案命名並不會加入這兩個變數。 一、基本的曲目跟標題 $num(%track%,2) %title% 這邊用到一個函式,$num(),將輸入的數字資訊轉成指定的位數, 最常看到的用法就是將曲目固定成2或3位數,這樣看起來比較整齊, (官網範例是用3,不過除了大合輯外我還沒看過流行音樂專輯超過99個曲目的) 曲目跟標題間空一格是iTunes的命名方式,也是我的習慣, 這樣比較清楚也不會把分隔符號跟標題本身搞在一起。 二、加上碟片編號 $if(%discnumber%,%discnumber%-,)$num(%track%,2) %title% 針對精選輯之類會有超過一片光碟,而塞在同一個專輯資料夾裡面需要做區隔, 這邊使用到$if()函式,判斷如果沒有光碟編號欄位資訊的話, 就什麼也不寫,(即第二個逗號後的變數為空) 有光碟編號欄位資訊就寫入編號後再加個「-」作分隔。 三、處理光碟編號資訊同時寫入最大值的情況 $if(%discnumber%,$regexp(%discnumber%,/\d,)-,)$num(%track%,2) %title% 像是iTunes等的軟體,在轉檔時,會將CDDB提供的光碟總數也寫入, 舉例來說,三片裝時光碟編號大概就會長成1/3、2/3、3/3,得再作個處理。 這裡用到$regexp()這個正規式判斷函式,把/後面的最大值(正規式的\d對應任何數字) 跟「/」一起去掉(第二個逗號後面的變數為空,即代換為空字串,等同去掉) 四、處理只有一張光碟卻還是寫入「光碟編號/最大值」的情況 ※從本例後請自行將語法根據之前接合的地方兩行合一。 $if($and(%discnumber%,$neql(%discnumber%,1/1)), $regexp(%discnumber%,/\d,)-,)$num(%track%,2) %title% 這邊要先注意一下,這用法並不能處理只有一張光碟卻在光碟編號寫入「1」的情形, 因為如果有三張光碟卻分別寫入「1」、「2」、「3」,這時就不能把「1」拿掉了。 所以遇到只有一張光碟時,我不是修改成「1/1」,就是乾脆清空它。 這回一口氣多用了兩個函式來判斷,因為要判斷有光碟編號卻又不是「1/1」的情況。 $neql()判斷光碟編號不是「1/1」,回傳true。 $and()當然就是要同時有光碟編號,而光碟編號又不是「1/1」的判斷啦。 五、代換掉容易造成問題的特殊字元 $validate($if($and(%discnumber%,$neql(%discnumber%,1/1)), $regexp(%discnumber%,/\d,)-,)$num(%track%,2) %title%,_) 最後用到的是$validate(),這個函式用來將「 /?*"<>|: 」等在軟體讀取時, 容易造成問題的特殊字元代換成你指定的字元, 我習慣將它們替換成底線。 六、沒有了 我目前就只用到這些,因為對我來說,檔名塞太多東西真的很醜, 歡迎大家提出討論! 以為很短,結果寫這篇又花了一個小時左右Orz -- ▄▄A WM Should Not Know Anger, ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄ Nor Hatred,▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄Nor Love. ▄▄▄▄▄▄▄▄▄▄▄▄ My home: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ http://kidwm.net/ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ 批踢踢兔個板:WM -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.1.178 ※ 編輯: WandererM 來自: 220.133.1.178 (10/11 22:10)
napdh:很實用~ 10/12 00:19
goldie:實用,too. 謝謝,學到了不少 10/12 11:28
atb:推一個 實用 學到了不少 10/14 12:37
atb:請問一下 若是有些DJ把兩首曲mix成一首,這樣要若何編輯tag 10/14 12:38
atb:http://ppt.cc/RXLV 10/14 12:47
WandererM:DJ填在Mixer,剩下的用Multiple Attubute填在一起 10/14 16:03
WandererM:或是你要把DJ填在Artist也可以XD 10/14 16:03
o035016:教學絕對是難寫的啊,大推 11/04 11:47