MPEG原理简介

来源:互联网 发布:如何防范网络购物陷阱 编辑:程序博客网 时间:2024/05/18 03:32

本文章来自网络

1.前言

这一两年来市面上多了许多VideoCD player,很多人都搞不清楚它是用何原理制做的,或者知道MPEG却又不知道这MPEG是什么东东。更恐怖的是连我国的HDTV也要用MPEG,这对Audiophile或Videophile来说技术的演进实在太快了,学生时代读书也没那么累。其实MPEG跟AC-3一样也是一种压缩方法,只不过它不是只有音讯,它连视讯都压,而且最高可以压到100倍,没错,一百倍。

MPEG也是一个可以让计算机厂商涉足消费性电子产品的踏脚石,因为MPEG最早的应用是在个人计算机(PC)上,即所谓的多媒体计算机(Multi-MediaPC)。记得才没几年前,'90还是'91吧,我还是用着286,买了当时市面上第一片16位的声卡,Pro AudioSpectrum 16, PAS 16。哇,一买下来立刻觉得286不够快,有些application根本跑不起来或效果很差。没多久,终于受不了,买了486DX33,果然将PAS-16的潜力完全发挥。再过不到半年又买了一台NEC两倍速的CD-ROM,在那时这样的计算机就叫多媒体计算机,而PAS16+CD-ROM也花了我七百多美元,到现在我还在用。然后就是MPEG的出现;一开始PC只能用软件来译码,后来MPEGdecoder芯片的生产(国内的华邦电子也有),才有MPEG card的出现,更进一步的才有VideoCD player。所以MPEG从一开始就不是由消费性电子厂商主导,而是由计算机衍生出来的。像美国与我国HDTV也是用MPEG 2为标准,但是像MPEG编译码技术又对一般的家电厂商来说反而没有计算机厂商来的熟悉。君不见,在新一波的ITV(InteractiveTV),NII,set-top box都有许多计算机厂商参与。如果再说到Videoon Demand随意视讯更是不能没有计算机厂商,因为到目前为止,videoservers,用来储存影片的装置,好像没有家电厂商插上一脚,都是像IBM,HP之类的公司制造的。

本文的目的就是对一般人会产生的MPEG问题做一概括的解释,以使读者能对MPEG有初步的了解。

 

2.什么是MPEG?

MPEG是一群人在ISO(International Standard Organization)下所制定用来压缩视讯与音讯的标准,说的仔细一点就是一个订定bitstream格式的标准。那什么是bitstream呢?bitstream是将视讯及音讯记录到介质(比如说录像机,DVD-digitalvideo disk,电缆或无线传输)上一连串的0与1。为了使这一连串的0与1有意义,我们就须对它编码,其实bitstream一但制定下去,可以说连译码器的架构也差不多订定了。可是只要编码器产生的bitstream标准符合MPEG的标准,你要怎样压缩产生是各个厂商的事。

这样讲好了,比如说HDCD,它可以用一般的D/A converter,也可以用有PacificMicrosonic芯片的D/Aconverter。为什么?因为当初发展CD时Philips与SONY有制订写在CD上数据的格式,如果不符合的话即使长的像CD也不能叫CD(比如CD-ROM)以及使用CD的logo,可是你要如何产生这些数据,他可是管不着,所以HDCD才能将20bit的数据写到CD上。

说了半天忘了解释MPEG的缩写是Moving PicturesExperts Group,动画专家群,这样的翻译不知各位意下如何?MPEG这些会员一年约聚会四次,每次约一星期,当然不聚会的时后每位会员也是继续从事这方面的研究。

MPEG又分成MPEG 1, MPEG 2, MPEG 3, MPEG4。因为MPEG 3随着MPEG 2 HDTV的发展已经被MPEG 2所取代,而MPEG 4又是以视讯会议为主要应用,所以这篇文章将专注在MPEG 1与 MPEG 2上。

3.MPEG I 的video是甚么样的原理?

首先您要知道MPEG 1的分辨率是很低的,只有352x240个pixels(NTSC,PAL与SECAM又不同了),一秒30个frame,要记住一开始的MPEG 1是在计算机屏幕上显示的,而标准的VGA分辨率是640x480。影像是彩色的,但已转换成YUV空间表示,而其中的彩度(chrominance)信号U,V更降为176x120 pixels,而实际上由于人类对彩度没有来的对亮度敏感,所以即使彩度分辨率低到这种地步,我们也感觉不大出来。补充一点MPEG 1一定是non-interlace(非交错)的影像。 MPEG 2则interlace与progressive皆可。

那为什么要用352x240的分辨率?

