問題タブ [mutagen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1546 参照

python - Windows 7 で Python を使用して .mp3 メタデータを操作する

Python を使用して特定の MP3 ファイル ID3 タグを編集しようとしています。私はいくつかの調査を行い、変異原と eyeD3 ライブラリを見つけました。ただし、これらのライブラリの両方で同様の問題が発生しました。どちらの実装も、私が提供しているファイルが存在しないか、.mp3 ファイルではないことを訴えています。

Mp3tag (http://www.mp3tag.de/en/download.html) をダウンロードし、提供するファイルが ID3v2.3(ID3v1 ID3v2.3) としてタグ付けされ、.mp3 ファイルであることを確認しました。

以下は変異原コードで、その後に表示されるエラーが続きます。

eyeD3 を使用して ID3 データを表示しようとすると、次のようなことが発生します。

私の推測では、ファイルを正しく表示していないのでしょうか? これらのファイルの ID3 データを Windows 7 で正しく表示するには、ある種の OS ライブラリを使用する必要がありますか? どんな助けでも大歓迎です。

ありがとう。

0 投票する
1 に答える
993 参照

python - Python 変異原が正しく保存されない

Excel ドキュメントからテキストを取得し、それらを id3 タグとしていくつかの mp3 ファイルに追加しています。Excel ドキュメントのほとんどの文字はロシア語 (Unicode) ですが、一部は英語です。スクリプトを実行すると、英語のタグはすべてメタデータとして正しく書き込まれますが、ロシア語の文字はすべて疑問符として表示されます。コンソールでロシア語の文字を印刷すると、完全に表示されます。なぜ彼らは疑問符として書かれているのですか?

パイソン

0 投票する
0 に答える
222 参照

python - Mutagen がファイルを開けない - ID3BadUnsyncError

mutagen ライブラリを使用して、音楽フォルダー内のファイルの名前を再フォーマットする Python スクリプトを作成しています。スクリプトは次のとおりです。

実行しようとすると、次のようになります。

ここで何が問題なのか誰か知っていますか?

編集: 特定のファイルでは変異誘発が機能しないことが判明しました。try 句を追加してエラーをスキップしたところ、動作するようになりました

0 投票する
0 に答える
226 参照

python - id3 タグは追加されません

私はこの機能を使用します:

id3 タグがないファイルに id3 タグを設定しようとします。例外はスローされません。しかし、それは単に機能しません。何故ですか?出力例を次に示します。

更新 1

関数を次のように変更しました (コードの最後の行を参照)。

そして今、id3 バージョン 1 を書き込みます (これはかなり明らかなようです)。しかし、バージョン 2 の書き方がわかりaudio.tags.save()ません。うまくいきません...

0 投票する
1 に答える
2124 参照

python - mutagen.pyを使用してmp3メタデータをクリアするにはどうすればよいですか?

MP3ファイルのすべてのメタデータをクリアしたいのですが、プロジェクトですでにMutagenを使用しています。ファイルからすべてのメタデータを簡単にクリアする方法はありますか?

0 投票する
1 に答える
1384 参照

python - Windows 7 で Python の Mutagen が機能しない

Windows 7 マシンで Python 2.7 用の mutagen パッケージ (バージョン - mutagen-1.20) をしばらく使用していましたが、残念ながら今日早くに動作しなくなりました。

パッケージを再インストールし、このパッケージに属するすべてのファイルを削除して、もう一度再インストールしましたが、すべての努力が無駄でした. 私を混乱させているのは、これがすべて昨日までうまく機能していたことです。誰かが間違っているかもしれないことを私に指摘できますか. 参照用にいくつかのコードとログを以下に記載しました。ありがとう!

私は eyed3 パッケージもインストールしていますが、これはここで使用されているのと同じ mp3 ファイルでうまく機能しています。残念ながら、eyed3 はミュータジェンほど印象的ではなく、私はこの奇妙な状況に陥っています。

mutagen.py - テストに使用される Python コード (example.mp3 はスクリプトと同じディレクトリにあります):

コマンド プロンプトからのエラー ログ:

0 投票する
1 に答える
1008 参照

python - Python と mutagen を使用した de-mojibaking

でモジベイクされたID3タグを読んでいmutagenます。私の目標は、エンコーディングと Python の処理について学びながら、mojibake を修正することです。

作業中のファイルにはID3v2タグがあり、そのアルバム ( ) フレームを見ています。これは、 ID3 フレームTALBのエンコード バイトによると、 Latin-1 ( ) でエンコードされています。ただし、このフレームのバイトが(キリル文字) でエンコードされていることはわかっています。TALBISO-8859-1cp1251

これまでの私のコードは次のとおりです。

ご覧のとおり、mp3['TALB'].text[0]ここでは Unicode 文字列として表されています。ただし、モジベイクされています。

cp1251これらのバイトを正しい Unicode コードポイントにトランスコードすることはほとんどできません。これまでの私の最高の結果は、非常にふさわしくないものでした:

私がこのアプローチを理解しているように、Unicode 文字列を 8 ビット文字列に変換することになり、それを Unicode にデコードし、デコード元のエンコーディングを指定するため、うまくいきます。

decode('cp1251')問題は、Unicode 文字列を直接処理できないことです。

誰かがこれを説明できますか?ascii文字列を直接操作するときに、7 ビットの範囲にデコードしないようにする方法がわかりませんu''

0 投票する
1 に答える
919 参照

python - 変異原性のあるマックとPCでアルバムアートワークを割り当てる

曲に画像を割り当てようとしていますが、Macでは機能するがPCでは機能しないコードがいくつかあります。

mutagen.easyid3からEasyID3をインポートします

mutagen.id3からインポートID3、APIC、エラー

mutagen.mp3からMP3をインポート

def image_assigner(self):

したがって、Macではこのコードは機能しますが、PCで試してみると機能しません。どんな助けでもいただければ幸いです。ありがとう!

編集 それで、さらに調査を行った後、このコードはアルバムアートワークをWindowsだけでなくMacのmp3ファイルにも保存することがわかりましたが、Macは読み取ることができますがWindowsは読み取ることができないID3v2.4に保存します読んだので、Windowsに保存されていないように見えました。変異原性保存機能でv1=2オプションを使用すると、ID3v1にタグが保存されるはずです(このページの10月4日の投稿を参照)。アルバム、アーティスト、タイトルなどのタグを更新すると機能するようですが、アルバムアートワークに対して更新すると、Windowsエクスプローラーに表示されません。誰かがこの分野での経験があり、これに光を当てることができますか?ありがとう。

0 投票する
1 に答える
812 参照

python - python 変異原 eyed3 書き込み id3v1 タグ

mtagen を使用して mp3 を操作していますが、これを使用して id3v1 タグを記述するのは難しいと感じています。人気のある eyed3 パッケージも、これを行う方法の例を示していないようです。変異原と eyed3 に取り組んだことがある人なら、mp3 ファイルに id3v1 タグを書き込む方法について提案してもらえますか? ありがとう!

0 投票する
2 に答える
327 参照

python - 一括 ID3 タグ スキャンの最適化

音楽コレクションをスキャンし、トラックの ID3 情報を読み取り、その特定のアーティストが 2 回以上アクセスされた曲を持っていない限り、それを保存する小さなツールを作成しています。Mutagenタグの読み取りに使用する予定です。

しかし、私を含めた多くの人の音楽コレクションは膨大で、20,000 曲を超えています。私の知る限り、ライブラリMutagenはすべての曲を開いたり閉じたりして、ID3 情報を取得する必要があります。MP3 はそれほどパフォーマンスに重きを置いているわけではありませんが、曲数が多いです。各アーティストのカウントを保持し、曲数が 2 を超えた場合は情報を保存しないという形で、小規模な最適化を既に計画していますが、私が知る限り、アーティスト ID3 タグを確認するためにすべての曲を開く必要があります。 .

アーティスト名のヒントとしてディレクトリを使用し、アーティストの曲数が 2 を超えたらそのディレクトリの情報を読み取らないというアイデアをいじりましたが、すべての人が適切な Artist/Album/Songs ディレクトリに音楽をセットアップしているわけではありません。

非常に多くの MP3 を開くことのオーバーヘッドを削減する可能性のある他の最適化を念頭に置いている人はいますか?