CD-I(Compact Disc-Interactive)系统是由著名的家电制造商Sony和Philips公司在1986年推出的。该系统可以将高质量的声音、文字、图形、动画、程序以及静止图像等以数字形式存放在CD-ROM上,并实现交互式操作。CD-I系统的软件全部录制在光盘上,既可以与计算机相连,也可以使用普通的电视机。用户可以通过与CD-1系统相连的电视机、计算机显示器、鼠标器、操纵杆等定位装置与系统进行通信,播放感兴趣的视听材料。CD-I系统主要用于培训、教育和家庭娱乐方面。
§5.1.1 CD-I基本系统结构
在介绍CD-I基本系统的结构之前,需要说明一点的是,在定义CD-I基本系统时充分考虑允许所有CD-DA盘都能在CD-I系统中播放。这一点对理解CD-I系统是很有帮助的。
CD-I基本系统由以下几部分组成(参见图5-1)。
光盘播放机可以在三秒钟之内读取CD-1或CD-DA光盘上任何部分的数据。播放机在程序控制下可以暂停、连续、停止、弹出光盘。
从光盘读出的数据经过CIRC错误校正之后,由CD-DA控制器/接口单元把数据有选择地送到音频处理子系统(如果数据是16位PCMCD-DA数据)或CD-I接口(如果数据是CD-ROM或CD-I数据)。它也控制光盘播放机的运行。
CD-I接口把来自MPU(微处理器)的控制信息送到CD-DA控制器/接口单元,也把经过筛选的数据送到系统总线。于是CD-I接口要分解来自光盘的交叉数据,产生中断信号并把整理的数据送到相应的处理单元。所有这些事情都是通过实时解释扇区(Subheader)中的信息来控制的。
CD-I 本系统能够读和译CD-DAPCM数据,这种数据可以来自CD-I或CD-ROM光盘上的CD-DA光道,或者来自CD-DA光盘上的CD-DA光道。
CD-I光盘上的程序代码必须是M68000可执行目标码,总的RAM至少为1M字节,并要组织为至少两个存储体,每个为512K字节。而NVRAM(非易失性随机存储器)的容量至少要8K字节。
CD-I基本系统至少要有一个X-Y定位设备作交互,它能够指定正常分辨率图像的每个像素。此外,它至少要有两个触发按钮。
CD-I基本系统的时钟/日历可用电池作后备电源,至少要以秒做单位,除年、月、日、时、分、秒外,还能计算出闰年。
所有CD-I基本系统必须有默认的字符集,并且至少要有四种字体放在ROM中,ROM中还装有CD-RTOS和库模块。所有CD-I基本系统中的设备都是中断驱动的。
CD-I音频和视频处理子系统将在后面作介绍。
图5-1 CD-I基本系统结构
§5.1.2 CD-I光盘的数据格式
从系统结构出发,简单了解CD-I光盘的数据格式,对于理解CD-I系统的软硬件结构及系统设计原理是非常必要的。CD-I光盘的数据格式是从CD-DA(Compact Disc Digital Audio)和CD-ROM光盘格式演变而来的。它和CD-DA光盘、CD-ROM光盘都有三个区:导入区(Lead-in Area)、节目区(Program Area)和导出区(Lead-out Area),如图5-2所示。CD盘上的信息均采用EFM(Eightfor Fourteen Modulation)记录。由于光盘原始误码率较高,所以都采用能纠正突发错误码CIRC(Cross-Interleaved Reed-Solomon Code)。
图5-2 CD盘结构
CD-I光盘的导入区是由若干个空扇区组成的,其目的是使识别节目区变得容易。
CD-I光盘的节目区如图5-3和图5-4所示。图5-3表示只有CD-I光道的CD-I盘结构,而图5-4表示CD-I光盘可以含有CD-DA光道的CD-I盘结构,这是为了和早期出现的CD-DA光盘格式兼容而设定的。CD-I光盘和CD-DA光盘一样,可以有多到99条光道,编号从1-99。对于包含有CD-DA光道的CD-I光盘,其第一条光道必须是CD-I光道,而且任何一条CD-I光盘的CD-DA光道必须在CD-I光道之后。一片CD-I光盘上的CD-DA光道可以有一条或多条CD-DA光道,但最多不超过98条,而一条光道的长度可以是300个扇区(相当于4秒)和325000个扇区(相当于最长的超级Hi Fi播放时间72分钟)之间的数。
图5-3 仅有CD-I光道的CD-I盘结构
图5-4 有CD-I和CD-DA光道的CD-I盘结构
CD-I光盘的导出区或者是空扇区(最后一条光道是CD-I光道时),或者是无声的帧(Frame)(最后一条光道是CD-DA光道时)。节目区的开头,也就是光道1的开始部分,有166个信息扇区(Message Sector),它仅含有CD-DA信息。2250个信息扇区(相当于播放时间30秒)记录有敬告用户的一段话。当CD-I光盘在早期的CD-DA播放机上开始播放时能听到敬告用户的话,而在CD-I系统中则跳过这一段。
当CD-I光盘放到CD-I系统中播放时。系统首先读的扇区是光盘标号(Disc Label)扇区。这个扇区包含CD-I盘上所有文件的描述符、内容、大小、创作者等,必须加载到系统中软件模块的位置以及存取这些文件的路径表。光盘标号由三个记录组成:文件结构卷描述符(File Structure Volume Descriptor)、引导记录(Boot Record)和终结记录(Terminator Record)。
路径表参见表5-1。每张光盘必须要有一张路径表,以提供盘上所存的目录 引,它跟着光盘标号,其位置在光盘标号中给出。每一个表目都包含如下三个信息组:目录文件的位置父目录名、目录名。每条目录都是一个文件,它包含文件描述符记录。
表5-1 路径表
CD-I盘上的所有数据都以文件的形式存放,任何一个文件都可以通过盘上的路径表取出。每一个文件都有文件描述符记录,存放于文件目录中。文件描述记录包含有文件名、文件号、文件大小、地址、拥有者、属性、交叉存取因子、读取许可权。
文件分为目录文件、实时文件和标准文件。
CD数据可以两种方式存放于盘上,即Mode1和Mode2。CD-I在Mode2中定义两种专门的数据格式:Form1和Form2。所有CD-1的数据都是用Mode2记录。而光盘标号中的数据则是用Mode2中的Form1来记录。因为它有EDC(Error Detection Code)和ECC(Error Corection Code)码,CD-I系统利用它们可以获得误码率小于10~13的数据。
§5.1.3 CD-I扇区格式
CD-I数据分成离散的数据单元称为扇区,其结构类似于CD-ROM的Mode2,但和它不一致t。这些扇区包含有音频、视频、计算机数据以及需要系统实时处理的重要信息。一个CD-I扇区相当于CD-DA中的一帧,系统以每秒75扇区的速度读CD-I盘。
每个扇区有2352个字节,由三个基本部分组成:Header、Subheader、Data Area,其Header有12个同步字节,以时、分、秒作地址的三个字节,以及一个Mode字节,值总是为2。
Subheader有八个字节,它进一步说明该扇区的用户数据:
·数据类型:音频、视频或计算机数据等。
·格式的形式:Form1或Form2。
·触发位:记录开始、文件结束、实时性等。
·数据的编码信息:如ADPCM(Adaptive Delta Pue Code Modulation),CLUT(Colorls Look Up Table),DYUV等。(www.xing528.com)
数据区的结构有两种:Form1和Form2。Form1不仅有EDC码而且还有ECC码,用于存放应用程序、控制数据、文字等要求不允许出差错的数据。Form2只有EDC字节,用于存放误码率要求不太苛刻的数据,如音频和视频数据。利用Form2来存放这类数据,其目的充分利用光盘的存储空间。
§5.1.4 CD-I音频子系统
CD-I的基本系统有四种标准音频的运行方式和一种非实时的语音音频运行方式。CD-I除继承CD-DA超级高保真音质运行方式外,还有A、B、C三个音频等级的运行方式。A级相当于Laser Vision的音质,即相当于高保真音质,B级相当于FM调频广播的音质,C级相当于AM调幅广播的音质。这三种音质的语音都是实时的语音。
非实时语音音质是文本到语音编码转换而成的音质。CD-I有两种接口用来辅助编码这种音频信息,它们是上层接口和下层接口。上层接口是处理器默认的字符集,下层接口是对8位PCM数据进行实时解码。这两种接口之间的转换由微处理器控制。
CD-DA超级高保真声音信号采用脉冲编码调制(Pulse Code Modulation),用44.1kHz的采样频率对信号进行采样和编码。而CD-I的声音则采用自适应差分脉冲编码调制ADPCM (Adaptive Differential Pulse Code Modulation)技术进行压缩编码,把声音信号量化成八位或四位的二进制数,这就节省了存储空间,在声音的质量和表示声音的信号量之间进行折衷。ADPCM编码是对被采样信号的预测采样值和实际的采样值之差进行量化,并把自适应预测和自适应量化结合起来使用,从而达到压缩音频数据的目的。
对CD-1中的通道有两种用法:一种是用于延长播放时间。另一种是用于实时获取并行音频数据流。
音频数据保存在Form2的实时扇区中。Subheader中的八个字节有加重语气设置信息、每个声音样本的位数(A级的位数为8,B、C级为4)、采样速度(A、B级为37.8kHz,C级为18.9kHz)以及编码信息,它表示该扇区所存的信息是单声道还是立体声。
每个扇区由2304个宇节的数据和20个空字节组成。2304个字节分成18个声音组,每个组由128个字节组成。128个字节中的16个字节用来存放声音参数,其余的112个字节存放实际的声音数据。声音参数包含滤波和音域值,它们是在编码过程中获得的一个声音组的最佳参数。
声音数据的解码和控制是由CD-I音频处理器子系统来完成的。一种音频处理器子系统由ADPCM解码器、声音处理单元、特技处理器、控制器和声音存储器组成。
ADPCM数据可从CD-I接口单元直接送到ADPCM解码器或间接从声音存储器送到ADPCM解码器。ADPCM解码器对A、B、C级的声音数据进行译码。ADPCM解码器输出PCM声音数据到音频处理单元。而来自光盘的CD-DA数据是直接进入音频处理单元的。
音频处理单元的作用像一个简单的两通道声音混合器,它的两个输入通道,立体声通道或单声道,能把输入通道的信号混合送到左右两个输出通道。它实质上是一个数模转换器,但当它和特技处理器的功能结合起来时,在CPU的控制下就像一个音量可控的声音混合器,特殊的音响效果可以利用软件来产生而不必预先记录到盘上,这就节省了存储空间。
§5.1.5 CD-I视频子系统
CD-I视频系统提供了三种不同的图像分辨率。正常分辨率的图像质量相当于广播电视接收机得到的最好的图像质量。双倍分辨率的图像质量相当于在计算机显示器上可获得的最好的图像质量。高分辨率的图像质量相当于演播室中产生的最好的图像质量。
由于显示一幅图像需要很大的数据量,例如显示一幅分辨率为360×240的彩色图像,每个像素用16位的二进制数表示,就要360×240×16=172800个字节,而用CD-I中的Form2扇区格式,每秒钟的数据传输率为2324字节/扇区×75扇区/秒=174300字节/秒,这就需要约1秒钟的时间才能从光盘读出一幅正常分辨率彩色图像的数据。为提高图像的显示速度和减少图像的数据量以节省存储空间,针对自然图像、图形、动画等各有特点的图像,CD-I采用了四种基本的压缩技术。
1.一维的DYUV编码
这种编码主要用于自然图像,如彩色照片等。这种编码方法是把亮度信号Y和两个色差信号U、V的变化值,即相邻两个像素分量值之差进行量化编码,逐行转换成二进制数,解码后每个分量都变成8位二进制数,故有224=16772216种不同的颜色。
2.RGB5∶5∶5编码
主要用于高质量的图形。对组成彩色图像的三种基色:红色、绿色、蓝色分量都用5位二进制数表示,每个像素用16位二进制数表示。这样表示的图的颜色数共有216=32768种不同的颜色。
3.CLUT(Color Look-Up Table)编码
主要用于要求变化较快的图形,便于对图像进行管理。CLUT的内容放在光盘上。CD-I系统中含有几种不同的CLUT方式。CLUT8使用8位地址去查找有256种颜色的调色板寄存器,CLUT7有128种颜色,而CLUT4有16种颜色。
4.一维行程编码
主要用于动画这类图像。动画上面有许多颜色相同的块,且画面上的颜色数目及颜色的变化数目也有限,因此用行程编码压缩图像数据很有效。行程编码用CLUT去定义颜色,然后定义在像素颜色改变之前具有相同颜色的像素数目。CD-I定义了两种RL(Run-length)编码:RL7在正常分辨率的图像中,使用1个字节表示颜色,另一个字节表示行程长度。
用户看到的CD-I图像是由多个图像平面合成的,就像CD-I中的数字音响一样。CD-I音频子系统中有左右(Lin和Rin)两个输入通道,可以想像成两个平面,在CPU控制下,根据需要可把音频数字信号混合后,送到左右(Lout和Rout)两个输出通道,经过喇叭转换成优美动听的声音。而CD-I的图像是由四个图像平面组成的。平面1是一个16×16像素的彩色游标平面,平面2和平面3是全屏幕图像平面。平面4是背景平面。在软件的控制下,这些平面上的图可以按各种要求叠加生成一幅画面显示在屏幕上。
经过编码记录在CD-I光盘上的数字视频信号由CD-I视频子系统来还原。该子系统有两个由RAM构成的存储体0和存储体1与存取控制器相连。存储体0存储图像平面A(即平面2)的信息,存储体1存储图像平面B(即平面3)的信息。这两个存储体也作为声音数据存储器和系统存储器来使用,而子系统中的存取控制器是用来控制存储体、两个解码器与主系统总线之间的信息交换。该子系统具有如下几个基本功能。
(1)解码
DYUV→YUV→RGB8∶8∶8
CLUT→RGB8∶8∶8
RL→CLUT→RGB8∶8∶8
RGB5∶5∶5→RGB8∶8∶8
(2)像素的颜色切换,用于在图像平面上产生透明区。
(3)重叠图像平面。
(4)像素保存,用于缩放图像,改变图像分辨率而不改变图像大小那样的马赛克效应。
(5)混合图像,用于组合每个图像平面上的像素值变成一幅图。
(6)把数字图像信号转换成模拟RGB信号。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。