因为这是从职业用的数字video器材标准CCIR-601来的。在NTSC的标准下,一秒有60个field,每个field有720x243的分辨率,别忘了这是interlace的。至于在彩度部份则是360x243,也是有60个field,interlace。明显的可以看出在水平方向亮度的分辨率,只有720的一半。至于MPEG1的输入型式叫SIF,是由CCIR-601,在水平方向减一半,时间部份也减一半,彩度的垂直部份再减一半。

好像有人嫌分辨率低了些,没关系,中华民国HDTV标准是MPEG 2而亮度1280x720,彩度是640x360,够高了吧。MPEG 2是一个新一代高画质的videocoding标准,它的bitrate比MPEG 1的1.5Mbits/s高,但最高达30Mbits/s。一般说来MPEG 1的画质约相当于VHS,当bitrate高到3至5Mbits/s就相当于广播电视(NTSC约3Mbits/s,PAL约4Mbits/s),到8-10Mbits/s就非常接近CCIR 601的水平。

 

MPEG的video压缩主要是由两个技术来达成:blockbased motion compensation来缩减时域上多余的讯息,transform domain(DCT) based compression则用来减低频域的资料量。

block based motion compensation简单的说:如果两幅画面有相同的东西,则第一幅画面如果已经完整传送了整幅画面的信息,那第二幅画面就可只传两幅画面不同之处的讯息即可。

Transform domain(DCT) based compression则是将一幅画面做DCT转换后将高频部份(即人眼较看不到的细节)去掉,只传输低频部份。当然这也是依照视觉心理学所决定出来的,就好像AC-3在压缩时也是将人耳听不到的东西给去掉是一样的原理。

MPEG 1 video的压缩方法主要是利用每个frame之间的不同的地方。简单的说,MPEG是由三种不同的frame组合而成的:

1. I frame or Intra frame:它们是不利用过去历史,所编码的静止frame,它所占的size最大。没有I frame则无法像影碟随意选取画面。它的压缩是由DCT(DiscreteCosine Transform,也是一种时域到频域的转换)所完成的。通常是将一完整画面分成许多小块,8x8或16x16,再分别对小块做DCT转换。这部份的压缩与JPEG(一种静态图片压缩规格)很相似。

2. P frame or Predicted frame:从译码器的关点来说,它是从最近解出来的Iframe或Pframe所预测出来的。

3. B frame or Bidirectional frame: 它是从最近解出来的两个Iframes或Pframes所算出来的,一个是过去的,一个是未来。它的压缩量最大。

所以解出来的画面会是由这样的秩序组合而成的:

IBBPBBPBBPBBIBBPBBP..

也就是I与I之间有12个frames。至于为什么要用12个frames,是因为当我们随意选择某一片段开始放映时,比如说CD-ROM上,可以达到每0.4秒一个间隔,是不可能达到LD中的CAV,以frame为间隔。I与I的间隔若太长,效果会变差;若太短,bitrate又太高(因为I frame所占的 data size最大)。记得吗?MPEG 1最初的运用是在CD-ROM上,第一代的CD-ROM(一倍速)传输率(data transferrate)只有150KBytes/sec=1200kbits/sec。所以bitrate一定要斤斤计较。至于Bframe与Pframe的比例也是由经验来的。

为了能看到连续的影像,您必需在送两个Bframes之前先送第一个Pframe,结

果压缩出来的数据串(datastream)就成了这个样子:

0xx312645

这些数目字代表frame的号码。xx如果是在一开始(第一个画面)那就直接跳到3,成了0312645;在其它时候就是B frames。

一定有人看得一头雾水。

前面有提到,解出来的画面会是这样的秩序组合而成的:

IBBPBBPBBPBBIBBPBBP..

也就是I是第0个frame,两个B分别是第1与第2个frame,依此类推。

但是在传送时是首先传I(第0个frame),再传P(第3个frame),然后才传两个B(第2,3个frame)。也就是先把I解出来再把P解出来后两者皆放到内存内,然后才解B(因为B须要I及P的数据才能完整解出)。但经过运算后则是按秩序0,1,2,3,4...显现在屏幕上。简单的说,bitstream里frame的秩序是与画面display的秩序是不同的。

4. Audio

MPEG I的audio又分成三层(layers),layer 3比layer 2复杂但音质较好,layer 2 又比layer 1复杂且音质好. 但在解碼时layer 3的decoder 可以解layer 3,layer 2及layer 1的bitstream,可是layer 2 decoder只能解layer 2及 layer 1的bitstream.所有layers的frame structure都是一样的。

所谓framestructure乃是音讯编码过后,将其数据记录到媒体的格式。不论是MPEG或AC-3,它们数据记载的方式是不同于一般的CD;都是收集了一定片段的samples后,编码,再写到媒体。像AC-3的一个frame(数据的frame,不是影像的)包含了1536个samples的数据,而MPEG 2则为1152个samples。

