Linux用のID3タグ・エディタ6種類を試す

 デスクトップ用Linuxでは、Xine、MPlayer、Amarokなど、さまざまなマルチメディアプレーヤーを利用できる。こうしたデジタルメディアプレーヤーをフル活用するためには、再生するファイルの中身を充実させることが欠かせない。それには、できるだけ優れたタグエディタを利用するのが一番だ。今回は、安定動作して広く利用されているGUIのID3タグエディタ6種類を試してみた。結論から言うと、優れたタグを作成するためには、複数のエディタを組み合わせて使う必要がありそうだ。

 タグの編集機能を備えたメディアプレーヤーは少なくないが、あくまで脇役の機能にすぎないことが多い。通常は、タグ編集の専用ツールの方が、広範な編集機能を備えている。今回の試用では、各アプリケーションの使いやすさや、次のような機能について試してみた。

  • 自動検索やタグの更新
  • Discogs、MusicBrainz、Amazonなどの外部サービスとの連携
  • タグとファイルのリネーム
  • ジャケット画像のサポート
  • 複数ファイルの編集
  • ドラッグ&ドロップ機能
  • 外部プラグインのサポート

 今回の試用では、複数のジャンルのCDからリッピングしたMP3ファイルのライブラリを利用した。ファイル名はアンダースコア付きのトラック名で、タグは付いていない。アーティストごとのディレクトリの下にアルバムごとのディレクトリに分かれている。

Cowbell

ID3の基礎

 デジタル音楽ファイルには、タイトル、ジャンル、ジャケット画像、歌詞など、ファイルについての「メタデータ」情報を付加できる。メタデータの形式はさまざまな種類のタグで定められている。オーディオタグとして最も広く使われているのはID3という形式で、2種類のバージョンに分かれる。

 ID3タグが登場したのは1996年。開発者のEric Kemp氏が考案したもので、128バイトのデータをファイルの末尾に付加するという形式だった。これがID3v1だ。だが、この形式のタグは、現在の音楽プレーヤーにとっては利便性があまり高くない。そこで、数年後にMartin Nilsson氏らがID3v2のタグフォーマットを考案した。

 ID3v2は、名前と目的はID3v1と似ているが、それ以外の面では類似性はない。ID3v2のタグは音楽ファイルの先頭に付加するため、ストリーム転送でも役立つ。タグでは、複数のフレームでデータを扱い、各フレームがそれぞれ異なる種類のデータを保持する。たとえば、タイトルのフレームや、アーティストのWebサイトのフレームなどだ。ほかにも、リバーブ、ムード、人気度、再生回数など、様々なデータを格納するフレームフォーマットがある。ID3v2にはいくつかのバージョンがあり、現在はv2.3が最も広く使われている。

 ID3以外のオーディオタグ形式には、Vorbis Comment(Ogg形式やFLAC形式の音楽ファイルで使用)やAPEタグ(各種形式の音楽ファイルで使用)などがある。

 Linuxユーザが音楽ファイルのライブラリを作るときには、MP3形式かOgg形式のファイルを利用することが多いはずなので、少なくともID3v2/v2.3とVorbis Commentをサポートするタグエディタを選んでおけば、自らのコレクションを十分に活用できるはずだ。他のタグ形式や音楽ファイル形式へのサポートはプラスアルファと考えればよいだろう。

