1.1.4 多媒体技术的关键技术
由于多媒体系统需要将不同的媒体数据表示成统一的结构码流,并对其进行变换、重组和分析处理,以实现多媒体数据的存储、传送、输出和交互控制。所以,多媒体的传统关键技术主要集中在数据压缩技术、大规模集成电路制造技术、大容量的光盘存储技术、实时多任务操作系统技术4个方面。正是因为这些技术取得突破性进展,多媒体技术才得以迅速发展,成为具有综合处理声音、文字、图像、音频、视频等媒体信息的新技术。
同时,由于网络的迅速普及与技术的进步,当前用于互联网络的多媒体关键技术,可以按层次分为媒体处理与编码技术、多媒体系统技术、多媒体信息组织与管理技术、多媒体通信网络技术、多媒体人机接口与虚拟现实技术,以及多媒体应用技术6个方面。其中还包括多媒体同步技术、多媒体操作系统技术、多媒体中间件技术、多媒体交换技术、多媒体数据库技术、超媒体技术、基于内容检索技术、多媒体通信中的服务质量(Quality of Service,QoS)管理技术、多媒体会议系统技术、多媒体视频点播与交互电视技术、虚拟实景空间技术等。
1.多媒体数据压缩技术
数据压缩是一个编码过程,即对原始数据进行编码压缩,压缩方法也称为编码方法。数据压缩分为有损压缩与无损压缩,目的是在媒体信息少失真或不失真的前提下,尽量设法减少媒体数据中的数据量,即减少数据冗余。
(1)数据冗余
多媒体数据尤其是图像、音频和视频数据,其数据量相当大,但那么大的数据量并不是完全等于它们所携带的信息量,即数据量大于信息量,这就称为数据冗余。信息论之父C.E.Shannon(香农)在1948年发表的论文《通信的数学理论》(A Mathematical Theory of Communication)中指出:任何信息都存在冗余,冗余大小与信息中每个符号(数字、字母或单词)的出现概率或者说不确定性有关。Shannon借鉴了热力学的概念,把信息中排除了冗余后的平均信息量称为“信息熵”,并给出计算信息熵的数学表达式:H(x)=E[I(xi)]=E{log[1/p(xi)]}=-∑p(xi)log[p(xi)](i=1,2,…,n)。信息熵是信息论中用于度量信息量的一个概念。一个系统越有序,信息熵就越低;反之,一个系统越混乱,信息熵就越高。所以,信息熵也可以说是系统有序化程度的一个度量方式。
(2)数据冗余的种类
空间冗余:多媒体数据(如图像)存在大量有规则的信息,如规则物体与规则背景的表面物理特性具有相关性,其大量相邻的像素相同或十分相近,这些相关的光成像结构在数字化图像中表现为数据冗余,相同或十分相近的数据可以压缩。
时间冗余:时基类媒体(如音频、视频等)前后的数据信息有很强的相关性,播放时出现的声音或画面,某些地方发生了变化,某些地方没有发生变化,便形成数据的时间冗余。
结构冗余:数字化图像中物体的表面纹理等结构,往往规则相同,在记录数据时这种冗余称为结构冗余。
信息熵冗余:指数据所携带的信息量少于数据本身而反映出来的数据冗余。
视觉冗余:人的视觉受生理特性的限制,对于图像场的变化并不都能感知。事实上,人的视觉系统一般的分辨能力约为26灰度等级,而图像的量化一般采用28灰度等级,这样的冗余就称为视觉冗余。
知识冗余:多媒体数据如图像,由信息(图像)的记录方式、人对信息(图像)知识之间的异同所产生的冗余称为知识冗余。
其他冗余:数据(如图像的空间)非定常特性所带来的冗余。
(3)量化
量化是将具有连续幅度值的输入信号,转换为具有有限个幅度值输出信号的过程。即量化是将模拟信号转换为数字信号的过程。
量化的方法通常有标量量化和矢量量化两种。
标量量化:是对经过映射变换后的数据或脉冲编码调制(Pulse-Code Modulation,PCM)数据逐个进行量化,在量化过程中,所有采样使用同一个量化器进行,每个采样的量化都与其他采样无关。标量量化又分为均匀量化、非均匀量化、自适应量化。
矢量量化:又称分组量化,对PCM数据,若逐个进行量化,则称为标量量化;若将这些数据分成组,每组K个数据构成一个K维矢量,然后以矢量为单元逐个进行量化,称为矢量量化。
(4)数据压缩算法的综合评价指标
数据压缩算法的综合评价指标主要是通过数据压缩倍数、图像质量、压缩和解压缩速度等方面来衡量。
①数据压缩倍数(压缩率)。数据压缩倍数通常有两种表示方法,一是由数据压缩前与后的数据量之比来表示,压缩比=原始数据量/压缩后数据量,如一幅1024×768像素的图,每个像素占8bit,经过压缩后分辨率为512×384像素,且平均每个像素占0.5bit,压缩倍数为64,则称其压缩比是64∶1;二是用压缩后的比特流中每个显示像素的平均比特数(bit/s)来表示。
②图像质量。图像质量有两方面的评价指标。一是信噪比。重建图像质量通常用信噪比(Signal Noise Ratio,SNR)来评价,即重建图像中信息与噪声的占有比率。其中,信号是指来自设备外部、需要通过这台设备进行处理的电子信号。噪声是指经过该设备后产生的原信号中并不存在的无规则的额外信号,且该种信号并不随原信号的变化而变化。信噪比越大,说明混在信号里的噪声越小,回放的质量越高,否则相反。信噪比的计量单位是dB,其计算方法是10log(Ps/Pn),其中Ps和Pn分别代表信号和噪声的有效功率。图像信噪比的典型值为45~55dB,若为50dB,则图像有少量噪声,但图像质量良好;若为60dB,则图像质量优良,不出现噪声。声音信噪比一般不应该低于70dB,高保真音箱的信噪比应达到110dB以上。二是由若干人对所观测的重建图像质量按很好、好、尚可、不好、坏5个等级评分,然后按设定公式计算分数。
故数据压缩算法的质量评价可以使用信噪比SNR与主观评定的分数来评定。
③压缩和解压缩速度。依据数据压缩和解压缩速度,将数据压缩算法分为对称压缩与非对称压缩。
压缩算法分为编码部分和解码部分,如果两者的计算复杂度大至相当则算法称为对称,反之称为非对称。如电视会议的图像传输,压缩和解压缩都实时进行,计算复杂度大致相同,速度相同,属于对称压缩;又如DVD节目制作,只要求解压缩是实时的,而压缩是非实时的,其中MPEG压缩编码的数据计算复杂度约是解压缩的4倍,则属于非对称压缩。计算复杂度可以用算法处理一定量数据所需的基本运算次数来度量,如处理一帧有确定分辨率和颜色数的图像所需的加法次数和乘法次数。
通常在保证数据中信息质量的前提下,压缩与解压缩的计算复杂度越小越好。
(5)常用的数据压缩与解压缩算法
①按压缩方法是否产生失真分类。按压缩方法是否产生失真可分为无失真编码和失真编码。
无失真编码也称无损压缩(可逆编码),数据在压缩与解压缩过程中不会改变或损失,解压缩产生的数据是对原始数据的完整复制,其编码可逆。
失真编码也称有损压缩(不可逆编码),数据在压缩与解压缩过程中会改变或损失,这种损失控制在一定的范围内不影响重现质量,解压缩产生的数据是对原始数据的部分复制与保留,其编码不可逆。
②按照压缩方法的原理来分类。按照压缩方法的原理可分为预测编码、变换编码、子带编码、信息熵编码和统计编码等。
预测编码是针对空间与时间冗余的压缩方法。其基本思想是利用已被编码点的数据值来预测邻近像素点的数据值。
变换编码是针对空间与时间冗余的压缩方法。其基本思想是将图像的光强矩阵(时域信号)变换到系数空间(频域信号),然后对系数进行编码;变换编码通常采用正交变换。
子带编码又称分频带编码,其基本思想是将图像数据变换到频域后,按频率分带,然后用不同的量化器进行量化,达到最优组合。
信息熵编码根据信息熵原理,对出现概率大的符号用短码字表示,反之用长码字来表示,其目的是减少符号序列中的冗余度,提高符号的平均信息量。
统计编码根据一幅图像像素值的统计情况进行编码压缩,也可先将图像按前述方法压缩,对所得的值加以统计,再进行压缩。
行程编码属于统计编码的一种,用一个符号值或串长代替具有相同值的连续符号(连续符号构成了一段连续的“行程”。行程编码因此而得名),使符号长度少于原始数据的长度。如1111110000011100001111111;行程编码为:(1,6)(0,5)(1,3)(0,4)(l,7)。可见,当数据排列有规律的情况下,行程编码的位数远远少于原始字符串的位数。行程编码分为定长行程编码和不定长行程编码两种类型。
算术编码属于统计编码的一种,其基本思想是将被编码的信息表示成[0,1]之间的一个间隔。信息越长,间隔就越小,编码所用的二进制位就越多。
哈夫曼(Huffman)编码属于统计编码的一种,1952年哈夫曼根据香农(Shannon)1948年和范若(Fano)1949年阐述的编码思想提出一种不定长编码的方法。哈夫曼编码的基本方法是先扫描一遍图像数据,计算出各种像素出现的概率,按概率的大小指定不同长度的唯一码字,由此得到一张该图像的哈夫曼码表。编码后的图像数据记录的是每个像素的码字,而码字与实际像素值的对应关系记录在码表。
定理:在变字长编码中,如果码字长度严格按照对应符号出现的概率大小逆序排列,则其平均码字长度为最小。
哈夫曼编码的具体方法:按出现概率大小排队;把两个最小的概率相加,作为新概率和剩余概率重新排队;再把最小的2个概率相加;重新排队,直到最后变成1。每次相加时都将“0”和“1”赋予相加的两个概率,读出时由该符号开始一直走到最后的“1”,将路线上所遇到的“0”和“1”按最低位到最高位的顺序排好,就是该符号的哈夫曼编码,如图1-1-1所示。
图1-1-1 哈夫曼编码方法
2.超大规模集成电路制造技术
超大规模集成电路(Very Large Scale Integration,VLSI)是指在一块芯片上集成的元件数超过10万个,或门电路数超过万门的集成电路。即在几毫米见方的硅片上集成上万至百万晶体管、线宽在1m以下的集成电路。VLSI及其相关技术作为前沿技术,具有普遍的影响和作用,对国防建设、社会经济和科学技术水平的发展起着巨大的推动作用。
超大规模集成电路于20世纪70年代后期研制成功,主要用于制造存储器和微处理机。64KB随机存储器是第一代超大规模集成电路,大约包含15万个元件,线宽为3m。由于VLSI集成度一直遵循“摩尔定律”以每18个月翻一番的速度急剧增加,目前一个芯片上集成的电路元件数已超过一亿[1994年由于集成1亿个元件的1GB DRAM的研制成功,进入巨大规模集成电路(Giga Scale Integration,GSI)时代]。这种发展趋势正在使VLSI在电子设备中扮演的角色从器件芯片转变为系统芯片(SOC);与此同时,深亚微米的VLSI工艺特征尺寸已达到0.18m以下,在特征尺寸不断缩小、集成度和芯片面积及实际功耗不断增加的情况下,物理极限的逼近使影响VLSI可靠性的各种失效机理效应敏感度增强,设计和工艺中需要考虑和权衡的因素大大增加,剩余可靠性容限趋于消失,从而使VLSI可靠性的保证和提高面临巨大的挑战。因此,国际上针对深亚微米/超深亚微米VLSI主要失效机理的可靠性研究一直在不断深入,新的失效分析技术和设备不断出现,世界上著名的集成电路制造厂商都建立了自己的VLSI质量与可靠性保证系统,并且把针对VLSI主要失效机理的晶片级和封装级可靠性评价测试结构的开发和应用纳入其质量保证计划,可靠性模拟在可靠性设计与评估中的应用也日益增多。在进一步完善晶片级可靠性(WLR)、统计过程控制(SPC)和面向可靠性的实验设计方法(DOE)等可靠性技术的同时,在20世纪90年代提出内建可靠性(BIR)的新概念,把相关的各种可靠性技术有目标地、定量地综合运用于VLSI的研发和生产过程,从技术和管理上构建VLSI质量与可靠性的保证体系,以满足用户对降低VLSI失效率、提高其可靠性水平的越来越高的要求。
3.大容量数据存储技术
(1)光盘存储技术
光盘(Compact Disc,CD)是指用聚焦氢离子激光束处理记录介质方法存储和再生信息的光学存储介质,又称激光光盘。
①光盘存储器的分类。按照光盘性能的不同,光盘存储器主要分为以下几类。
a.只读型光盘CD-ROM、DVD-ROM。CD-ROM主要技术来源于激光唱盘,可存储650MB的数据。CD-ROM、DVD-ROM盘片上的信息由厂家预先写入,用户只能读取信息,不能往盘片中写入信息。CD-ROM、DVD-ROM可以大量复制,且成本低廉。
b.一次写入型光盘WORM。一次性写入光盘WORM可一次写入,多次读出。
c.可擦除重写光盘E-R/W。此类光盘可以像磁盘一样多次写入与读出。根据可擦写光盘的记录介质的读、写、擦原理来分类,可分为相变型光盘PCD和磁光型光盘MOD两种类型。
d.照片光盘Photo CD。1989年,KODAK公司推出相片光盘的橘皮书标准,可存100张具有5种格式的高分辨率照片。可加上相应的解说词和背景音乐或插曲,成为有声电子图片集。Photo CD分为印刷照片光盘(Print CD)和显示照片光盘(Protfolio CD)。
e.蓝光光盘。蓝光光盘(Blu-ray Disc,BD)是DVD(Digital Versatile Disc,数字通用光盘)之后的下一代光盘格式之一,用于存储高品质的影音以及高容量的数据存储。蓝光光盘的命名是由于其采用波长405nm的蓝色激光光束进行读写操作(DVD采用650nm波长的红光读写器,CD则是采用780nm波长)。一个单层蓝光光盘的容量为25GB或27GB,足够录制长达4小时的高解析度影片。2008年2月19日,随着HD DVD领导者东芝宣布在3月底退出所有HD DVD相关业务,持续多年的下一代光盘格式之争正式划上句号,最终由SONY主导的蓝光光盘胜出。
②光盘存储器技术指标。光盘存储器技术指标主要体现在以下几方面。
a.存储容量。CD一般为650MB;DVD有4.7GB(DVD-5)、8.5GB(DVD-9)、9.4GB(DVD-10)和17GB(DVD-18)。单层的蓝光光盘的容量为25GB或27GB,双层可达到46GB或54GB,可存储长达8小时的高解析度影片,而容量为100GB或200GB的,分别是4层及8层。
b.平均存取时间。平均存取时间指计算机向光盘发出指令,到光盘驱动器在光盘上找到读写信息位置所花的时间。将光头沿径向移动全程1/3长度所用的时间称为平均寻道时间;盘片旋转一周所需时间的一半称为平均等待时间。
c.平均寻道时间+平均等待时间+光头的稳定时间=平均存取时间。
d.数据传输率。数据传输率指光头定位以后,单位时间内从光盘上读出的数据位数。数据传输率与光盘的转速、位密度和道密度密切相关。CD-ROM的单倍速为150kbit/s,DVD的单倍速为1.35Mbit/s,差值约1/9。
e.误码率和平均无故障时间(Mean Time Between Failure,MTBF)。一般未使用过的CD-ROM的原始误码率为3×10-4;有指纹的CD-ROM的误码率为6×10-4;有轻微划伤的CD-ROM的误码率为5×10-3;平均无故障时间MTBF一般可达到25000小时。
(2)数码存储卡技术
数码存储卡是指采用半导体“闪存”作为存储介质的数字存储卡片。尽管各种存储卡外形规格不同,其内部均采用半导体“闪存”(Flash Memory Chip)作为存储介质,并在数码存储卡中集成了一些控制器实现通信、读写、擦拭工作。数码存储卡具有体积小巧、携带方便、使用简单的优点。同时,由于数存储卡具有良好的兼容性,便于在不同数码产品间交换数据。随着技术的发展,数码存储卡存储容量读写速度不断提升,应用也快速普及,常用于手机、DC(数码相机)、DV、便携式计算机等数码产品的独立存储介质。
①数码存储卡分类。常见的数码存储卡有CF卡、SD卡、MMC卡、SM卡、记忆棒(MemoryStick)、xD卡等。
a.CF卡。CF(Compact Flash)卡是最早推出的数码存储卡,1994年由SanDisk公司推出。CF存储卡的部分结构采用强化玻璃及金属外壳。CF存储卡采用Standard ATA/IDE接口界面,配备专门的PCMCIA适配器,具有PCMCIA-ATA功能,并与之兼容。CF卡是一种固态产品,即工作时没有运动部件。CF卡采用闪存(Flash)技术,是一种稳定的存储解决方案,不需要电池来维持其中存储的数据。对所保存的数据,CF卡比磁盘驱动器安全性和保护性更高,可靠性提高5到10倍,而且CF卡的用电量仅为小型磁盘驱动器的5%。多个CF卡合并到一起可形成SSD硬盘。与其他数码存储卡相比,CF卡单位容量的存储成本更低,速度更快。CF卡分为CF Type I、CF Type II两种类型。由于CF存储卡的插槽可以向下兼容,因此TypeII插槽可使用CF TypeII卡、CF Type I卡,如图1-1-2所示。
图1-1-2 CF卡
b.MMC卡。MMC卡(Multimedia Card,多媒体卡)是Sandisk和西门子于1997年联手推出的数码存储卡。MMC卡主要由存储单元和智能控制器组成,设计为一种低成本的数据平台和通信介质,耐使用可反复进行读写30万次。MMC存储卡可以分为MMC和SPI两种工作模式。MMC模式是默认的标准模式,具有MMC的全部特性。SPI模式是MMC协议的一个子集,主要用于使用小数量卡(通常是1个)和低数据传输率(和MMC协议相比)的系统,该模式把设计花费减到最小,其性能不如MMC模式。MMC卡接口设计为7针,其中3针用于电源供应,3针用于数据操作(SPI模式加1针用于选择芯片)。近年来MMC卡技术已基本被SD卡代替。
c.SD卡。SD(Secure Digital)卡是日本松下公司、东芝公司、美国SanDisk公司共同开发的数码存储卡,于1999年8月首次发布。SD卡数据传送和物理规范由MMC发展而来,读写速度比MMC卡快4倍。SD接口保留MMC的7针接口,另外在两边加2针,作为数据线。SD卡最大的特点是通过加密功能,保证数据资料安全,如图1-1-3所示。
图1-1-3 SD卡
SD的衍生产品主要有两种:MiniSD卡与MicroSD卡。
MiniSD卡。MiniSD由松下和SanDisk于2003年共同开发的。MiniSD卡的设计初始是为拍照手机而作,通过SD转接卡可作为一般SD卡使用。MiniSD卡的容量由16MB至128GB。
MicroSD卡。在超小型存储卡产品上,SD协会率先将T-Flash纳入其家族并命名为MicroSD,用来替代MiniSD的地位。MicroSD在2005年推出后令消费者惊艳不已,到2008年手机已经普遍使用这种小存储卡。
e.MS卡。即Memory Stick记忆棒,采用精致醒目的蓝色或黑色外壳,具有写保护开关,主要运用于SONY产品。和很多Flash Memory存储卡不同,Memory Stick规范是非公开的,没有标准化组织。MS卡采用SONY的外型、协议、物理格式和版权保护技术,若使用该规范就必须和SONY谈判签定许可。Memory Stick包括控制器在内,采用10针接口,数据总线为串行。SONY独立针槽的接口易于从插槽中插入或抽出,不轻易损坏;针与针不会互相接触,降低发生误差的可能性,使资料传送更可靠;同时比插针式存储卡更容易清洁。由Memory Stick所衍生出来的Memory Stick Pro和Memory Stick Duo是索尼记忆棒向高容量和小体积发展的产物。
f.SM卡。SM卡最早由东芝公司推出,将存储芯片封装起来,自身不包含控制电路,所有的读写操作安全依赖于使用它的设备。由于结构简单可做得很薄,便携性方面优于CF卡。但兼容性差是其最大的缺点,一张SM卡若在MP3播放器使用过,数码照相机有不能再读写的可能。
g.xD图像卡。xD图像卡是继上面几种存储卡而后生的存储卡产品,是富士胶卷和奥林巴斯光学工业为SM卡开发的后续产品,专为富士和奥林巴斯数码相机而设计。它的特点是集体积更小、容量更大。
②数码存储卡的主要技术指标。数码存储卡的主要技术指标包括容量、数据读取速度、数据写入速度、接口针数、响应时间等。容量目前主要有8GB、32GB、64GB、128GB等类型。读取速度主要有20MB/s、30MB/s、90MB/s等多种规格。接口针数主要有MMC卡7针、SD卡9针、MS卡10针、XD卡18针、SM卡22针、CF卡50针,如表1-1-1所示。
表1-1 -1常见数码存储卡的主要技术指标
随着技术的进步,各种存储卡的技术参数也在发生很大的变化。以SD卡为例,根据不同的规范SD有不同的技术参数。按SD1.0规范(现已不用),以CD-ROM的150KB/s为1倍速的速率来计算,普通的SD卡的读写速度比CD-ROM快6倍(900KB/s),高速SD卡则达到10MB/s以上的传输速率。按SD2.0的规范,对SD卡的速度分级方法为Class 2、Class 4、Class 6和Class 104个等级。按SD3.01规范的SD卡被称为超高速卡,速率定义为UHS-I和UHS-II。其中UHS-I卡的速度等级分为UHS-Class0和UHS-Class1。另外,SD卡容量目前有3个级别:SD、SDHC、SDXC。SD容量有32MB、64MB、128MB、256MB、512MB、1GB、2GB、4GB、8GB、16GB、32GB、64GB、128GB等。
需要说明,存储卡的读取速度与写入速度往往不同,通常读取速度高于写入速度。
4.实时多任务操作系统技术
实时多任务操作系统(Real Time Multi-Tasking Operation System,RTOS)是嵌入式应用软件的基础和开发平台。RTOS是一段嵌入在目标代码的软件,可提供一个可靠性和可信性很高的实时内核,将CPU时间、中断、I/O、定时器等资源包装起来,留给用户一个标准的应用程序编程接口(Application Programming Interface,API),并根据各个任务的优先级,在不同任务之间合理分配CPU时间。RTOS是针对不同处理器优化设计的高效率实时多任务内核,基本功能包括任务管理、定时器管理、存储器管理、资源管理、事件管理、系统管理、消息管理、队列管理、旗语管理等。这些管理功能通过内核服务函数形式交给用户调用,优秀的RTOS可面对几十个系列的嵌入式处理器(如MPU、MCU、DSP、SOC等)提供类同的API接口,这是RTOS基于设备独立的应用程序开发基础。在RTOS基础上可编写各种硬件驱动程序、专家库函数、行业库函数、产品库函数等,因此RTOS又是一个软件开发平台。
RTOS的引入解决了嵌入式软件开发标准化的难题。目前,RTOS可支持从8bit的8051到32bit的PowerPC及DSP等几十个系列的嵌入式处理器。同时,基于RTOS开发的程序具有较高的移植性,一些成熟的通用程序可作为专家库函数产品推向社会,促进行业交流及社会分工专业化,减少重复劳动,提高知识创新的效率。
当前,高质量源代码的RTOS主要由美国提供。如由苹果公司开发的操作系统互联网操作系统(Internetwork Operating System,iOS),主要用于iPhone、iPod Touch、iPad、Apple TV等设备。该系统原名为iPhone OS,2010年6月7日WWDC大会上宣布改名为iOS。iOS与Mac OS X操作系统一样以Darwin为基础开发,iOS系统架构分为4个层次:核心操作系统(The Core OS Layer)、核心服务层(The Core Services Layer)、媒体层(The Media Layer)、可轻触层(The Cocoa TouchLayer)。系统操作占用大概240MB内存空间。Android(安卓)也是RTOS中的一种,是以Linux为基础的开放源码操作系统,主要使用于便携设备。Android操作系统由Andy Rubin开发,最初用于手机;2005年由Google收购注资,并联合多家制造商组成开放手机联盟开发改良,逐渐扩展到平板计算机等领域。另外,RTOS还包括微软的Windows Phone7、RIM的Blackberry OS等。