2

libFLAC ライブラリ用の .net c# ラッパーはありますか? そうでない場合、.net フレームワークの C# アプリケーションで libFLAC を使用して FLAC タグを読み取るにはどうすればよいですか? どちらでもない場合、c# で flac タグを読み取るための他のオープンソース ライブラリはありますか?

ありがとう!

4

2 に答える 2

5

あなたに役立つ可能性のあるCodeProject に関する記事があります。

于 2008-11-13T19:00:26.980 に答える
2

私はパーティーに遅れていることを知っていますが、誰かがその特定の情報を必要とする場合に備えて、Wayback マシンのリンクを次に示します。

http://web.archive.org/web/20140122195044/http://www.codeproject.com/Articles/15332/Assembly-to-Read-and-Write-Ogg-Tags-Vorbis-FLAC-an

StackOverflow の規則に従い、上記のリンクが失われた場合に備えて、MetatOGGer、LyricWiki、および Xiph Media Encoder の開発者である「Cyber​​ Sinh」の厚意により、記事のテキストとグラフィックを以下に示します。

私のフリーウェア プロジェクトである MetatOGGer では、Ogg および FLAC ストリームに含まれるタグを読み書きするためのマネージド ライブラリが必要でした。見つからなかったので、自分で書くことにしました。

このライブラリでサポートされているコーデックには、Vorbis、FLAC、および Speex が含まれます。Ogg および FLAC ファイルに関する技術情報も、このライブラリを使用して取得できます。

テキスト タグはSortedList<string, List<string>>、"artist" などの同一のタグを複数持つことができるため、 に格納されます。画像タグはID3PictureFrameBitmapFrameプロパティ (Windows Imaging Component) を使用して のコレクションに格納されます。

このクラスを使用して、Ogg ストリーム内の生データを読み取ることができますOggPageReader

OggTaggerandの使い方FlacTaggerはとても簡単です。ソースコードは完全に文書化されています (フランス語)。メインクラスの図は次のとおりです。

クラス図

メインのコード スニペット:

using Luminescence.Xiph;
OggTagger ogg = new OggTagger(@"C:\Song.ogg");

// Load duration
DateTime time = new DateTime(0);
time = time.AddSeconds(ogg.Duration);

// Tags manipulation
string artist = ogg.Artist;
ogg.Title = "Creep";
SortedList<string, List<string>> tags = ogg.GetAllTags();
BitmapFrame cover = ogg.FlacArts[0].Picture;
于 2016-07-20T16:09:46.367 に答える