ZIP ファイル内から日本語の VLC 曲のタイトルを取得するにはどうすればいいですか?

ZIP ファイル内から日本語の VLC 曲のタイトルを取得するにはどうすればいいですか?

最初は次のような問題がありました:日本語のZIPファイルを解凍して文字化けを防ぐ方法

しかし、「unzip -O shift-jis [filename.zip]」はうまく機能し、ファイル名にはきれいな日本語の文字が入りましたが、ファイルのメタデータには機能しなかったようです。

私はこれを見つけました:VLC ウィンドウに奇妙なフォントが表示されるのはなぜですか?しかし、その解決策は字幕のみを対象としているようで、私の問題はVLCの問題ではないようです。オーディオファイルのオーディオプロパティにはタイトルが文字化けしたブロックとして画面に表示されるのですが、ここにコピーして貼り付けると、スペースを取らない文字に変わります: "Ôç©d¸UE - C[h"

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

また、私のネプテューヌRe;Birth1の音楽は他の人の報告: トラック1と18は日本語ですが、残りは文字化けのようです。

名前だけを知りたい場合は、次のようにします。文字化けしたテキストを読み取り可能な形式に変換するにはどうすればよいでしょうか?

答え1

最初のステップ: メタデータがどのようなエンコードで書き込まれるかを決定します。

Exifリーダーをインストールする

sudo apt install libimage-exiftool-perl

VLC で再生したい exif 情報を表示します。

exiftool filename

サンプル出力:

ExifTool Version Number         : 12.49
File Name                       : 10 - グラスホッパー.flac
--cut--
File Type                       : FLAC
File Type Extension             : flac
MIME Type                       : audio/flac
--cut--
Track Number                    : 10
Discnumber                      : 1
Title                           : グラスホッパー
Artist                          : スピッツ
Album                           : ハチミツ
Genre                           : Unknown
Date                            : 1995-09-20
--cut--
Artistsort                      : Spitz
Discid                          : 9c0a320b
Musicbrainz Discid              : KcCfHpYnqpWm4siIth0whkxTBEU-
Tracktotal                      : 11
Duration                        : 0:03:31

ターミナルで exif メタデータを正常に読み取ることができる場合、メタデータは Unicode で書き込まれています。(チェックecho $LANG) また、VLC フォント設定も確認してください。

VLCフォント.png それ以外の場合は、別の文字エンコードで書かれています。日本語の場合は、Shift-JIS または EUC である可能性があります。

exiftoolのテキストを保存します exiftool filename > textfile.txt

Shift-JIS(またはEUC-JP 'eucjp')をUnicode UTF-8にエンコードする

iconv -f sjis -t utf8 textfile.txt

cat textfile.txt

このファイルに豆腐文字が含まれていない場合は、豆腐文字を使用して元の exif を編集できます。

たとえば、 exiftool -Title="グラスホッパー" -Artist="スピッツ" -Album="ハチミツ" この曲/ビデオを VLC で再生して、何が変化するか確認してみましょう。

関連情報