批处理本地歌单专辑图并写入文件

社会在进步,网络也已足够发达,但是听歌这个简单的事还是不能让人达到随心所欲,因此现在各大音乐平台都有自己的专属版权,并不能共享,为了听不同风格的歌曲,还得一一把软件装个遍,对于只想安静的听个歌还是有点繁琐,体验十分的不友好。

虽然我不是什么音乐发烧友,但是对听歌这个正经事我还是挺在意的,我会把自己喜欢的一些歌曲通过各种办法下载下来,统一保存,这个习惯也已经伴随我多年了。就在最近,我发把歌曲导入到手机的话,显示还是有点单调,只含有标题和艺术家的信息,缺乏专辑图的信息,觉得有点不完美,于是乎,决定花点时间整理一番。

我目前所想达到的效果是,把每首歌的信息补充完整,并且标签信息也能统一,不能混乱,然后每首歌有它自己所对应的专辑图,看起来也稍微舒服些。于是我决定用【千千静听】、【Mp3tag】、【ZonyLrcTools】这三款来进行批量处理。

一般来说,我们存放的本地歌单除了文件名外,还有就是标题、艺术家、专辑集,更丰富的还会有音轨号、CD号、年份、流派等信息,而这些信息也都会存在文件的便签信息里。如果你在电脑里发现不能很好的展现基本的标题、艺术家信息,这时可能需要你手动先进行编辑,这时千千静听就派上用场了,它有个小功能叫 “从文件名猜测标签” 。这样你可以少复制粘贴很多次,当然,前提是你的文件名得正确吧。

a0

这功能可以说很贴心了。

经过这样基本处理之后,接下来处理标签混乱的问题。敲黑板!音乐文件的标签信息:通常见的有 “ID3v1 ID3v2 以及 APEv2” 的规格。

  • ID3v1 mp3信息的简单存储格式,它存储在mp3文件末尾,大小为128个字节,标签头为3个字节,标签头必须为“TAG”,否则认为没有 ID3v1 标签,ID3v1 各项信息都是顺序存储,没有任何标识将其分开,各个信息字节说是固定的,字节数不足的需用 ‘\0’补充,ID3v1 存储编码只能用 ISO-8859-1。
  • ID3v2 到现在一共有4个版本 { ID3v2.1,ID3v2.2,ID3v2.3,ID3v2.4 },最流行的为第3版,即 ID3v2.3,由于 ID3v1 记录在文件末尾,ID3v2 一般记录在文件头,据闻ID3v2.4 也可以记录在文件末尾。
    ID3v2 特点:可伸缩可扩展,支持多编码,结构复杂,操作速度较慢。
    ID3v2 存储格式: 标签头 [10字节] && 若干标签帧 || 扩展标签头 [10字节]
  • APEv2 APEv2 的前一版本APEv1首先被用在 Monkey’s Audio 格式(就是我们常听到的APE无损格式)。但由于 APEv1 仅支持 ASCII 编码,且仅有 Footer 而无 Header,雖然長度能扩展,但使用起來依然非常不方便,所以在後來有個名叫 Frank Klemm 的人將Header 加入了APEv1中,使它能置於檔案開頭或結尾,且改採 UTF-8 編碼方式,再讓它能支援更自由的欄位格式,于是 APEv2 便出現了!APEv2 起初被用在 Musepack 音樂檔中,後來因為它簡單好用的結構,被移植進MP3音樂檔案裡,成為現在MP3標籤的主流格式之一。

但是据我在本机测试,发现 Win 系统的文件管理器并不能识别 APEv2 存储的标签信息,所以看起来 标题 艺术家等信息是空的,也许默认只能读取 ID3 的数据吧,因此还是推荐写入的时候只写入 ID3v2.3 就好。

我们先对【Mp3tag】进行有关设置,找到 选项-标签-Mpeg ,设置过后就可以批量来处理标签信息了。先把读取和写入的选项都勾选上,注意,写入 ID3v2 选择 ID3v2.3 UTF-16 ,还有清除选项切记不要全部打勾,否则会全部清除掉,把需要清除的选上就可以,如图,我这就只保留了 ID3v2

a1

设置完,我们回到主页面,Ctrl+a 全选,右键 保存标签,此时会发现所有的标签信息都会变成 APEv2(ID3v1 ID3v2.3 APEv2) ,接着再次右键,选择 清除标签 ,这时标签会变成 ID3v2.3(ID3v2.3)

至此,批量整理标签告一段落。接下来,我们给每一首歌找到自己的专辑封面图。

ZonyLrcTools (https://github.com/GameBelial/ZonyLrcToolsX) 就是专门为做这件事而诞生的,并且它是直接把专辑图写入到文件里面的,也就是说,你把歌曲拷贝到任何播放设备上,都能显示封面图,简直一劳永逸。另外还有 批量下载歌词 下载的歌词与歌曲在同一文件夹,这两大功能足以让手动党省不少时间和精力了。我们把所有歌曲导入到软件,然后点击 下载专辑图像 ,静静等待即可。

a2

下载完成后,我们再回到【Mp3tag】,你会发现标签信息被攥改了,变成了 ID3v2.3(ID3v1 ID3v2.3) ,很明显其中又多出了 ID3v1 的信息,这时我们只需要 全选清除标签 即可。

a3

另外我还发现,下载完专辑图后,如果标签同时保存了多种格式(ID3 和 APEv2)的话,已经插入专辑图的歌曲文件并不等于 源文件大小+专辑图的大小,反而会占用2倍的图片大小,感觉图片被存储了2次一样,尚不明确原因,但只需最后再次清除一下标签,只保留 ID3v2.3 的话,可以避免这类情况。

最后导入到手机,可以看到效果如下,还是比较满意的。

a0

列表也变得丰富了。

未经允许不得转载:极客萌动 » 批处理本地歌单专辑图并写入文件

赞 (1)

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址