ruby-mp3info,纯Ruby修改mp3标签
原文:http://rubyer.me/blog/747/
我们都知道mp3能储存音乐,其实mp3文件里还能储存“歌手、专辑、曲风、时长”等很多信息。这些信息以一次的格式保存在文件头部和尾部。很多播放器就是根据这些信息来下载歌手头像和歌词的,但很多JS也看到了商机,他们把这些信息填充自己的广告,这样就可以免费传播。最近入手WP7,本来想体验下Zune的魅力,没想到一打开音乐,歌曲信息全变成了一些网址,相当恶心。
幸好找到了ruby-mp3info,迅速对mp3文件做了一次整容。
先到https://github.com/oldsong/ruby-mp3info这里下载,然后解压。
$ ruby install.rb config$ ruby install.rb setup# ruby install.rb install
不要“gem install ruby-mp3info”安装,这个gem已经有1年没有更新,有几个bug。
require "mp3info"#指定编码并打开文件,支持utf-8,gbk,gb2312。默认为iso-8859-1mp3 = Mp3Info.open("myfile.mp3", :encoding => 'utf-8')# 选取并显示所有信息和标签Mp3Info.open("myfile.mp3") do |mp3info| puts mp3infoend# 读/写 使用mp3.tag来读取tag1和tag2# 读时 tag2 优先 tag1# 写时, 两者均写。Mp3Info.open("myfile.mp3") do |mp3| puts mp3.tag.title puts mp3.tag.artist puts mp3.tag.album puts mp3.tag.tracknum mp3.tag.title = "标题" mp3.tag.artist = "艺术家"end