博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何使用metaflac管理音乐标签
阅读量:2526 次
发布时间:2019-05-11

本文共 3129 字,大约阅读时间需要 10 分钟。

我已经将CD翻录了很长时间了。 在那段时间里,我使用了几种不同的翻录工具,并且观察到每种工具在标记上似乎有不同的看法,特别是与音乐数据一起保存哪些元数据。 “观察到”是指音乐播放器似乎按照有趣的顺序对专辑进行排序,他们将一个物理目录中的曲目分为两张专辑,或者创建了其他令人沮丧的烦恼。

我还了解到某些标签非常模糊,许多音乐播放器和标签编辑器没有显示它们。 即使这样,在某些极端情况下,他们仍可以使用它们来分类或显示音乐,例如播放器将所有包含XYZ标签的音乐文件与不包含该标签的所有文件分离到不同的专辑中。

因此,如果加标签的应用程序和音乐播放器没有显示“ weirdo”标签,但是它们受到某种程度的影响,您该怎么办?

Metaflac进行救援!

我一直想熟悉 ,它是开源命令行元数据编辑器,这是我选择的开源音乐文件格式。 并不是说类的出色标签编辑软件有什么问题,而是了老话:“如果有的话……”。 另外,从实际的角度来看,运行和的小型专用服务器我的家庭和办公室立体声音乐的需求,这些音乐文件存储在本地,并且运行在非常精简的纯音乐无头环境中,因此命令-行元数据管理工具将非常有用。

下面的屏幕截图显示了我的长期翻录程序所产生的典型问题:Putumayo对哥伦比亚音乐的精彩汇编显示为两张单独的专辑,一张包含单首曲目,另一张包含其余11张:

Album with incorrect tags

我使用metaflac为包含这些轨道的目录中的所有FLAC文件生成了所有标签的列表:

rm -f tags.txt     
for f in *.flac; do
        echo $f >> tags.txt
        metaflac --export-tags-to=tags.tmp "$f"
        cat tags.tmp >> tags.txt
        rm tags.tmp
done

我将其保存为可执行的Shell脚本(请参阅同事关于Bash shell脚本的精彩系列专栏文章, 上的专栏文章)。 基本上,我在这里要做的是创建一个文件tags.txt ,其中包含文件名( echo命令),其所有标志,下一个文件名,依此类推。 这是结果的前几行:

A Guapi.flac     
TITLE=A Guapi
ARTIST=Grupo Bahia
ALBUMARTIST=Various Artists
ALBUM=Putumayo Presents: Colombia
DATE=2001
TRACKTOTAL=12
GENRE=Latin Salsa
MUSICBRAINZ_ALBUMARTISTID=89ad4ac3-39f7-470e-963a-56509c546377
MUSICBRAINZ_ALBUMID=6e096386-1655-4781-967d-f4e32defb0a3
MUSICBRAINZ_ARTISTID=2993268d-feb6-4759-b497-a3ef76936671
DISCID=900a920c
ARTISTSORT=Grupo Bahia
MUSICBRAINZ_DISCID=RwEPU0UpVVR9iMP_nJexZjc_JCc-
COMPILATION=1
MUSICBRAINZ_TRACKID=8a067685-8707-48ff-9040-6a4df4d5b0ff
ALBUMARTISTSORT=50 de Joselito, Los
Cumbia Del Caribe.flac

经过一番调查,结果发现我同时撕了许多我的Putumayo CD,而当时我所使用的任何软件似乎都在一个文件上都贴了MUSICBRAINZ_标签。 (有错误吗?可能是;我在六张专辑中看到了这一点。)此外,关于有时不寻常的排序,请注意,ALBUMARTISTSORT标签在逗号后将西班牙文“ Los”移到了艺术家姓名的末尾。

我使用一个简单的awk脚本列出了tags.txt文件中报告的所有标签:

awk -F = 'index($0,"=") > 0 {print $1}' tags.txt | sort -u

这使用=作为字段分隔符将所有行拆分为多个字段,并打印包含等号的行的第一个字段。 结果通过带有-u标志的排序传递,这消除了输出中的所有重复项(请参阅我的同事Seth Kenlon 的精彩 )。 对于此特定的tags.txt文件,输出为:

ALBUM     
ALBUMARTIST
ALBUMARTISTSORT
ARTIST
ARTISTSORT
COMPILATION
DATE
DISCID
GENRE
MUSICBRAINZ_ALBUMARTISTID
MUSICBRAINZ_ALBUMID
MUSICBRAINZ_ARTISTID
MUSICBRAINZ_DISCID
MUSICBRAINZ_TRACKID
TITLE
TRACKTOTAL

仔细研究一下,我发现MUSICBRAINZ_标志出现在除了一个FLAC文件之外的所有文件上,因此我使用metaflac命令删除了这些标志:

for f in *.flac; do metaflac --remove-tag MUSICBRAINZ_ALBUMARTISTID "$f"; done     
for f in *.flac; do metaflac --remove-tag MUSICBRAINZ_ALBUMID "$f"; done
for f in *.flac; do metaflac --remove-tag MUSICBRAINZ_ARTISTID "$f"; done
for f in *.flac; do metaflac --remove-tag MUSICBRAINZ_DISCID "$f"; done
for f in *.flac; do metaflac --remove-tag MUSICBRAINZ_TRACKID "$f"; done

完成后,我可以使用音乐播放器重建MPD数据库。 结果如下:

Album with correct tags

而且,我们之间-所有12首曲目一起都放在一张专辑中。

所以,是的,我很喜欢metaflac。 我希望我会更频繁地使用它,因为我试图弄乱音乐收藏的音乐标签中的最后一部分怪异之处。 强烈推荐!

和音乐

我花了几个晚上在CBC音乐上听Odario Williams的节目After Dark 。 (加拿大广播公司是加拿大的公共广播公司。)感谢奥达里奥,我真正喜欢的专辑之一是 )的 。 他在这里演唱Eurythmics乐曲“ 。

我在CD上购买了它,现在它以正确组织的标签在音乐服务器上!

翻译自:

转载地址:http://opszd.baihongyu.com/

你可能感兴趣的文章
W3School-CSS 字体(font)实例
查看>>
深度图像特征在推荐和广告中的应用(一)
查看>>
U盘FAT32转换NTFS格式
查看>>
CodeForces - 786B Legacy (线段树+DIjkstra+思维)
查看>>
这是用过的"最差"树形插件
查看>>
IBM的人工智能“沃森”首次确诊罕见白血病,只用了10分钟!
查看>>
bzoj 2763: [JLOI2011]飞行路线 分层图
查看>>
Mybatis
查看>>
11th Iran Nationwide Internet Contest 解题报告
查看>>
.net 委托 +lamda表达式
查看>>
第一个shell脚本——修改配置文件
查看>>
hdu_4742_Pinball Game 3D(cdq分治+树状数组)
查看>>
78. Subsets
查看>>
关于assert和de-assert的解释
查看>>
nodejs语法问题
查看>>
bzoj2190: [SDOI2008]仪仗队(欧拉)
查看>>
hdoj 1013
查看>>
HAproxy的安装配置及动静分离
查看>>
Vue2.0 的漫长学习ing-2-1
查看>>
oracle触发器和存储过程的格式
查看>>