id3_1_thumb.jpg
Cowbellのスクリーンショット

 Cowbellは、現時点では編集機能に限りがあるが、今後への期待を感じさせてくれるタグエディタだ。単一のアルバムの各トラックを1つずつ編集するという使い方が主となる。同じアーティストの複数のアルバムをまとめて編集することはできない。アルバムの選択は、内蔵のディレクトリツリーブラウザから行うか、デスクトップのファイルマネージャからメインウィンドウにフォルダをドラッグして行う。

 Cowbellはプラグイン機能はサポートしていないが、AmazonのWebサービスAPIを使ってアルバムとトラックを検索する機能は内蔵している。ただし、これに関する設定はUIになく、Amazonのサービスを利用して検索を行っていることを示す表示もない。アルバムを検索するには、アルバムのフォルダを選択し(トラックは選択しない)、アーティストやアルバム情報を入力する。メニューの[Tools]→[Guess Song Information]を選択すると、ダイアログが開いてAmazonに接続し、アルバム情報が取得される。[Title]列が示す各ファイルの名前が変更され、CDのトラック番号に応じた正しい順序となる。そのうえで、変更を保存してディスク上のファイルに反映できる。

 何らかのタイトルを選択した状態で[Tools]→[Guess Song Information]を実行した場合、メインウィンドウに正しい情報が取得されない。また、Amazonでの検索にはしばらく時間がかかることがあり、[Cancel]ボタンでは処理をキャンセルできない。ウィンドウマネージャの閉じるボタンを押してダイアログを閉じる必要がある。あいにく、アルバムが正しく認識されても、ジャンルの選択やリリース年の入力は自動では行われなかった。また、人気ジャンルの音楽については検索がうまくいったが、サウンドトラックやクリスマス音楽といったジャンルについては正しく認識されなかった。

 アルバムが正しく認識されると、ジャケット画像もダウンロードされ、各曲のタグに埋め込まれる。ただし、画面上は特にその旨の表示はない。画像の表示機能を備えた音楽プレーヤーで各ファイルを開いてみると、画像を確認できるはずだ。

 複数トラックをまとめて変更する操作は、コマンドラインのバッチモードなら可能だが、UIから直接行うことはできない。プロジェクトのWebサイトの説明によると、バッチモードはジャケット画像のダウンロードには対応していない。

 Cowbellの大きな特徴は、シンプルで簡単に使えることだ。だが、基本的なタグ(アーティスト、アルバム、リリース年、ジャンル)以外の直接編集に関しては、足りない面がたくさんある。ドキュメントも少ないが、プロジェクトのWebサイトにある「Cowbell, By the Numbers」というページを見れば、基本的な使い方は把握できる。

 ファイル名の変更についても制限があり、ファイル名でどのタグを使うかを指定できない。[Preferences]ダイアログでの指定は、トラック、タイトル、アーティスト情報を基にした4つの形式の組み合わせのみに限られている。逆に、ファイル名を使ってタグ情報の推定を行うこともできない。

EasyTag

 EasyTagは、かねてから積極的に開発が進められているタグエディタだ。ID3タグ、APEタグ、AACタグ、Vorbis Commentに対応している。

 EasyTagでは、ディレクトリブラウザと自動スキャンにより、ローカルのハードディスク上の音楽ファイルを特定できる。スキャンはカレントディレクトリから直ちに開始される(設定で無効にすることも可能)。複数ファイルのタグを同時に編集することもでき、同じアルバムのファイルを編集する場合に威力を発揮する。

id3_2_thumb.jpg
EasyTagのスクリーンショット

 アルバム情報の取得はオンライン音楽データベースのCDDBから行う。使用するURLは設定が可能。ファイアウォール内からもアクセスできるよう、プロキシサーバの使用にも対応している。タグの追加は、手動で行うこともできるし、ファイル名の規則やCDDB検索に基づいて自動で行うこともできる。CDDBのキーワード検索で、複数の候補を探すことも可能だ。キーワード検索は、アルバムのタイトルやアーティスト名で調べる場合に役立つ。

 CDDBの検索結果をファイルに反映させるには、エディタ上に表示された音楽ファイルの順序と、検索で返された各曲のトラック順序が一致している必要がある。検索結果のトラックの順序はドラッグ&ドロップで変更できる。また、順序付けを用いない別の方法もある。Levenshteinアルゴリズムを使って、トラックの順序に関係なく、検索結果とファイルの対応付けを自動的に処理させるというものだ。実際に音楽ファイルのコレクションを扱う中では、両方の方法を組み合わせて使う必要があるだろう。

 リストの中で適切な対応付けを選択すると、各ファイルのタグの内容が自動的に更新される。更新内容をファイルに保存するには、明示的に保存操作を行う必要がある。その点は多くのタグエディタと同様だ。

 私が試してみたところ、アルバムの自動認識機能はたいへん優れていた。一般的なタイトルのクラシック音楽(たとえばメンデルスゾーンの「交響曲第4番・第5番」)でも、トラック数とファイル名に基づいて、アルバムを認識できたものもあった。多数の候補を参照する必要はあったが、その中から完全に一致するアルバムを見つけ出せた。ただし、演奏するオーケストラ名のデータは入っていなかった。

 オンラインドキュメントでは、ジャケット画像の機能について言及がないが、個々の音楽ファイルのタグに自動で追加されているようだ。この機能の有効/無効を切り替えるオプションはない。EasyTagの特徴の1つが、アルバムの曲順に応じてファイル名を自動で変更する機能だ。ファイル名の形式は、タグとファイル名スキャンのダイアログで設定できる。ファイル名のオプションでは、アーティスト、トラック番号、ジャンル、作曲者など、ファイルのタグデータを使用できる。また、同様にスキャンダイアログを使って、ファイル名からタグ情報を取得することも可能だ。ダイアログでは、ファイル名のどこからタグ情報を取得するかをプレビューできる。

 EasyTagは、使い方はCowbellほどシンプルではないが、その分洗練されている。さまざまなタグ付けのオプションを備え、ジャンルの自動適用や、CDDB検索結果からの手動選択なども可能だ。インタフェースが若干複雑な分、豊富な機能を活用できる。

