1

Taglib Sharp を使用しているときに、非常に奇妙な問題に遭遇しました。以下に示すコードを使用して、ビデオ ファイルのレーティングを変更しています。

        TagLib.File file = TagLib.File.Create(FULLFILEPATH);
        TagLib.Tag Tag = file.GetTag(TagTypes.Id3v2);
        TagLib.Id3v2.PopularimeterFrame frame = TagLib.Id3v2.PopularimeterFrame.Get((TagLib.Id3v2.Tag)Tag, "WindowsUser", true);
        frame.Rating = 255;
        file.Save();

プロパティから動画ファイルの詳細タブを開いてファイルを保存した後、レーティングが変わらないようです。しかし、C# でそのファイルをプログラムで再度読み取り、その評価値を確認すると、255 です。なぜこれが発生し、評価値が更新されないのですか?

4

1 に答える 1

3

Check music file rating with VB.NET + WinFormsへの回答を見ると、タグが iD3v2.4 として保存され、Windows が iD3v2.3 のみをサポートしていることが原因として考えられます。

次のコードを使用して、TagLib# にタグを iD3v2.3 として保存させることができます。

TagLib.Id3v2.Tag.DefaultVersion = 3;
TagLib.Id3v2.Tag.ForceDefaultVersion = true;
于 2013-09-09T17:36:45.990 に答える