UID609363
威望24
金钱169948
交易诚信度0
主题23
帖子2781
注册时间2009-7-10
最后登录2018-7-9
高级会员
   
交易诚信度0
注册时间2009-7-10
|
原帖由 szddd 于 2010-12-21 09:48 发表 
呵呵,好不容易从头到尾看完,学到了很多知识。不过,就我现在所理解的知识来看,电脑HIFI还是可望而不可及的。
本人搞通信电子十多年了,可能对时钟的理解会深些,可是对模拟部分不太熟,想说说自己的理解,如有错误之处,还望大家指教。
不容置疑,使用电脑HIFI,有其便利的一名,但对HIFI而言,还是有太大的差距。那么,差距在哪呢?我认为,就像大家都了解的那样,主要在于JITTER的存在。
众所周知,使用相同的解码器,连接不同的CD转盘,就会有不同的声音。如果都使用了天价转盘,读的碟都是一样的,读取的数据应该都不会差到那去了,可为什么还会有差别呢?
这是因为,CD机在读取CD碟中的数据的时候,是采用恒线速读取的,即打个比方,CD在读取最里一圈的数据的时候,需要10米/秒的数据,而在读取最外圈数据的时候,可能需要100米/秒。整个CD上的数据共有差不多3万圈,也就是说,CD的转盘电机要提高3万多种速度才能以比较好的按要求把数据匀速读取出来,实际上,搞电机控制的可能会明白,这是很难做到的,不同转盘的电机,都有它们自己的转速特性,所以,出来的数据JITTER,也就各不相同了。
电脑播放CD,数据是从硬盘上直接读取后放入SRAM中,,然后由CPU控制输出,速度非常快,理论上不存在转盘的转速问题,这是电脑HIFI的优势,可由于电脑的时钟并不是标准的44.1K的时钟,而是由电脑的高频时钟分频下来的,误差要远大于CD转盘的数据精度。举个例子,就像CD数据需要每5秒钟输出一次,而电脑却是每3秒工作一次,所以,输出的数据要不快了,要不就慢了,理想的输出时间是0秒,5秒,10秒,15秒,电脑只能在0秒,6秒,9秒,15秒输出,尽管总的输出时间没有改变,但输出的数据却在不断的抖动。这个抖动,会造成音频的定位不准。
其次,电脑的时钟并不是高精度的,误差非常大,例如10M的时钟,可能却是10.005M的,那么,本来要输出10K的高频,却成了输出10.01k的高音,我们听起来就会觉得声音偏亮。如果时钟偏慢,10M的时钟,却输出9.995M,那么我们听起来就会觉得发闷,这种误差会造成音色的改变。
另外,我们电脑的操作系统,是多任务的操作系统,并不是实时系统,在解码音频的时候,还会同时进行其他任务的出来,当有的任务抢站了CPU资源,或是处于中断处理状态,就是时间到了,CPU也没发及时处理,会产生延时。
当系统用USB输出数据流的时候,USB本来就不是用于实时系统的,是半双工通讯的,需要应答式的交换数据,在这环节,产生的抖动就更大了。所以,普遍而言,USB的输出音质是最差的。
如果使用同轴输出数据,除了数据的抖动,还会吧电脑的电磁干扰一块传输过去。也会影响最终的音质。
文中概念性的错误太多了。[s:41] [s:41] [s:41]
CD的转速和转速控制,俺和饿虎扑食讨论那帖有详细的描述。
还有,时钟误差的描述实在是太。。。。如果真如文中所说“本来要输出10K的高频,却成了输出10.01k的高音”,就是变调了[s:14] 。
时钟的误差,和CPU快慢没有一点关系[s:14]
[ 本帖最后由 顺溜 于 2010-12-21 11:30 编辑 ] |
|