ID3タグ構造をダンプするプログラム


12

ID3v2タグの完全な構造をダンプするプログラムはありますか?

フレームの名前と値だけでなく、フレームの順序、テキストエンコーディング、説明のエンコーディング(TXXXフレームの場合)、非同期の存在、複数のタグの存在などの完全な情報...

背景:なぜいくつかのファイルがいくつかのプログラムと互換性がないのか、かなり興味があります。たとえば、foobar2000によって記述されたID3v2.4タグの一部は、Winampによって読み取られません。Mutagenで編集すると修正されますが、foobar2000で編集すると再び壊れます。バージョンやデータエンコーディングではありません。他のほとんどのv2.4 UTF-16タグは正常に動作します...ただし、foobar2000を使用してタグをv2.3に変換してからv2.4に戻すと、Winampで正常に動作し始めます。 -この最後のビットはちょうどことはありません任意の感覚を。

編集: Linuxまたは/およびWindows。

回答:


4

Windowsのmp3diagsは、既知のエラーをチェックし、未加工のタグを確認できるようにする必要があります。既知のエラーがリストされますが、未加工のタグも確認できます。テキストファイルにダンプする方法を見つけることができないようです。タグの数が限られているため、検査やタグの一括修正に適しています。

ここに画像の説明を入力してください


これは非常に興味深いようです。ありがとう。(タグフレームで使用されているエンコーディングはまだ表示されませんが、それ以外の場合は十分な詳細が提供されます。)
user1686

MP3Diagsには独自の欠点もあるようです(たとえば、ID3タグを編集すると、2.3.0にダウングレードされます)が、他の種類のストリームを修正するのには適しています。
user1686

10

exiftoolは多くの情報を提供できます。

exiftool -v3 -l FILENAME.mp3


exiftoolは、ID3v4を含む生の情報を実際にダンプできます!本当にすごい!
haimg

2

beaglebuddy MP3ライブラリは、あなたが求めているものを行います。ID3v2.3タグをサポートし、ID3v2.4タグのサポートは2014年5月までに完了する予定です。生のバイトと解析された値が表示されます。サンプル出力を含めました。

ID3v2.4 frame: SONG_TITLE
frame header
   bytes..................: 0x54 0x49 0x54 0x32 0x00 0x00 0x00 0x0A 0x00 0x00 
   frame type.............: TIT2: SONG_TITLE - title/songname/content description
   frame header size......: 10
   frame body size........: 10
   tag  alter preservation: false
   file alter preservation: false
   read only..............: false
   compression............: false
   encryption.............: false
   grouping identity......: false
   uncompressed size......: 0
   encryption method......: 0
   unsynchronized.........: false
   data length indicator..: 0
   group Id...............: 0
frame body: text information
   bytes...: 10 bytes
             0x03 0x54 0x65 0x73 0x74 0x20 0x4E 0x61 0x6D 0x65 
   encoding: 3 - UTF-8
   text....: Test Name

1

独自のツールを作成する必要がある場合があります。 この場合、TagLibid3libが役立つ場合があります。

特筆すべきは、id3libのホームページにあるプロジェクトリストです。このリストには、プログラミングなしで問題を解決できるツールがいくつか含まれています。


以前にid3libの一部として提供されているid3infoツールを試しましたが、ID3v2.4タグを持つファイルも認識できませんでした。v2.3のみです。ただし、これがツールによるものなのかライブラリ自体によるものなのかはわかりません。両方を見ていきますが、そのようなライブラリは一般に、タグ構造(エンコード、順序など)を開発者から隠し、タグと値のペアのみを公開する傾向があります。
user1686

1

Mutagen pythonライブラリには、比較の比較の前後に行うのに適した値の非常にクリーンで完全なダンプ/エクスポートを提供するmid3v2というユーティリティが含まれています。

pythonスクリプトを設定したことがない場合は、exiftoolsを理解する価値があるかもしれませんが、mid3v2の方がはるかに簡単です。

metamp3はこのために設計されていますが、IMOは少し時代遅れであり、かなり一般的なデファクトスタンダード(読み取り:iTunes)フィールドを「未定義」として示しています。

ID3RawTagViewerとID3TagBackupも非常に古いツールですが、役立つ場合もあります。

MP3Tagsには「グローバルエクスポート」プラグインがありますが、場合によっては、内部の「マップされた」フィールド名を使用して真のフレーム名を「隠す」ため、異なる形式(FLACやMP3など)で同じです。

オフトピックですが、Ex FalsoはMutagen / Quod Libetファミリーのもう1つのメンバーであり、FLACに対して非常にうまく機能しますが、何らかの理由でID3のすべての非QLカスタムTXXXタグを「隠します」。

ところで、多くの人がお気に入りのHEXエディターを使用しています。。。


先にMutagenを使用しましたが、metamp3とID3RawTagViewerをチェックアウトします。他のツールは抽象的な「name = value」タグのみを表示するため、この目的には適していません。
-user1686

0

私は決してid3の専門家ではありませんが、私は最近自分のライブラリに取り組んでいます。OSを指定しませんでした。私はほとんど独占的にLinuxを使用しています。私が使用しているいくつかのツールは、id3info(CLI)およびkid3-qt(qt KDE id3)です。後者は興味深いです。必要なものがすべて得られるかどうかはわかりませんが、少なくとも求めていると思われるもののいくつかを得ることができる多くの情報を示しています。よりポータブルなツールを探しているなら、mid3v2と呼ばれるpythonツールを探しているだけかもしれません。私はちょうどそれをチェックアウトし、引数--list-rawを持っていますが、これは非常に便利なようです!


感謝しますが、id3infoもkid3-qtも私が望むことをしません。フォーマットされた値のみを表示します。実際、id3infoはID3v2.4タグをまったく認識しません。mid3v2は、Mutagenへの単なるインターフェイスです。これは、タグのサポートに関しては最高のものの1つですが、ツールやMutagenライブラリ自体からは、生の構造に関する十分な情報が得られません。
user1686
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.