现在,我对从 MP3 文件(ID3 标签?)读取数据特别感兴趣,但它能做的越多(例如图像中的 EXIF?)就越好,而且不会影响 ID3 标签的读取能力。

我有兴趣制作一个脚本来遍历我的媒体(现在是我的音乐文件),并确保文件名和目录路径与文件的元数据相对应,然后创建不匹配文件的日志,以便我可以检查哪些文件准确并做出适当的更改。我正在考虑 Ruby 或 Python(请参阅 一个专门针对Python的相关问题)对此来说是最好的,但我愿意真正使用任何语言(并且实际上可能更喜欢 C、C++、Java、C# 等应用程序语言,以防这个项目失败)。

有帮助吗?

解决方案

Joel "Jaykul" Bennet 上有一篇关于使用 PowerShell 和 TagLibSharp 的精彩文章 地点. 。您可以使用 TagLibSharp 使用任何基于 .NET 的语言读取元数据,但 PowerShell 非常适合您想要执行的操作。

其他提示

使用 exif工具 (它也支持ID3)。用 perl 编写,但也可以从命令行使用。它有编译后的 windows 和 mac 版本。

它比任何其他元数据工具领先光年,支持几乎所有已知的音频、视频和图像文件,支持写入(不仅仅是读取),并且了解软件(例如 Photoshop)和硬件使用的所有自定义/扩展标签(许多相机制造商)。

@Thomas Owens PowerShell 现在是通用工程标准的一部分(从 Microsoft 2009 年产品线开始),并且从 Serve 2008 开始作为一项功能包含在内。它与 Python 或 Ruby 一样有机会被安装。您还提到您愿意使用 C#,它可以使用 TagLibSharp。或者你可以使用 IronPython...

@Thomas Owens TagLibSharp 是一个很好用的库。我总是首先倾向于 PowerShell,一是为了推广该语言,二是因为它在 Microsoft 领域快速传播。我并不反对使用其他语言,我只是倾向于我所知道和喜欢的语言。:) 祝你的项目好运。

根据 Anon 的回答,exiftool 非常强大,支持多种文件类型,不仅是图像,还包括视频、音频和多种文档格式。

exiftool 的 Ruby 接口以 mini_exiftool gem 的形式提供

http://miniexiftool.rubyforge.org/

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top