【发布时间】:2009-09-05 02:56:47
【问题描述】:
我知道 mp3、ogg 和 flac 等格式都有艺术家、专辑等标签。 如果可用,我想提取该信息。现在我正在使用 ffmpeg 来转换音频,所以在 ffmpeg 中进行转换的方法很方便,但不是必需的。我的网站是用 C# ASP.NET 编写的。我不介意解析 cmd 行输出或使用 lib 调用。
我可以用什么来读取所有这些格式的标签?
【问题讨论】:
我知道 mp3、ogg 和 flac 等格式都有艺术家、专辑等标签。 如果可用,我想提取该信息。现在我正在使用 ffmpeg 来转换音频,所以在 ffmpeg 中进行转换的方法很方便,但不是必需的。我的网站是用 C# ASP.NET 编写的。我不介意解析 cmd 行输出或使用 lib 调用。
我可以用什么来读取所有这些格式的标签?
【问题讨论】:
对于您询问的具体三个,有两种不同的标记方案。
MP3 通常带有 ID3 标记; ID3v2 是最灵活的。 ID3 有很多版本,您会发现不同的播放器支持。 id3lib 是 ID3 的参考库,我确信有一个托管解决方案——因为“ID3”是非常好的 Google 素材。通过使用“ID3”I found a lot of recommendations for TagLib Sharp 搜索 StackOverflow。
Ogg Vorbis(注意指出 Vorbis)和 FLAC 共享一种称为 Vorbis 评论 的标记格式。更多谷歌素材。
长与短:您不是在寻找一种解决方案,这取决于您想要支持多少种格式。每个人都倾向于以自己的方式做事。您在部署时会遇到的另一件事是播放器不一致——很长时间以来,当我编写解决此问题的代码时,iTunes 和 foobar2000 对专辑艺术家的处理方式不同。我已经有一段时间没有编写这些东西了,所以很难说今天的玩家在兼容性方面处于什么位置。
最好的办法是获取一些有代表性的样本并跳转到您最喜欢的二进制编辑器中,看看不同的玩家如何保存他们的标签。不过不用担心:在您冒险进入 tagland 之前有很多人。
【讨论】: