什么是 MQA?
从网络商店,尤其是 Tidal 购买 FLAC 资源的用户应当了解辨识 MQA 编码文件的方法,这样才能避免踩坑。如果想看点好话,可以点 官网介绍。
Master Quality Authenticated (MQA) 是一种音频技术,最初由英国高保真音响制造商 Meridian Audio 的联合创始人 Bob Stuart 开发,现已获得 MQA 有限公司的许可。MQA 的主要思想是将高清母带录音打包成标清文件的大小,如此更易下载与传输。
从技术角度来说:MQA 音频文件从高位深和采样率的 FLAC 文件,通常是 24 bit/96 kHz 开始。MQA 编码器将音频分割成两部分音频信息——高于和低于 48 kHz 的内容。≤48 kHz 的信号会被向下转换至 16-bit,可能会抖动,也可能直接截断。这就是最终文件里的「较高」16-bit 输出的由来。而 >48 kHz 的信号则被一种未知的方法压缩,但不妨假定其原理与转码成 MP3 或 AC3 类似。压缩后的 >48 kHz 的信号成为了最终文件里的「较低」8-bit 输出。最后,MQA 编码器将这高 16-bit 音频和低 8-bit 音频重新组装成最终的 MQA FLAC 输出文件。低 8-bit 输出实际上并非 PCM 音频,所以如果你单独播放它,听起来就像白噪声一样。如果你以标准的 FLAC 解码器(「折叠的」)播放一份标准的 24/48 MQA FLAC,它听起来就像一份标准的 24/48 文件,只不过带了些你可能听不见的噪声。但如果你以 MQA 解码器(「展开的」)播放一份标准的 24/48 MQA FLAC,它会将这低 8-bit 输出重现成某种不同于噪声的内容,但是你也可能听不见。
对于 CDDA 音频它也做相同的事,除了较高的 13-bit 音频可能没动,或是暗中抖动过,较低的 3-bit 音频已被压缩。
辨识 MQA 文件
通过元数据标签
辨识 MQA 最简单的方法就是检查文件的元数据标签。如果你够走运,其中会有调用 MQA 编码器的内容,如下文所示:
示例元数据
~\Yes - Fragile > mediainfo 1\ Roundabout.flac
General
Complete name : 1 Roundabout.flac
Format : FLAC
Format/Info : Free Lossless Audio Codec
File size : 114 MiB
Duration : 8 min 35 s
Overall bit rate mode : Variable
Overall bit rate : 1 863 kb/s
Album replay gain : -6.36 dB
Album replay gain peak : 1.000000
Album : Fragile
Album/Performer : Yes
Part : 1
Track name : Roundabout
Track name/Position : 1
Performer : Yes
Description :
Writing application : MQAEncode v1.1, 2.2.0+485 (0b66124), F8EC1703-7616-45E5-B81E-D60821434062, Oct 22 2016 06:55:45
Copyright :
Cover : Yes
Cover description : cover.jpg
Cover type : Cover (front)
Cover MIME : image/jpeg
MQAENCODER : MQAEncode v1.1, 2.2.0+485 (0b66124), F8EC1703-7616-45E5-B81E-D60821434062, Oct 22 2016 06:55:45
ORIGINALSAMPLERATE : 96000
Audio
Format : FLAC
Format/Info : Free Lossless Audio Codec
Duration : 8 min 35 s
Bit rate mode : Variable
Bit rate : 1 787 kb/s
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 kHz
Bit depth : 24 bits
Replay gain : -6.69 dB
Replay gain peak : 1.000000
Stream size : 110 MiB (96%)
Writing library : libFLAC 1.2.1 (UTC 2007-09-17)
如果你能找到写着使用了 MQA 编码器的标签,那就完事儿了。
不过,并非总是如此,因为有些人会去掉标签。
通过频谱/20 kHz 检查
- 一条检查可疑文件是否 MQA 的捷径,是查看其频谱。如果你是从网络商店购买,则买来的 MQA 文件中一定是存在问题的。首先,你可以从频率分析图或频谱分析图开始。
- 下面是一份示例频率分析图和频谱分析图。(示例音轨:
Owner Of A Lonely Heart - Yes
) - 请注意,在 20 kHz 以上的范围内存在大量噪声。如果你将其与可信来源的资源比对,你会发现在后者抖动时,在 20 kHz 以上的范围内以及与整个频谱范围相比,噪声要小得多:
通过频谱/无 20 kHz 隔断
- 现在,如果 MQA 没有 20 kHz 的衰减截止频率,你要如何辨识它?下面是一份没有 20 kHz 衰减截止频率的示例 MQA 文件(示例音轨:
Roundabout - Yes
): - 在上面的例子中,你可以看到在顶端范围内存在相当可观的 -90 dB 噪声。着重看 500~510 秒高于 20 kHz 的区域,可以看到它并非静音(黑色)。下面是放大的 Lead-out 部分:
- 如果你将它与以下频谱对比,它们来自相同长度但来源靠谱的 24-bit FLAC,你可以看到它是静音(上面的图抖动过,下面的图则是未经抖动的原始信号):
- 这是相同的 lead-out 部分:
通过脚本
辨识 MQA 文件最简单的方法莫过于使用以下脚本了。这项工作需要 Python 3 和 bitstring 的支持。你可以从 这里 下载到 MQA 辨识脚本。非常感谢 duplex 和 Sudo 的杰出工作!
Windows 安装
感谢 duplex 和 Sudo 制作的 mqaid(MQA 辨识)脚本。如果你已经安装好并能在 Windows 成功运行,直接跳到第五步看批处理文件会更好。
安装 Python
- 前往 Python 官网 下载最新版本,运行安装文件。
- 确保勾选
Add Python to environment variables
(将 Python 添加到环境变量)。 - 安装它。
复制 mqaid 脚本
- 前往 GitHub →「Clone or download」→「Download Zip」→ 解压到某处。
安装 mqaid 依赖
- 右键单击开始菜单 →「Windows PowerShell(管理员)」→ 输入
pip3 install bitstring
。 - 注意:如果你正在用的是 Python 2.x(而非 3.x),输入
pip install bitstring
(「pip」后边不带「3」即可)。 - 等待安装完成。
运行 mqaid
- 右键单击开始菜单 →「Windows PowerShell」→ 输入
cd c:\wherever\you\unpacked\mqaid\
(你解压 mqaid 的路径)。 - 输入
python is_mqa.py "c:\whatever\directory\holds\the\flacs\you\want\to\check\"
(你想要检查的 FLAC 文件所在的文件夹路径)。 - 等待结果。
- 如果返回
MQA syncword present
,则文件是 MQA。 - 如果返回
Didn't find an MQA syncword
,则文件不是 MQA。
制作一个批处理文件(可选)
- 复制以下四行代码:
|
|
- 打开记事本,粘贴进去。
- 然后点击「文件」→「另存为…」→ 输入「is_mqa.bat」。
- 更改存储路径为
c:\wherever\you\unpacked\mqaid\
。 - 确保「保存类型」选择了「所有文件(.)」。
- 点击「保存」。
现在你可以直接拖放你想要检测的文件到「is_mqa.bat」上,而不需要每次都用命令行。
感谢 AnstrommFeck 的指正!
如果无法使用该批处理文件,可将第一行「c:」替换成 mqaid 的路径,然后将 FLAC 文件也放入该目录下。
运行脚本时,你会得到以下两种输出之一:
- 若文件是 MQA,你会得到:
|
|
- 若文件不是 MQA,你会得到:
|
|
MQA CD
- MQA CD 存在但极少。截至 2017 年 12 月,已知的 MQA CD 不过两三张。如果你得到了声称是 MQA CD 的东西,请务必非常谨慎。来源:
Camille Thurman - Inside the Moment - Road Song
: - 下面是音轨的最后十秒。你可以看到和 24/48 以及 24/44.1 MQA 相同的那类图样。即使这是一份 EAC 能够抓取的 16/44.1 CD 翻录,它仍然具有 16 kHz 的「指纹」,且在 19 kHz 变响亮。这是由噪声滤波器造成的。
- 对于可信的来源,它的音轨看起来应如下图所示。这是 24/192 的频谱:
- 将同一音轨抖动至 16/44.1:
- 这是最后十秒。你可以看到它并没有 16 kHz 以上的噪声带:
总结
归根结底,下面这些是需要查看的:
- 对于 44.1 kHz MQA,应查看其存在于 8 kHz、15.5 kHz 和 18.5 kHz 的噪声隔断。在其他安静的区域应存在较轻的噪声。Lead-out 区域会使其狐狸尾巴暴露无遗。
- 对于 48 kHz MQA,应查看其存在于 8 kHz、16 kHz 和 20 kHz 的噪声隔断。在其他安静的区域应存在较轻的噪声。多数情况下,Lead-out 区域会使其狐狸尾巴暴露无遗。
- 对于所有 MQA,在 8 kHz 到 16/18 kHz 的区间内会存在非常非常轻的噪声。这多半要归结于 MQA 加的「特别调料」。
- 如果你见到视觉上近似直角的噪声,那就是 MQA 的确凿证据了。直角图像看起来应当如下图所示:
更多阅读
- 关于 MQA 的全问答(英文,汉化中)