不知道大家平常是怎么试听下载到的音乐资源的呢?
我的话,因为平时习惯一直开着 Firefox 的关系,所以都是下载下来直接把音乐文件往 Firefox 上一拖来用浏览器试听的。
然后前阵子偶然找歌听的时候发现了一个很奇怪的 FLAC 资源,明明不论是用 EDGE 还是系统自带播放器都是能正常听歌的,但是一拖到 Firefox 里,它就会告诉我不支持播放……
讲道理,Firefox 明明是支持播放 FLAC 的啊,我平时听也没什么问题,怎么这次就不行了呢……所以我高低得查查是什么情况!ヾ(≧へ≦)〃
首先我们来看看这个怪怪的 FLAC 文件,使用 Firefox 播放时,它是这么提示的:
如果用 EDGE 打开的话,就毫无问题了:
一开始的时候,我想到的是跟我为这个 FLAC 添加了 Vorbis 注释(为歌曲添加了封面图,还有演唱者歌曲名等元数据)有关,所以我重新把这些注释和封面图都删除了再去测试,发现仍然是有问题的,而且即便是没有做过任何修改的原文件,也会存在这个问题……
那么问题就出在这个文件本身上咯?于是我首先想到了 Spek。
Spek 是一个可以用来查看音频文件音轨信息的小工具,这个工具多用来鉴定无损音频是否是被 MP3 文件扩充假冒的,因为如果是假无损资源的话由于 MP3 文件不保存 20 kHz 以上的频率,在 Spek 里看就是音频文件的频率到 20 kHz 之后直接就没了,而真无损的话至少 20 kHz 以上的频率也是会保留的。如果对这个工具感兴趣的话,这是它的官网:https://www.spek.cc
基于以上的特性,我首先是怀疑是不是跟假无损资源有关系,所以用 Spek 看了一下,它的频率分布是这个样子的:
看这个样子也不像是从 MP3 转的假 FLAC 的样子,那为什么 Firefox 还是会显示不支持呢?
我不死心,难道是资源的实际格式和扩展名有出入,实际上可能是 APE WAV 之类的结果错改成了 FLAC 文件?
抱着这么个想法,我把文件的扩展名给去掉了,然后尝试使用 VLC 等媒体播放工具来播放,看看调用的是什么解码器播放的。结果可想而知,显示的确实是 FLAC 文件……
我还是不死心,也许只是人家兼容性比较好(你看 Firefox 兼容就不太行的样子啊2333)?
于是我又将这个 FLAC 文件丢到了在线检测文件格式的网站里测试了一下,这里我测试了不止一个网站,大多都是显示是音频文件,FLAC 没毛病云云,但我在其中一个网站的检测结果里发现了问题,感觉比别家靠谱一点所以我在这里特别贴一下它的网址:https://filext.com
FILExt 的检测结果有什么问题呢?
首先它告诉我这好像是一个 MP3 文件:
其次在下面的详细检测报告里,我看到了文件里竟然包含了 ID3 信息以及有封面:
MP3 文件这个经过之前的 Spek 检测,确定应该是没可能的,但是奇怪了,之前明明是打开文件编辑标签发现没有图片我才特意去添加的,结果现在告诉我文件里有 MP3 文件才用的 ID3 标签还自带有图片?那我怎么没看到呢……_(:з)∠)_
然后我想到了我用的是 AIMP 编辑标签的,当时确实没看到有 ID3 的标签存在,但是又想到了有那么一眼在 VLC 里确实诡异的看到了封面(还以为是自动下载的)……
为了验证不是网站识别出错,我选择了万能的记事本直接打开了这个 FLAC 文件,然后我在文件的开头中看到了这么个内容:
都是乱码不是关键,关键是从文本信息来看这个 FLAC 文件确实存在 ID3 信息,而且图片也是包含在内的?那么可能就是我常用的 AIMP 识别上出了问题了。
既然 AIMP 不行,那我就用 Mp3tag 吧!这是一个专门用于编辑音频文件标签信息的工具,实际上论编辑标签这块它或许是比 AIMP 要更专业一些的,我之前不用是因为经常使用 AIMP 听歌的关系,所以并没有特意去用它来做标签编辑,这次算是有用武之处了。关于 Mp3tag,它的官网是这个:https://www.mp3tag.de/en/
打开 Mp3tag,毫不意外的看到了这样的信息——专辑里的所有 FLAC 都包含了 ID3 标签:
既然如此,那把这些多余的 ID3 标签删除了再看下 Firefox 还能正常播放吗?想到这里我试了试,发现原来不能播放的 FLAC 文件这次竟然毫无阻碍的就在 Firefox 上正常播放了!
所以到这里就有结论了,之所以 Firefox 无法播放这个 FLAC,就是因为 FLAC 里错误包含了 ID3 信息导致的。
好,到这里算是找到原因了,心结解开!*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。
但是再看看我手里的这个专辑,一想到我要把它们的 ID3 标签都删除了然后再添加 Vorbis 标签,我就有点犯懒……有没有什么快速转换的法子?
于是网上找了一下,还真被我找到了,我可以借助 Mp3tag 的清除标签和撤销操作这两个功能,就可以实现快速转换了,因为针对 FLAC 文件 Mp3tag 的撤销恢复操作会直接把原来的 ID3 标签恢复成 FLAC 正常使用的 Vorbis 标签!
关于这个方法,我是在这里看到的:https://www.mediamonkey.com/forum/viewtopic.php?t=30377
另外,在这个贴子里我也知道了为什么 FLAC 文件里会包含有 ID3 标签,看起来资源发布者可能是通过 EAC 转码得到的 FLAC 文件,并且转码时没注意 EAC 默认勾选了写入 ID3 标签的关系。
那么到这里记录写完了,最后还有一点让我纠结的点是:我到底该说是 Firefox 的 FLAC 兼容性做的不好呢,还是应该说它比别家更遵循标准呢……?╮(╯-╰)╭
PS:文章特色图片出自 Pixiv 画师4B鉛筆的作品,原链接:https://www.pixiv.net/artworks/108096409