MP4 ファイルからメタデータを取得するためにTagLib#を使用しています。これまでのところ、LagLib# puke を作成する「間違った」拡張子を持つファイルを見つけるまで、すべて正常に動作します.このファイルが jpg 拡張子で保存され、TagLib が例外をスローしたことを発見しました開始時に SOI マーカーが期待されますいくつかのグーグル検索の後、これは jpeg ファイルの読み取りに関係していることがわかりました。
ファイルのマジック ナンバーを見ると、mp400 00 00 20 66 74 79 70
の正しい署名に対応するが返されます。
次の質問があります。
- ファイルの名前を変更せずにメタデータを読み取るにはどうすればよいですか。
- TagLib# はどのようにメタデータを決定しますか?
何か案は?
Ps。私が使用したコードは次のようなものでした:
string file = @"D:\vs2008\Inetpub\wwwroot\Test\data\AA028578_7_2.jpg";
TagLib.File tag = TagLib.File.Create(file);
Console.WriteLine(tag.MimeType);