Tag: taglib sharp

taglib-sharp中是否有与Label / Publisher等效的字段?

我正在尝试使用Taglib-sharp更新标签/发布者字段,但我无法使用对象浏览器在其对象层次结构中的任何位置看到它。 我搜索了谷歌和文档,它看起来像是一个没有照顾的领域。 在我寻找可以编辑这些字段的替代方案(可以任何人建议吗?)之前,我想我会有最后一个破解,并在StackOverflow社区内询问谁熟悉TagLib-sharp有更明智的意见? 提前致谢, 弗朗西斯 更新:我已经调查了其他库,如mpg123和UltraID3Lib,但它们似乎有相同的限制。

Taglib-sharp:如何使用IFileAbstraction来允许从流中读取元数据?

我正在尝试使用TagLib读取存储在IsolatedStorage中的mp3文件的元数据。 我知道TagLib通常只将文件路径作为输入,但是当WP使用沙箱环境时我需要使用流。 按照本教程( http://www.geekchamp.com/articles/reading-and-writing-metadata-tags-with-taglib ),我创建了一个iFileAbstraction接口: public class SimpleFile { public SimpleFile(string Name, Stream Stream) { this.Name = Name; this.Stream = Stream; } public string Name { get; set; } public Stream Stream { get; set; } } public class SimpleFileAbstraction : TagLib.File.IFileAbstraction { private SimpleFile file; public SimpleFileAbstraction(SimpleFile file) { this.file = file; } public […]

是否可以使用TagLibSharp从MP3文件中删除Lyrics3v2标签?

我想知道是否可以使用TagLibSharp库从MP3文件中删除Lyrics3v2标签类型。 该文档说块条目以单词“ LYRICSBEGIN ”开头并以“ LYRICS200 ”结尾,同时它表示应该存在ID3标签以存在Lyrics3v2标签……但它没有指定是否引用ID3v1或ID3v2标签,或其中任何一个,反正我不明白那部分,因为Lyrics3v2标签是单一标签类型,不是ID3v1 / ID3v2标签类型的一部分,它在mp3标头上有自己的条目所以……我不明白它对ID3v1 / ID3v2 “依赖”意味着什么。 无论如何假设信息是正确的,那么我应该能够使用TagLibSharp从包含Lyrics3v2标签的mp3文件中删除ID3v1和ID3v2标签,然后该标签也将被删除?但是,标签仍然存在。 此外,暴露TagLibSharp类的Lyrics属性似乎不会影响Lyrics3v2标记,所有这些都非常令人困惑。

Taglib锐利不编辑评级

使用Taglib sharp时遇到了一个非常奇怪的问题。 我使用下面显示的代码更改了video文件的评级。 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(); 当我从属性打开video文件的详细信息选项卡时保存文件后,评级似乎没有改变。 但是当我再次在c#中以编程方式读取该文件并检查其评级值时,它是255.为什么会发生这种情况以及为什么评级值不会更新?

如何使用TagLib-Sharp从MP3文件中读取XingHeaders和VBRIHeaders

我需要使用TagLib-Sharp提取存储在MP3文件的Xing和Fraunhofer VBRI标题中的信息。 我在网上搜索了一个例子,查看了源代码,但是如何使用XingHeader和VBRIHeader类并不明显。 它们看起来不是MPEG的File / AudioFile属性的一部分。 构造函数需要一个在TagLib命名空间中定义的ByteVector类。 任何人都可以提供使用XingHeader和VBRIHeader类的示例吗? 任何帮助将不胜感激。

你怎么能从现有文件中删除MP3标签

我想使用C#从.mp3文件中删除ID3v1,ID3v2.x标记。 我宁愿不自己实现它 – 但使用经过试验和测试的东西。 TagLibSharp看起来非常适合创建标签 – 但它如何用于删除它们? 如果有任何其他库更适合这个我会使用它。

使用tagLib sharp library添加自定义标记

是否可以使用TagLib# libary将自定义标签(例如“SongKey:Em”)添加到mp3文件中?

如何在C#中读取.wav文件的比特率

鉴于我有一个.wav文件,在C#中读取其比特率属性的最佳方法是什么。 我试过Shell,并问了一个问题是“比特率”属性是否固定在索引28中? 没有asnwers所以。 此外,我现在相信Shell不是读取音频文件属性的最佳方式。 我研究过不同的开源媒体库,但是找不到多少。 TagLib#:这个工作正常,但有两个问题。 在比特率非常低(如小于30)的某些情况下,它不反映实际比特率,它只返回0.其次,我不确定是否可以将其用于商业用途。 许可证说http://opensource.org/licenses/LGPL-2.1 NAudio:只是不暴露任何属性来读取比特率,所以我必须计算它。 经过研究,我得到了这个公式来计算比特率。 bitrate = Samplerate * Channels * BitsPerSample。 这在大多数情况下都可以正常工作,但是如果某些.wav文件的BitsPerSample = 0则会失败。 是的文件绝对没问题,我可以播放,但BitsPerSample仍为0。 MediaInfo:再次没有直接属性,必须循环遍历音频文件的所有属性,然后搜索“整体比特率”。 而且必须在项目中添加两个dll,一个是.net包装器,另一个是实际的dll。 为这么长的总结道歉,但我不想问“嘿我怎么能得到音频文件的比特率”而不显示我已经做过的事情。 那么,如果你有一个.wav音频文件,你会用什么库/方法来获得比特率?

读/写音频/video文件的元数据

我需要一些帮助来读/写音频/ vido文件的元数据信息。 我搜索了很多,但没有找到任何有用的东西。 Taglib sharp是一个开源库,提供读/写元数据的帮助。 使用标签lib我可以编辑一些值但不是全部。 TagLib.File videoFile = TagLib.File.Create(“test.mp4”); videoFile.Tag.Title = “Test”; videoFile.Tag.Comment = “Nothing”; 但我无法编辑以下属性,如作者url,生产者等。我如何编辑这些属性?

将位图设置为MP3的封面

我一直试图将位图设置为MP3的封面艺术,但我似乎无法让它工作。 它没有抛出任何错误,但是当我播放MP3时,位图没有显示。 这就是我目前所拥有的: TagLib.File f = TagLib.File.Create(“song.mp3”); Image currentImage = getAlbumArt(result.passedAlbumID); Picture pic = new Picture(); pic.Type = PictureType.FrontCover; pic.MimeType = System.Net.Mime.MediaTypeNames.Image.Jpeg; pic.Description = “Cover”; MemoryStream ms = new MemoryStream(); currentImage.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); ms.Position = 0; pic.Data = ByteVector.FromStream(ms); f.Tag.Pictures = new IPicture[1] { pic }; pictureBox1.Image = currentImage; //testing the image is correct f.Save(); ms.Close();