久し振りにボカロ曲を集めたので、mp3tagでタグ一括登録しようとしたら、ボカロ用のアクション消えてた(´・ω・`)
というわけでアクション追加したけど、久し振りで結構忘れてたのでメモ。
条件
- ファイル名は以下の規則に合わせる。
【%albumartist%】%title%[%artist%].%_extension% 音楽ファイル、カバーアート、歌詞はフォルダ毎に分けておく。
vocaloid | +- music | +- coverart | +- lyrics
設定1つめ。
- 「値の規則性を~」を選択。
- 参照先: %_filename%
- 規則性の推測パターン: 【%albumartist%】%title%[%artist%]
設定2つめ。
- 「カバーファイルを入力」を選択。
- 文字列規則: '<任意のパス>'%_filename%.jpg
- カバーの種類: Front Cover
- 既存のカバーを削除: チェックする
設定3つめ。
- 「テキストファイルを入力」を選択。
- フィールド: UNSYNCEDLYRICS
- 文字列規則: '<任意のパス>'%_filename%.jpg
設定したら適当なアクション名を付けて保存し、タグ付けしたいファイルを選択して、アクション実行すればおk。
ハマったのが、%_filename% の扱い。というか、 %<各種タグ>% 全般。
これ、使い方によって、戻り値が変化する模様。
最初、$regexp で部分的にパス書き換えて読みこませよう、とか思ってたら、思い通りにいかず???ってなった。
例えば、パスが C:/hoge/foo/bar.mp3 の場合、以下パターンは、フォルダパスを含めた値が返ってくる。
$regexp(%_filename%, foo, fuga)
→ C:/hoge/fuga/bar
%_filename%
→ C:/hoge/foo/bar
対して、設定例で書いたやり方だと、ファイル名のみ返ってくる。
'C:/hoge/fuga'%_filename%
→ C:/hoge/fuga/bar
何でこんな違いが起きるのか分からんけど、とりあえずこれで動くので良しとしよう。