项目地址:
https://github.com/aidewoode/wahwah
之前在做 black candy 的时候,需要能够从音频文件获取元数据,比如 album 信息,artist 信息等等。然后我在搜索相关 ruby gem 的时候发现 ruby 这一块合适的 gem 很少。我能找到的基本上都是停止维护的,要不就只支持特定的音频格式或者是支持的音频格式太少,但除了一个,就是最终我选择的 taglib-ruby。
taglib-ruby 是基于 C++ 库 taglib 的 ruby 封装,因为这个 gem 基于 taglib 所以支持的格式够多,也一直有维护,taglib-ruby 应该是之前的最优选择。但是 taglib-ruby 最大的问题是难用,我之前为了获取音频文件的 cover 图片,把文档研究的半天才弄懂该怎么用。而且 API 也不够 ruby。反观 python 社区情况会好很多,有 tinytag, mutagen 这些成熟易用的库可以用。所以我决定自己写一个更加易用的 gem。这就是现在的 wahwah。
wahwah 的特点:
如果你有读取音频元数据这方面的需求,不妨试一试 wahwah。wahwah 有完整的测试,包括一些特殊编码或者不规范编码的文件都有测试。我相信一般的文件都能正确解析,如果遇到无法解析的情况,欢迎提交 issue。后续 wahwah 也会继续添加更多音频格式的支持。