作者WandererM (WM)
看板AudioPlayer
标题[心得]我的mp3tag使用设定 Episode 1
时间Sat Oct 11 21:54:21 2008
先从「标签 - 档案名称」这个档案命名功能讲起好了。
一般的用法是,整理完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)
1F:推 napdh:很实用~ 10/12 00:19
2F:推 goldie:实用,too. 谢谢,学到了不少 10/12 11:28
3F:推 atb:推一个 实用 学到了不少 10/14 12:37
4F:→ atb:请问一下 若是有些DJ把两首曲mix成一首,这样要若何编辑tag 10/14 12:38
6F:→ WandererM:DJ填在Mixer,剩下的用Multiple Attubute填在一起 10/14 16:03
7F:→ WandererM:或是你要把DJ填在Artist也可以XD 10/14 16:03
8F:推 o035016:教学绝对是难写的啊,大推 11/04 11:47