MPEG 2 的audio基本上来说是MPEG 1 layer 2的延伸,因此它是与MPEG1 backward compatible。最主要的不同当然在多声道的部份。

无论是MPEG1或MPEG2,它们基本的原理都与AC-3类似,利用perception coding来达成压缩的目地,有一点比较不同的是经时域-频域转换后出来的次频带,或者称为filterbanks,MPEG有32个,而AC-3有50个。详细的原理可参考 月号的高传真视听。

MPEG 1的三个层次(layer)共同之处在其基本架构皆相同,编码原理也都是perception coding。不同点则是随着层次的增加,复杂度也增加,编解碼的延迟(即从bitstream进来到听到声音的时间)也加长了,但音质(以bitrate而言)也更好了。以压缩比来说,layer1 约1:4,bitrate为一声道192kbps,layer 2约1:6至1:8,bitrate为一声道128kbps,layer 3约1:10至1:12之间,bitrate为一声道64kbps。

Layer 1的原理与DCC的PASC是相同的,是一个简化的MUSICAM(Maskingpattern adapted Universal Subband Integrated Coding And Multiplexing)编译码系统。Layer 2则采用MUSICAM编译码系统。Layer 3采用MUSICAM与ASPEC混合体的编译码系统。

5.那里有MPEG呢?

以美国来说

1. DBS(Direct Broadcast Satellite)直播卫星

Hughes(休斯)/USSB DBS 将会采用MPEG-2 video及audio。Thomson在刚发行的18月内有解碼盒(decoding box或set-top box)的独家制造权。而Hughes/USSB DBS已经于1994年4月开始播出,计划中有150个频道。

2. CATV(Cable Television)有线电视

虽然有些争议,但有线电视业者在Video上可以几乎确定采用MPEG 2,Audio则有些歧见。通用仪器(GeneralInstruments,美国最大的cableset-top box制造商)早已宣布用DOLBY AC-3,而Video则是MPEG 2的修改版。

3. HDTV

美国的GrandAlliance也宣布采用MPEG 2,交错(1440x960x30 Hz)与非交错(1280x720x60 Hz)都将使用。台湾原则上应是跟随此一标准。

至于欧洲方面(他们叫DVB, DigitalVideo Broadcasting)也决定改采MPEG 2,也就等于宣告了HD-MAC(D2-MAC是欧洲直播卫星采用的方法,澳洲也早在1985采用B-MAC,HD-MAC则是为HDTV所提的标准)的死亡。而日本的MUSE是唯一数字/模拟混合的HDTV标准,不过MUSE能否撑过本世纪还是个未知数。

6.MPEG与现有的电视,影碟,VHS的比较

如前面所说的,MPEG 1的画质约相当于VHS,当bitrate高到3至5Mbits/s就相当于广播电视(NTSC约3Mbits/s,PAL约4Mbits/s),到8-10Mbits/s就非常接近CCIR 601的水平。

对 VHS来说,它的亮度讯号-3db点约在2Mhz左右相当于200条的分辨率,彩度讯号更低,不到80,前面提过MPEG 1的亮度是352x240而彩度是176x120。从分辨率来说VHS只有在垂直方向的480条是优于MPEG 1的240条。但如把磁带的因素考虑进去,也就不是那么多了。而且一般的VHS会有时基(time base)的问题,这方面数字的video就比较不会有了。再说如果您买的是预录的节目带,这些带子通常是高速拷贝,效果一定又打折。

刚刚说过广播电视的bitrate,NTSC约3Mbits/s,PAL约4Mbits/s。但在较复杂的画面如运动比赛时,其bitrate会分别提高至5至6Mbits/s。

影碟就比较难打败了。NTSC的影碟的分辨率理论上可以高达568x480x30Hz;SN比的话,这年头要找比48db还低的影碟机可能还不多了。但要是节目的性质并没有很多的细节,且没有很大的动作,MPEG 1跟影碟的差别到没有很多。还有一个MPEG 1的好处,就是如果要把电影转成MPEG 1时因为MPEG 1跟电影一样都是progressive而非interlace,且电影是一秒24个画面,比起电视的30个画面又可省下20%的信息量。

 

7.结论

不管您喜不喜欢digital,有人到现在还是喜欢LP,有人到现在还是认为Beta比VHS好,digital的世纪就要来了。以往只有digitalCD,现在连video也要变成digital。

也许有人要问一定得压缩吗?Audio可以不压缩(CD即是),但video不压缩的话,其bitrate高达124Mbits/s。对所谓的Video-On-Demand(随意视讯),跟本太高;广播也一样,那么高的bitrate一定占用很多频道,就算是MUSE系统也有经过压缩。

也许过几年后又有人开始争议是AnalogVideo好或是DigitalVideo好,那就留给读者自己评断了。

原创粉丝点击