如何使用libFLAC读取c#中的FLAC标记

libFLAC库是否有.net c#包装器? 如果没有,我如何在.net框架c#应用程序中使用libFLAC读取FLAC标记? 如果没有,是否有其他开源库来读取c#中的flac标签?

谢谢!

有一篇关于CodeProject的文章可能对您有用。

我知道我迟到了,但是如果有人想要这个具体的信息,这里是Wayback机器的链接:

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

根据StackOverflow规则,即使上面的链接丢失,这里是文章的文字和图形,礼貌的“Cyber​​ Sinh”,MetatOGGer的开发者,LyricWiki和Xiph Media Encoder:

对于我的免费软件项目MetatOGGer,我需要一个托管库来读写Ogg和FLAC流中包含的标签。 因为我找不到,我决定自己写一个。

该库支持的编解码器包括Vorbis,FLAC和Speex。 有关Ogg和FLAC文件的技术信息也可以使用此库获取。

文本标签将存储在SortedList>因为您可以使用多个相同的标签,例如“artist”等。图片标签将存储在具有BitmapFrame属性的ID3PictureFrame集合中(Windows Imaging Component) 。

可以使用OggPageReader类读取Ogg流中的任何原始数据。

使用OggTaggerFlacTagger非常容易。 源代码已完整记录(法语)。 这是主要类的图表:

类图

主要代码片段:

 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> tags = ogg.GetAllTags(); BitmapFrame cover = ogg.FlacArts[0].Picture;