Audio Tag Tool

 Audio Tag Toolは、デスクトップ上でファイルを手動で編集する用途に限定されたタグエディタだ。ID3タグとVorbisタグに対応しているが、ドキュメントはほぼないに等しい。音楽ファイルの選択はディレクトリブラウザで行う。タグ情報の自動検索機能や、外部プラグインのサポート、外部サービスとの連携といった機能はない。ジャケット画像の取得や埋め込みにも対応していない。

 複数ファイルに対する一括処理は可能だ。指定したタグの内容を、選択したファイルにまとめて適用できる。ファイル名の規則に基づいてタグを指定することもできるので、一括適用するタグでも、それぞれのファイルに応じた内容を設定できる。

 Audio Tag Toolの特徴は、ファイル名の変更に関するオプションが豊富なことだ。メインウィンドウのタブで、7種類のタグ情報(タイトル、アーティスト、アルバム、リリース年、コメント、トラック、ジャンル)を任意の順序で指定できる。ファイル名からタグ情報を取得する場合も同様のインタフェースで操作する。ファイル名でのタグの順序を指定すれば、あとは適切に処理される。

 Audio Tag Toolは、もっぱら既存のタグを手動で編集するためのツールだ。タグの付いていない一連のファイルに対し、外部から取得した情報ですばやく簡単にタグを適用したり、ジャケット画像を取り込んだりといった用途には向いていない。

Kid3

 Kid3では、編集するローカルの音楽ファイルの選択は、他のタグエディタと同様にディレクトリツリーブラウザで行う。タグ情報の取得では、DiscogsMusicBrainzGnuDBTrackTypeといった外部サービスと連携する。

 タグのインポートは、これらの外部サービスのいずれからでも行える。複数のサービスを試した中から最適な結果を選ぶことも簡単だ。ほとんどのサービスでは検索は高速に処理されるが、MusicBrainzだけはやはり時間がかかる。キーワードによる単純な検索ではなく、音楽ファイルを読み込んで“指紋”を作成する必要があるからだ。

 完全一致するアルバム情報をすばやく見つけるという点では、Kid3が一番だ。中には、MusicBrainzの指紋による検索が必要なアルバムもあったが(たとえばBostonのデビューアルバム「Boston」)、各トラックを正確に識別できた。あいにく、MusicBrainzではジャンル情報が得られないため、タグをファイルに適用する前に手動で指定する必要がある。

 また、アルバムによっては、Discogsを使ったキーワードベースの高速な検索でも、同じく正確な情報を取得できた(たとえばBilly Joelの「Storm Front」)。だがその場合も、複数の候補の中から完全一致するものを自ら探す必要があった。

 外部プラグインによる機能拡張には対応していない。ジャケット画像がある場合は自動でダウンロードし、ファイルに付加する。複数ファイルを対象としたタグ付けと名前変更も可能。ただし、単一のアルバムディレクトリに対してしか行えない。多くのエディタが備える、アンダースコア付きのファイル名をスペース付きのファイル名に変更する機能は、デフォルトでは有効になっていないが、設定ダイアログから手動で変更できる。

 複数のタグフィールドを使ったファイル名の変更も可能。あらかじめ多数の書式が用意されており、目的に応じてファイルごとに編集できる。使用できるタグは、トラック、アルバム、タイトル、アーティスト、リリース年。用意された書式の多くは、スペースやハイフンなどの記号を使ったバリエーションだ。同じ書式指定の方法で、ファイル名から抜き出した内容をタグに適用することもできる。

 Kid3の最大の難点は、使い方がわかりにくいことだ。どうやら、[Tools]→[Apply File Name Format]と[Tools]→[Apply Tag Format]を実行してから保存を行わないと、ファイル名やタグは変更されないようだ。ところが、これら2つのメニューを選択しても、UI上は何の変化もない。このため、何も実行されていないかのように思えてしまう。これらの適用を手動で行う必要があるのなら、メニュー、設定ダイアログ、ツールバーのいずれかに、適用済みかどうかを表示してくれる方がよいと思う。あるいは、[Save]を実行するときに自動で処理してくれるようにするかだ。

 Kid3は、個々のトラックに完全一致する情報を見つけるという面では、今回試用したツールの中で最も優れていた。だが、UIはわかりにくいし、オンラインドキュメントも一般的なデスクトップユーザ向けとしては不十分だ。

