musicrepairの音楽ファイルの自動タグ付けの精度を上げる。
2 min read
こんにちは、無能です。
※必ずバックアップして行ってください。
先日のMusicRepairで40GB近くの音楽ファイルのタグ付をしていたのですが、残念ながら以下画像のように失敗が多く…
それで画像のように、アーティスト名を追記して再帰的に修整をしてくれる-Rオプションの調子が良くないことにも気づき対象ディレクトリにのみMusicRepairを掛けることで精度が上がりました。
まずは、MusicRepairについてよく知るためにようつべでhow toをみると
https://youtu.be/CjJ0wHR3r2Y?si=Jh0PXMFs1PAtcyid
Google.comとかとも表示があるということはシンプルに検索して取得しに行ってる様子?
と言う事はファイル名から整形していけば良いということで、私の環境下だと/アーティスト名/アルバム名/音楽ファイルという階層なので/を区切り文字として丁度アーティスト名の所だけを抽出して、音楽ファイルの先頭に付与するシェルスクリプトを書きました。
そして、音楽があるディレクトリに対して再帰的に行うオプション-Rに関しては正常に動作しなかったのでfindコマンドで最下層ディレクトリだけを表示させます。
find . -type d -links 2 > outdir.sh
これで出てきたディレクトリに対して全てMusicRepairを行います。
sed -i "s/^/musicrepair -d \"/g" outdir.sh
バックグラウンド処理に回すことで普通よりかは早く動きますが、かなり膨大なプロセスが一気に起動するのでかなり重くなります。&をつけるかつけないかは人それぞれ。
sed -i "s/$/\" \&/g" outdir.sh
viで#!/bin/bashを追記して実行権限を与えます。
chmod +x outdir.sh
これで実行。SSH接続していたのでセッションが切れても動くようにしてあげます。
nohup ./outdir.sh &
これで完了。
もちろん上記通りでも失敗してるものはありますが、現状メタタグが何もついてない音楽ファイルに対してメタタグを追加できる強力なツールです。
昔はiTunesとか、Media Goとかで読み込むだけで自動でタグ付けまでやってくれていた記憶がありましたがもう出来ないようです。
また、同じようなものでMP3tagもありますがアルバムごとでしかメタタグが追加できないなどを考えるとCLI上でまとめて処理できるのは便利です。
それではまた。
よろしくお願い致します。