刻录品质探幽(一):CD光盘的编码
在业界标准中,并没有对C2错误水平进行明确规定,而是更多的对C1错误率进行了限定,这是因为如果C2错误肯定会有C1错误,但如果有C1错误,不见得会有C2错误。
在CD-ROM的规范中规定,随机错误的标准是,每10秒钟出现C1解码的错误(E11、E21或E31)帧数不超过3%。我们可以算一下,按一倍速1秒读取75个扇区,每扇区98个帧计算,10秒钟里共有10×75×98=73500个帧,3%就是2205个帧,约为平均一秒220个帧。由于一个坏帧就意味着一个坏块(扇区),因此也可以认为块错误率(BLER,BLock Error Rate)为每秒220个,我们可以理解为1秒钟C1错误的总合(E11+E21+E31)不能超过220个。
对于连续的突发性错误,CD-ROM规范中规定,当在C1解码时出现E31,则视为不可修复的帧错误,连续出现C1不可修复错误的帧要少于7个。
这里需要指出的是,BLER并不区分哪些块是可以被修复的,哪些块是不能被修复的,因为这里仍包括E31这一C1解码器所不能修复的错误。所以低的BLER并不能说明光盘质量的好坏。比如一张光盘的BLER=210,但没有E31错误,而另一张光盘的BLER=50,但全是E31错误,那么完全可以说后者的质量不及前者,虽然它的BLER更低,但有着E32的隐患。
小常识:关于CD光盘的C3解码 |
在很多相关的文章中,大都提到CD光盘还会有一个C3解码的过程,但这并不确切。 在上文中,我们已经讲到CD光盘有多种规范,而各规范中的扇区格式并不相同,有的有ECC校验码,有的没有ECC校验码,而这个ECC校验就是所谓的C3解码,可见并不是每个CD光盘规格都具备。 严格的说,扇区的ECC校验并不是C3解码,而是被称为RSPC(Reed-Solomon Product-like Code,理德-所罗门乘积编码)解码。注意,CIRC是给每一帧进行校验的编码,而RSPC是给数据扇区进行校验的编码,两者不要混淆。我们可以这样理解:每个扇区——RSPC编码——分成98个帧——每个帧再进行CIRC编码——生成最后的 刻录数据。 在支持CD-ROM/-R/-RW的驱动器中,也都会有相应的RSPC解码器,由于RSPC的存在,因此即使在C2解码中出现了E32错误,仍有可能在RSPC解码过程中进行修正。这也是为什么CD-ROM(Mode 1和Mode 2-Form 1)是针对计算机数据存储而开发的原因,保证数据文件的准确性远比保证歌曲数据的准确性更重要。如果是普通的CD-Audio播放机,则不会有RSPC解码器(Decoder)。 |