找回密码
 -注册-
查看: 1545|回复: 3
打印 上一主题 下一主题

谈PCM与DSD的互转

[复制链接]
跳转到指定楼层
1
发表于 2025-3-24 23:55 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式 来自 上海交通大学
看到论坛上,PCM和DSD之间经常拿来讨论,究竟是有损无损,以及到底听感会不会有差异,讨论半天也没得出一个定论。我抛砖引玉,单纯从数字信号处理的角度来谈一谈这个问题,希望大家能够多多指正。

什么是无损?

从信息论的角度而言,只要等效数据流的速率是一样的,那么就是无损(lossless)的。这里特意没有用所谓比特率(bitrate)的概念,是为了区分压缩导致的比特流缩减:例如flac,能够所谓“无损压缩”音频,比特率(也就是文件大小除以时间)降低了,但数据量没有改变,使用的方法是利用时域差分互信息,以及声道互信息等做压缩,具体做法比较复杂,感兴趣可以去读一读具体的算法。从无先验信息的角度来看,flac的实际比特率是不变。如果感兴趣可以试试把一个完全白噪声wav转码成flac,就能发现是白噪声无法压缩的(这一部分也可以参考香农信源编码定理)。

PCM和DSD都是完全无先验信息的编码,我们以这个数据流的速率为基准。例如DSD64是1bit@64x44100Hz,承载的数据量和PCM 32bit@2x44100Hz,或者PCM 16bit@4x44100Hz完全一致。做做乘法就能算出来,这个数据流的速率是2.8224Mbps。虽然因为编码的模式不同(一个是绝对值编码,一个可以理解为一种绝对值相关的相对值编码)两者没有一个直接对应的关系,但他们承载的信息是一致的,互相转换也不应该有差异。

为什么有差别?

有人拿DSD转出来的PCM和下载的相同版本wav去对比(一般来说用一些对比工具),发现两个对不上;而金耳朵更是一耳朵就听得出来差别,就得出结论,觉得这两者不能互转,转换是有损的。这就涉及另一个编码相关的问题了。从PCM编码到DSD的过程中的时候,如果简单粗暴直接转换,就会出现所谓伪影,我们用一个图像里的例子做说明:





可以看到,不恰当的映射算法(比如第一个球),会导致球上出现不该出现的线条,也就是伪影,在一般的编码中称为量化噪声。为了缓解伪影,在从高比特率向低比特率编码的过程中,需要掺入“抖动(dithering)”,也就是后两个球所做的,通过随机的噪声,来消除这种差异。需要注意的是,抖动本身并不会导致信息的损失,在统计学意义上,整体的信息量是没有发生变化的。

那么DSD编码到PCM的过程呢?因为DSD本身频率更高,直接在信号上做卷积,会得到掺杂了高频噪声的原始信号,这样的高频噪声同样也不是信号本身携带的信息,为了正确转换,一般会用一个低通滤波器来砍掉高频的部分。还是用之前的那个图像的例子,眯着眼睛看,三个球看起来就差不多。眯眼睛相当于就通过一个低通滤波器了。戴近视眼镜的摘了眼镜看,效果也是一样的。这个低通滤波器学问比较多,最淳朴的用一个理想cutoff直接对着41kHz砍一刀,高级一些的可能玩点陡降缓降,那就各有音色了。

这两个过程就决定了这样一个转换的过程,并不是典范(canonical)的,也就是说,同一个PCM文件,用不同的转换器转成DSD,因为抖动转出来不一样;同一个DSD文件,用不同的转换器转成PCM,因为滤波器差异,转出来也不一样。同一个解码,因为采用的解码模式(滤波,运放固有参数等)不同,听到的内容就不同。而且现代的解码和转码软件里,通常还会再升频来做处理,不同频率升频的电路也不一样,这些差异一叠加,差别就更大了。

总结

所以绕来绕去,得到的结论就是PCM和DSD有区别,但更多是信号处理上的一些小伎俩,实际的内容物没有改变。过去常常提到的有损和无损压缩,好像鲜辣椒晒成干辣椒,含有的东西都变化了;而DSD和PCM,升频降频,转来转去,就还是鲜辣椒,有的切丁,有的剁末,有的是一整个。都是一样的东西,只是诠释不一样,不用对格式和所谓“有损无损”太过焦虑,在自己系统上试出来,选最讨好耳朵的那种,把心放在音乐本身上,我觉得才是王道。
2
发表于 2025-3-25 08:47 | 只看该作者 来自 浙江嘉兴
时域上存在区别
回复

使用道具 举报

3
发表于 2025-3-25 09:49 | 只看该作者 来自 中国
怎么跟写论文似的,哈哈

信息量是不会变的。但升频的主要目的是更精确的模拟信号重建。在转换阶段之后,您总是需要模拟重建滤波器。数字过采样滤波器、噪声整形器/调制器、可能的转换滤波器和模拟重建滤波器的组合应该可以从模拟输出中去除伪影和噪声,只留下原始模拟信号的精确重建。

因为数字采样率不能是无限的,所以你总是需要模拟重建滤波器,它应该有效地使采样率从模拟信号中消失。

过采样/上采样的目的是使模拟滤波器更容易完成这项工作,并帮助其更好地执行。它也是高速噪声整形器的重要组成部分。升频滤波后的波形更加接近原始ADC波形
回复

使用道具 举报

4
发表于 2025-3-25 22:50 来自手机 | 只看该作者 来自 广东深圳
现在解码器里边都是将p cm dsd都是转成dsd  之所以这样是为了简化模拟电路,因为模拟电路对工艺和材料要求高,如果是r2r解码,这么多电阻精度难以保障,而转成dsd或者pdm方式,理论上后边只需要接一个电容和电阻构成的低通滤波器就可以了。
大幅度降低了模拟电路的材料和工艺成本,当然实际上厂家还是用多个电阻电容,不过已经远小于r2r

升频的意义在于,当前时钟精度可以达到很高,升频后加上高精度时钟,重放就会降低失真,就好像图像渲染一样多边形越多就会使得模型曲面过度更加自然
回复

使用道具 举报

您需要登录后才可以回帖 登录 | -注册-

本版积分规则

Archiver|手机版|粤icp备09046054号|耳机网-耳机大家坛

粤公网安备 44030602000598号 耳机大家坛、www.erji.net、网站LOGO图形均为注册商标

GMT+8, 2025-8-14 01:51

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表