Picard

 Picardは、多くのタグエディタより一歩進んだ面がある。単なるキーワードベースの検索ではなく、音楽ファイルの“指紋”(チェックサムを複雑にしたようなもの)を使って、音楽コレクションのデータベースを検索できる点だ。理屈上は、指紋を使う方が、自動でタグ付けを行う際の検索結果は向上する。ただし実際には、可能性のある候補が多数見つかり、指紋が完全に一致することは少ない。だが、完全一致がなくても、検索結果に対応するメタデータ(トラック名、順序、アルバムのタイトル、アーティストなど)のマッチングは可能だ。こうして得られた検索結果をドラッグ&ドロップ操作で音楽ファイルに対応付けることで、ファイルのタグ付けをかなり簡単に行うことができる。

 編集する音楽ファイルの選択は、他のツールと同様のディレクトリブラウザで行う。ディレクトリブラウザからメインウィンドウの中央のペインにアルバムディレクトリをドラッグすると、タグなしのファイルはUnmatched Filesフォルダに分類され、Picardが認識できるタグ付きのファイルはClustersフォルダに分類される。今回の試用で使ったファイルはタグなしなので、すべてUnmatched Filesフォルダに分類された。

 操作はデフォルトのWebブラウザと連携して進める。アルバムを検索すると、該当する候補がWebブラウザに表示される。その中から、適切な候補の[Tagger]アイコンを選択すると、選択したアルバムがPicardのウィンドウの右ペインで開く。次に、Unmatched Filesフォルダのファイルを、右ペインの該当するアルバムにドラッグする。すると、各項目に色付きのアイコンが表示される。これは、MusicBrainzから取得したデータとの照合の結果を表す。緑色のチェックマークのアイコンは、トラックが最新状態であることを表す。音符のアイコンは、データベースのファイルのうちでローカルのファイルに対応しなかったものを示す。色付きの長方形は、ローカルのファイルとMusicBrainzのファイル情報との指紋の一致度を表す。赤は一致度が低かったファイル、緑は一致度が高かったファイルだ。

 Picardの特徴の1つが、複数のアルバムをまとめて処理できることだ。アルバム情報の取得は1つずつ行う方がよいだろうが、複数のアルバムの情報を蓄積したうえで、各アルバムのタグ情報を編集してから、すべてのタグをまとめて適用するというやり方が可能だ。このため、タグなしの音楽ファイルが大量にある場合には、他のタグエディタよりも処理しやすい。

 Picardはカスタマイズ性も高い。MusicBrainzとの密接な連携(両プロジェクトは同じチームが開発を担当)に加え、プラグインを使ってインターネット上の他のアーカイブも利用できる。基本プログラムには多数のプラグインが用意されており、Last.fm、Google、Amazon、CastAlbums.org、Lortel Archivesなど、各種の外部リソースと連携できる。ジャケット画像は、音楽ファイルに埋め込むことも、アルバムディレクトリに保存することも可能。内蔵のスクリプト言語では、タグ情報に基づいてファイル名を変更したり、ファイル名からタグ情報を設定したりできる。

 こうした特長がある一方で、気になった面もいくつかあった。ワークスペースマネージャを利用して、Picardとブラウザを別々のワークスペースに配置している場合、ワークスペースを切り替えるたびに、Picardのディレクトリツリーブラウザがルートディレクトリに戻ってしまう。このため、ワークスペースの行き来のたびに、音楽ファイルのディレクトリに移動し直さなくてはならない。これにはかなり辟易した。

 ジャンルのタグを追加することもできなかった。また、複数のアルバム情報の検索や蓄積を行えるPicardだが、指紋の作成やインターネット経由での照合にはかなり時間がかかる。

 ドラッグ&ドロップによる操作では、検索結果やタグを適用する際に、他のタグエディタよりは直接的な制御を行えるし、複数のアルバムも編集できる。しかし全体として、Picardは処理がやや遅く、検索結果の正確性も他のタグエディタより劣るように感じられた。Picardは、タグのない音楽ファイルを大量に処理するときに最初のタグエディタとして使うのがよいだろう。その後、個々のファイルを編集するときには、別のタグエディタを使う方が、処理速度、包括性、正確性といった面でよいかもしれない。

