什么是最好的/非常好的元数据阅读器库?
现在,我对从MP3文件(ID3标签?)中读取数据特别感兴趣,但是在不影响ID3标签读取能力的情况下,它可以做得越多(例如,来自图像的EXIF?)越好。
我有兴趣制作一个可以遍历我的媒体(现在是我的音乐文件)的脚本,并确保文件名和目录路径与文件的元数据相对应,然后创建不匹配文件的日志,以便我检查一下是准确的,并做出适当的更改。我认为Ruby或者Python(请参阅专门针对Python的相关问题)将是最好的选择,但是我愿意使用任何语言(并且实际上可能更喜欢C,C ++,Java,Cin case等应用程序语言)该项目已结束)。
解决方案
回答
在Joel" Jaykul" Bennet的网站上有一篇有关使用PowerShell和TagLibSharp的精彩文章。我们可以使用TagLibSharp以任何基于.NET的语言读取元数据,但是PowerShell非常适合我们要执行的操作。
回答
@Thomas Owens PowerShell现在是"通用工程标准"的一部分(从Microsoft的2009产品线开始),并且其中包含Serve 2008. 它有可能像Python或者Ruby一样被安装。我们还提到过,我们愿意使用可以使用TagLibSharp的C#。或者我们可以使用IronPython ...
回答
@Thomas Owens TagLibSharp是一个很好的库。我始终倾向于首先使用PowerShell,一种是用于推广该语言,第二种是因为它在Microsoft域中快速传播。我不反对使用其他语言,我只是倾向于了解和喜欢。 :)祝项目好运。
回答
使用exiftool(它也支持ID3)。用perl编写,但也可以从命令行使用。它具有已编译的Windows和Mac版本。
它比任何其他元数据工具都要领先数光年,它支持几乎所有已知的音频,视频和图像文件,支持书写(不仅是读取),并且知道软件(例如photoshop)和硬件使用的所有自定义/扩展标签(许多相机制造商)。
回答
除了Anon的答案,exiftool非常强大,并且支持各种文件类型,不仅是图像,而且还包括视频,音频和许多文档格式。
exiftool的Ruby接口以mini_exiftool gem的形式提供
看到http://miniexiftool.rubyforge.org/