OS X用の優れたコマンドラインID3ツールはありますか?


45

ID3v2をサポートするコマンドライン* ID3ツールを知っている人は誰でも、Mac OS Xで妥当な労力で作業できるようになりますか?タグの読み取りと書き込みの両方をサポートする必要があります。

* Pythonスクリプトなどから呼び出すことができるようにしたいので、GUIツールではできません。)

id3toolのユーティリティは、そうでない場合は良いですが、ID3v2のをサポートしていない(したがって、iTunesと同様にその再生されません)。ソースからコンパイルする必要がありましたが、Xcodeと開発者ツール(特にCコンパイラーを含む)を搭載したMacでは、かなり簡単でした。とにかく、特にid3toolと同様のコマンドラインオプションを持つものが欲しいです。1つのファイルにタグを付ける例を次に示します。

id3tool -t "Song Title" -r Artist -a "Album Name" -c 2 track-02.mp3

私はこのようなものを書くことに取り組んでいます... Pythonで利用可能ないくつかのライブラリがあり、それらを利用するビートと呼ばれるツールがありますので、それがどのように書かれているかを調査しています。
ロバートSチャシオ

2
さらに... MusicBrainz PicardはPythonで書かれており、オープンソースですので、コードやライブラリの使用からも多くのことを収集する必要があります。
ロバートSチャシオ

私はピカードは単に素晴らしいです、同意
ロハンモンガ

回答:


48

Homebrewをインストールしている場合(強く推奨)、次のようにできます。

brew install id3lib

これには、いくつかのID3コマンドラインツールをインストールしid3tagid3convertid3cpid3info。Pythonやperlスクリプトの必要はありません。通常のシェルコマンドを使用するだけです。

Usage: id3tag [OPTIONS]... [FILES]...
   -h         --help            Print help and exit
   -V         --version         Print version and exit
   -1         --v1tag           Render only the id3v1 tag (default=off)
   -2         --v2tag           Render only the id3v2 tag (default=off)
   -aSTRING   --artist=STRING   Set the artist information
   -ASTRING   --album=STRING    Set the album title information
   -sSTRING   --song=STRING     Set the title information
   -cSTRING   --comment=STRING  Set the comment information
   -CSTRING   --desc=STRING     Set the comment description
   -ySTRING   --year=STRING     Set the year
   -tSTRING   --track=STRING    Set the track number
   -TSTRING   --total=STRING    Set the total number of tracks
   -gSHORT    --genre=SHORT     Set the genre
   -w         --warning         Turn on warnings (for debugging) (default=off)
   -n         --notice          Turn on notices (for debugging) (default=off)

ID3v2をサポートしていますか?
ジョニック

id3libは、macportsなどの他のディストリビューションでも機能します。といえば、ポートから自作に切り替える点はありますか?私は...フィンクからそんなに痛みの切り替えを持っていた
HiQのCJ

「エラー:mid3v2に使用可能な式はありません」。数式の提供に興味がある人はいますか?
ManuelSchneid3r 14

3
@Jonik id3libはID3v1とID3v2の両方を記述および操作できます
jchook 1:13

1
またid3v2、「do-everything」コマンドであるが付属しています。任意のタグをファイルに書き込むことができます。
エドワードフォーク

14

OS X対応版がありますid3libライブラリ利用でき、ここでGitHubの上で。ID3v1とID3v2の両方をサポートすると主張しています。


1
ありがとう!これは私の質問に完全に答えます。そこ使用可能な唯一のソースパッケージでしたが、(開発者向けツールを搭載したMac上で)それからインストールかなり滑らかであった:標準のUnixの料理をconfiguremakemake install。id3libは、id3info(タグの読み取り用)、id3tag(タグの書き込み用)、id3convert、id3cpの4つの個別のバイナリで構成されています。すべて正常に動作します(iTunesはid3tagで記述されたv2タグを尊重します)。
ジョニック

@Jonikライブラリをラップするために何を使用しましたか?あなたが書いたいくつかのpython?
ロバートSチャシオ

@calavera:ええ、ファイル名からトラック番号または名前を特定しようとする単純なスクリプト(「Artist-03-Track.mp3」など)があり、見つかった場合はID3タグにも書き込みます。
ジョニック

@Jonk:喜んで共有しますか?そのようなことをして遊んで拡張するために素晴らしいことだので、私は、Pythonでの多くの経験を持っていない...
ロバート・S Ciaccio

@calavera:ここに行きます。使用法:add-track-names.py *mp3またはadd-track-numbers.py *mp3。一般的なもの(ほとんどのコード)は、別の.pyファイルにあります。私もPythonのコーダーではないので、コードはおそらく「pythonic」とはほど遠いでしょう。:)しかし、私はそれを書いたときに多くのことを(再)学びました。あなたのタグ付けのニーズが私のようなものであれば、おそらく簡単に拡張できます。
ジョニック

5

Pythonモジュール変異原は、名前のコマンドラインID3ツールが同梱されてmid3v2 id3libのための代替。
使用説明書から:

「-」とフレームIDを使用して、ID3v2フレームの値を設定できます。
例:
mid3v2 --TIT3 "Monkey!" file.mp3は、「Subtitle / Description」フレームを「Monkey!」に設定します。


Mutagenはsudo pip install mutagen、pipをインストールした後にインストールできますsudo easy_install pip

あなたは直接実行することができますsudo easy_install mutagenあまりにも
user1259710

4

id3v2を試してください。Huyzが言及したid3libに基づいていますが、id3libを使用したものよりも優れたコマンドラインツールのようです。iTunesが作成したMP3からID3V2タグを簡単にダンプしますが、iTunesが作成したM4Aファイルは(Apple Losslessの場合のように)ダンプしません。

M4Aファイルが必要な場合、別のオプションはffmpegです。そのffprobeコマンドラインツールは、ファイル内のメタデータを出力し、ffmpegを介してメタデータを書き込むことができると信じています。iTunesで作成されたMP3ファイルとM4Aファイルの両方で動作します。ffprobeはすべてのメタデータを表示しない場合があります。mp4v2は別の良いオプションです。

3つのプログラムはすべて、Homebrewを使用して簡単にインストールできます。現在(2012年1月)ffmpegをコンパイルするにはgccが必要brew install --use-gcc ffmpegです。


m4aにmp4v2を提案してくれてありがとう!id3v2はしませんでしたが、チャームのように動作します:(
イリアスカリム

iTunes(macOS 10.13、iTunes 12.7)と互換性のある方法でタグを編集したのは、mp4v2だけです。
ボイドポインター


2

AppleScriptが常にあります。私はそれの大ファンではありませんが、iTunesはスクリプト可能であり、そこからすべてのmp3タグを操作できます。osascriptを使用して、コマンドラインからApplescriptを呼び出すことができます。


2

このサイト:http : //dougscripts.com/itunes/に は、iTunesの上に重ねて音楽ライブラリを操作するための多くの優れたコマンドラインスクリプトとツールがあります。それらのいくつかはあなたが望むことをするかもしれません。一部のツールは無料で、一部はライセンスされています。


2

cliとPythonに慣れているので、CPANでいくつかのPerlモジュールをお勧めします。MP3 :: Tag(およびMP3 :: Tag :: ID3v1および:: ID3v2および:: Utilsと同様)、MP3 :: Info、MP3 :: ID3Libはすべて、ID3タグの読み取りと操作に使用できます。

search.cpan.orgにアクセスして「MP3」を検索すると、さまざまなオプションが見つかります*。

(*ここで、「world」は小さな限定されたオプションセットです...)


1
CLIとPythonはい、しかし、CPANのPerlモジュール...そんなに:-)(あなたもPythonでそれらを使用することができる場合、私はそれを認識していませんでした。または、あなたが代わりにPerlを書く意味でしたか?)個人的に私はこれを得ましたすでに解決されていますが、これは他の人にとって役立つかもしれません。
ジョニック

2

id3v2でさまざまな「アボートトラップ」タイプの問題が発生したので、コマンドラインツールとしても存在するPythonモジュールであるeyeD3を発見しました。上記の他のプログラムのいくつかよりも最近更新されたようです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.