Ex Falso

 Ex Falsoは、QuodLibetというオーディオプレーヤーを基盤としたスタンドアロンのタグエディタだ。いずれのプロジェクトもGoogle Codeのページにある。しかし、今回の試用は残念な結果に終わった。

 Ex Falsoには、タグフィールドに基づいてファイル名を変更する機能があるが、使用できるタグについての情報はほとんどない。メインウィンドウ内のタブには、ファイル名の書式編集とプレビューの機能があり、同様の形式の別のタブには、ファイル名をタグ情報に対応付ける機能がある。

 Ex Falsoは一般的なディレクトリツリーブラウザを備えている。アルバムディレクトリを選択すると、その中のすべての音楽ファイルがメインウィンドウの[Songs]ペインに表示される。オンラインドキュメントには、外部プラグインもサポートしているとの記述があるが、入手方法や使い方についての情報はWebサイト上にはあまり出ていない。プラグインを利用したGoogle、Wikipedia、CDDBの自動検索機能も搭載しているが、手動で有効にする必要がある。検索は、音楽ファイルを選択し、右クリックメニューから実行できる。だが、私が試用したバージョンのEx Falsoでは、いずれの検索も機能しなかった。こうしたことから、私としては、このツールをタグ編集に使用することはお勧めできない。

まとめ

 いずれのエディタを利用した場合も、音楽ファイルへのタグ付けにはかなり時間がかかった。各ファイルの先頭にタグ情報を付加する必要があり、それにはファイル全体を読み込む必要があるからだと思う。

 多数のファイルへのタグ付けをなるべく自動化して進めるには、まずPicardを使うのがよいだろう。複数のアルバムに対する一括処理を直感的な操作で行える。

 Kid3には、検索を円滑化する方法がいくつかある。UIの使い方や、インターネット上の複数のリソースを試してみてタグ情報を取得する方法を身に付ければ、効率よく利用できるはずだ。

 だが、今回のベストワンはEasyTagだと思う。唯一の難点は、複数のアルバムの情報をまとめてタグ処理する機能がないことだ。それがあれば、食事の間にバッチ処理を進めるといったことができるからだ。だが、他のツールより処理は高速だし、クラシック、クリスマス音楽、サウンドトラックなどの比較的マイナーなアルバムでも、検索結果の正確性が高かった。また、アルバムのジャンルは自動で設定され、手動で編集できるタグの種類も他のツールより多い。UIも直感的で操作しやすい。しかも、古くからあるツールで安定度も高い。

Michael J. Hammelは、コロラド州コロラドスプリングズを拠点とするCEI(Colorado Engineering, Inc.)のソフトウェアエンジニア長。ソフトウェア開発/管理における20年以上の経験があり、様々なオンライン/紙媒体の雑誌で100を越える記事を執筆してきた。GIMP関連の3冊を含む、オープンソース関連の複数の書籍の著者。

Linux.com 原文(2008年12月19日)