Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1074831
  • 博文数量: 155
  • 博客积分: 2525
  • 博客等级: 大尉
  • 技术积分: 2242
  • 用 户 组: 普通用户
  • 注册时间: 2011-05-05 20:52
文章分类

全部博文(155)

文章存档

2013年(1)

2012年(149)

2011年(5)

分类: 嵌入式

2012-09-11 17:02:05

第一部分:基本概念讲解
媒体:是表示,传输,存储信息的载体,常人们见到的文字、声音、图像、图形等都是表示信息的媒体。
多媒体: 是声音、动画、文字、图像和录像等各种媒体的组合,以图文并茂,生动活泼的动态形式表现出来,给人以很强的视觉冲击力,留下深刻印象
多媒体技术:是将文字、声音、图形、静态图像、动态图像与计算集成在一起的技术。它要解决的问题是计算机进一步帮助人类按最自然的和最习惯的方式接受和处理信息。
流媒体 :流媒体是指采用流式传输的方式在Internet播放的连续时基媒体格式,实际指的是一种新的媒体传送方式,而不是一种新的媒体格式(在网络上传输音/视频等多媒体信息现在主要有下载和流式传输两种方式)流式传输分两种方法:实时流式传输方式(Realtime streaming)和顺序流式传输方式(progressive streaming)。
多媒体文件:是既包括视频又包括音频,甚至还带有脚本的一个集合,也可以叫容器;
媒体编码:是文件当中的视频和音频所采用的压缩算法。也就是说一个avi的文件,当中的视频编码有可能是A,也可能是B,而其音频编码有可能是1,也有可能是2。    转码 :指将一段多媒体包括音频、视频或者其他的内容从一种编码格式转换成为另外一种编码格式
视频:连续的图象变化每秒超过24帧(Frame)画面以上时,根据视觉暂留原理,人眼无法辨别单幅的静态画面,看上去是平滑连续的视觉效果,这样连续的画面叫做视频
音频 :人类能听到的声音都成为音频,但是一般我们所说到的音频时存储在计算机里的声音

第二部分:视频文件格式
基本视频概念讲解:
码率:码率就是数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒。 通俗一点的理解就是取样率,
单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件,但是文件体积与取样率是成正比的,所以几乎所
有的编码格式重视的都是如何用最低的码率达到最少的失真。但是因为编码算法不一样,所以也不能用码率来统一衡量音质
或者画质 
 
帧:帧就是一段数据的组合,它是数据传输的基本单位。就是影像动画中最小单位的单幅影像画面,相当于电影胶片上的每
一格镜头。 一帧就是一副静止的画面,连续的帧就形成动画,如电视图像等。
 
帧率:帧率即每秒显示帧数,帧率表示图形处理器处理场时每秒钟能够更新的次数。高的帧率可以得到更流畅、更逼真的动画。
一般来说30fps就是可以接受的,但是将性能提升至60fps则可以明显提升交互感和逼真感,但是一般来说超过75fps一般就不
容易察觉到有明显的流畅度提升了。如果帧率超过屏幕刷新率只会浪费图形处理的能力,因为监视器不能以这么快的速度更新
,这样超过新率的帧率就浪费掉了。
 
关键帧:相当于二维动画中的原画,指角色或者物体运动或变化中的关键动作所处的那一帧,它包含了图像的所有信息,后来
帧仅包含了改变了的信息。如果你没有足够的关键帧,你的影片品质可能比较差,因为所有的帧从别的帧处产生。对于一般的
用途,一个比较好的原则是每5秒设一个关键键。但如果时那种实时传输的流文件,那么要考虑传输网络的可靠度,所以要1到
2秒增加一个关键帧。
 
目前我们经常见的视频格式无非就是两大类: 
1、影像格式(Video) 
2、流媒体格式(Stream Video)
在影像格式中还可以根据出处划分为三大种: 
1、AVI格式:这是由微软(Microsoft)提出,具有“悠久历史”的一种视频格式 
2、MOV格式:这是由苹果(Apple)公司提出的一种视频格式 
3、MPEG/MPG/DAT:这是由国际标准化组织ISO(International Standards Organization)与IEC(International Electronic Committee)联合开发的一种编码视频格式。MPEG是运动图像压缩算法的国际标准,现已被几乎所有的计算机平台共同支持。
在流媒体格式中同样还可以划分为三种: 
1、RM格式:这是由Real Networks公司开发的一种新型流式视频文件格式。 
2、MOV/QT格式:MOV也可以作为一种流文件格式。QuickTime能够通过Internet提供实时的数字化信息流、工作流与文件回放功能,为了适应这一网络多媒体应用,QuickTime为多种流行的浏览器软件提供了相应的QuickTime Viewer插件(Plug-in),能够在浏览器中实现多媒体数据的实时回放。 
3、ASF格式:这是由微软公司开发的流媒体格式,是一个在Internet上实时传播多媒体的技术标准。
4. FLV
 
 
具体视频文件格式详解:
*. MPEG/.MPG/.DAT 
MPEG也是Motion Picture Experts Group 的缩写。这类格式包括了 MPEG-1, MPEG-2 和 MPEG-4在内的多种视频格式。MPEG-1相信是大家接触得最多的了,因为目前其正在被广泛地应用在 VCD 的制作和一些视频片段下载的网络应用上面,大部分的 VCD 都是用 MPEG1 格式压缩的 ( 刻录软件自动将MPEG1转为 .DAT格式 ) ,使用 MPEG-1 的压缩算法,可以把一部 120 分钟长的电影压缩到 1.2 GB 左右大小。MPEG-2 则是应用在 DVD 的制作,同时在一些 HDTV(高清晰电视广播)和一些高要求视频编辑、处理上面也有相当多的应用。使用 MPEG-2 的压缩算法压缩一部 120 分钟长的电影可以压缩到 5-8 GB 的大小(MPEG2的图像质量MPEG-1 与其无法比拟的)。
*.AVI
 它的英文全称为Audio Video Interleaved,即音频视频交错格式。是将语音和影像同步组合在一起的文件格式。它对视频文件采用了一种有损压缩方式,但压缩比较高,因此尽管面面质量不是太好,但其应用范围仍然非常广泛。AVI支持256色和RLE压缩。AVI信息主要应用在多媒体光盘上,用来保存电视、电影等各种影像信息。它于1992年被Microsoft公司推出,随Windows3.1一起被人们所认识和熟知。所谓“音频视频交错”,就是可以将视频和音频交织在一起进行同步播放。这种视频格式的优点是图像质量好,可以跨多个平台使用,其缺点是体积过于庞大,而且更加糟糕的是压缩标准不统一,最普遍的现象就是高版本Windows媒体播放器播放不了采用早期编码编辑的AVI格式视频,而低版本Windows媒体播放器又播放不了采用最新编码编辑的AVI格式视频,所以我们在进行一些AVI格式的视频播放时常会出现由于视频编码问题而造成的视频不能播放或即使能够播放,但存在不能调节播放进度和播放时只有声音没有图像等一些莫名其妙的问题,如果用户在进行AVI格式的视频播放时遇到了这些问题,可以通过下载相应的解码器来解决。是目前视频文件的主流。 这种格式的文件随处可见,比如一些游戏、教育软件的片头,多媒体光盘中,都会有不少的 AVI 。现在,在WINDOWS 95或98里都能直接播放AVI,同一种格式的avi文件有可能采用不同的编码方式,最常见的有 Intel Indeo(R)Video R3.2(像游戏过场动画等,是目前使用最广泛的一种avi编码技术)、Microsoft video 等。
*.RA/RM/RAM
 *.RM, Real Networks公司所制定的音频/视频压缩规范Real Media中的一种,Real Player能做的就是利用Internet资源对这些符合Real Media技术规范的音频/视频进行实况转播。在Real Media规范中主要包括三类文件:RealAudio、Real Video和Real Flash (Real Networks公司与Macromedia公司合作推出的新一代高压缩比动画格式)。REAL VIDEO (RA、RAM)格式由一开始就是定位就是在视频流应用方面的,也可以说是视频流技术的始创者。它可以在用 56K MODEM 拨号上网的条件实现不间断的视频播放,从RealVideo的定位来看,就是牺牲画面质量来换取可连续观看性。其实RealVideo也可以实现不错的画面质量,由于RealVideo可以拥有非常高的压缩效率,很多人把VCD编码成RealVideo格式的,这样一来,一张光盘上可以存放好几部电影。REAL VIDEO存在颜色还原不准确的问题,RealVideo就不太适合专业的场合,但RealVideo出色的压缩效率和支持流式播放的特征,使得RealVideo在网络和娱乐场合占有不错的市场份额。
*.MOV 
MOV格式,美国Apple公司开发的一种视频格式,默认的播放器是苹果的QuickTimePlayer。具有较高的压缩比率和较完美的视频清晰度等特点,但是其最大的特点还是跨平台性,即不仅能支持MacOS,同样也能支持Windows系列, 在所有视频格式当中,也许MOV格式是最不知名的。也许你会听说过QuickTime,MOV格式的文件正是由它来播放的。在PC几乎一统天下的今天,从Apple移植过来的MOV格式自然是受到排挤的。它具有跨平台、存储空间要求小的技术特点,而采用了有损压缩方式的MOV格式文件,画面效果较AVI格式要稍微好一些。到目前为止,它共有 4 个版本,其中以 4.0 版本的压缩率最好。这种编码支持16位图像深度的帧内压缩和帧间压缩,帧率每秒10帧以上。现在这种格式有些非编软件也可以对它时行处理,其中包括ADOBE公司的专业级多媒体视频处理软件AFTEREFFECT和PREMIERE。
*.ASF
 ASF (Advanced Streaming format高级流格式)。ASF 是 MICROSOFT 为了和现在的 Real player 竞争而发展出来的一种可以直接在网上观看视频节目的文件压缩格式。ASF使用了 MPEG4 的压缩算法,压缩率和图像的质量都很不错。因为 ASF 是以一个可以在网上即时观赏的视频“流”格式存在的,所以它的图像质量比 VCD 差一点点并不出奇,但比同是视频“流”格式的 RAM 格式要好。 ASF支持任意的压缩/解压缩编码方式,并可以使用任何一种底层网络传输协议,具有很大的灵活性。ASF流文件的数据速率可以在28.8Kbps到3Mbps之间变化。用户可以根据自己应用环境和网络条件选择一个合适的速率,实现VOD点播和直播。
*.WMV
 WMV是微软推出的一种流媒体格式,它是ASF的升级延伸,在同等视频质量下,WMV格式的体积非常小,因此很适合在网上播放和传输。微软希望用其取代QuickTime之类的技术标准以及WAV、AVI之类的文件扩展名。WMV的主要优点在于:可扩充的媒体类型、本地或网络回放、可伸缩的媒体类型、流的优先级化、多语言支持、扩展性等。
*. NAVI
 如果你发现原来的播放软件突然打不开此类格式的AVI文件,那你就要考虑是不是碰到了n AVI。n AVI是 New AVI 的缩写,是一个名为 Shadow Realm 的地下组织发展起来的一种新视频格式。它是由Microsoft ASF 压缩算法的修改而来的(并不是想象中的 AVI),视频格式追求的无非是压缩率和图像质量,所以 NAVI 为了追求这个目标,改善了原始的 ASF 格式的一些不足,让 NAVI 可以拥有更高的帧率。可以这样说,NAVI 是一种去掉视频流特性的改良型 ASF 格式。
*.FLV
FLV 是 FLASH VIDEO 的简称,是由Macromedia 公司开发的属于自己的流式视频格式。FLV也就是随着Flash MX的推出发展而来的视频格式,是在sorenson 公司的压缩算法的基础上开发出来的。FLV格式不仅可以轻松的导入Flash 中,速度极快,并且能其到保护版权的作用,并且可以不通过本地的微软或者REAL播放器播放视频。Flash MX 2004对其提供了完美的支持,它的出现有效地解决了视频文件导入Flash后,使导出的SWF文件体积庞大,不能在网络上很好的使用等缺点。由于它形成的文件极小、加载速度极快,使得网络观看视频文件成为可能,它的出现有效地解决了视频文件导入Flash后,使导出的SWF文件体积庞大,不能在网络上很好的使用等缺点。

视频文件转换:
比较常见的视频格式转化有:
 
RM→ASF
AVI→RMVB
dat-->divx
mpg-->divx
vcd-->rm
dat-->rm
mpg,dat、avi、mov-->rm
*-->FLV
最近视频博客的兴起,导致了flv的快速发展

AVI→MPEG(MPEG-1) 
     例如有纪念性的家庭录影带,可以事先转换成AVI格式,再用软件将它转换成MPEG-1格式,然后用刻录器将MPEG-1格式文件刻录光盘片,得到的就是普通的VCD光盘了,可以拿到任何VCD播放器上播放。
MPEG(MPEG-1)→AVI 
       从MPEG到AVI文件之间的转换,为磁盘节省空间。
MPEG(MPEG-1)→ASF 
       将vcd文件转码后实现VOD点播和直播。

ASF→MPEG(MPEG-1) 
      由于ASF视频格式的先天限制,一般来说它的图像质量往往比不上MPEG-1,所以转换之前,请三思而后行。 
        
DVD(MPEG-2)→VCD (MPEG-1) 
       由于DVD驱动器尚未普及以及DVD光盘成本昂贵等客观原因,DVD影片一直未能像VCD一样流行。但我们可以将喜爱的DVD影片转换成MPEG-1格式的视频文件,留在硬盘上观看或是刻成VCD光盘。
dat/mpg->mp3
CD-->wav,mp3,wma
rm-->mp3
mp3-->wma
        。
以上列举的视频格式转化都是比较常见的,当然了,说到底,是有这方面的实际应用需求才会出现这方面的视频转化需要。 
比如说,要把一部VCD(也就是MPEG1编码的视频文件)制作成可以在线观看的影片,最大的瓶颈就在于文件尺寸的改变,并且要能够适应网络的特点,这样原始的格式就不能满足需   要,必须要转化成互联网视频播放规范的流媒体格式才可以,比如说是RM或者ASF,这就是需要,所以针对影像格式转化为流媒体格式的软件也就应用而生了,还有现在非常流行的MPEG4视频压缩技术,它能够把一张DVD压缩到一张CD上去,并且视频效果也不会有太大的变化,至少在我们普通用户看来也是非常不错的,而文件体积则大大减小了,这就要求有能够把DVD转化成MPEG4文件的软件出现,但是如果有人想要把RM转化成MPEG1(VCD),就没有太大的实际意义了,因为这样并不能给视频效果带来太大的提升,反而文件尺寸大了许多,所以我们很少能够看到这样的转化软件,其他的也类似,所以,在视频转化领域,可以参照以下两个原则: 
1 有明确的应用方向:就是说一种视频格式转化成另一种视频格式,必须要有明确的应用方向,即目标格式能够有很广泛的应用价值,而不是说为了转化而转化,比如上文所说的VCD->RM,它的应用方向就是网络播放,因为现在在线电影是一个很大的市场和网络的应用方向。 
2 能够提升播放价值: 就是说一种视频格式转化成另一种视频格式除了有明确的应用方向外,还要考虑转化是不是有价值,如果说转化后的文件播放效果没有明显提升,但是文件尺寸却大了一倍,我想这样亏本的买卖是没有人会去做的,RM转化成VCD就没有实际的意义,原因如前文所述,而DVD转化成MPEG4价值就很大,不说转化后的播放效果,单说成本就降低了不少。
音视频压缩编码标准:
多媒体编辑码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式,现在主要的编码方式有:
1.   MPEG系列: 视频编码方面主要是Mpeg1、Mpeg2、Mpeg4、Mpeg4 AVC; 
音频编码方面主要是MPEG Audio Layer 1/2、MPEG Audio Layer 3、MPEG-2 AAC 、MPEG-4 AAC等等。 注意:DVD音频没有采用Mpeg的 
2. H.26X系列:包括H261、H262、H263、H263+、H263++、H264
2.   微软windows media系列: 视频编码有Mpeg-4 v1/v2/v3、Windows Media Video 7/8/9/10 ;音频编码有Windows Media audeo v1/v2/7/8/9
3.   Real Media系列: 视频编码有RealVideo G2、RealVideo 8/9/10 ;音频编码有RealAudio cook/sipro、RealAudio AAC/AACPlus等
4.   QuickTime系列: 视频编码有Sorenson Video 3、Apple MPEG-4、Apple H.264 ;音频编码有QDesign Music 2、Apple MPEG-4 AAC
5.   其它,如:Ogg、On2-vpx、flash vidio,以及M-JPEG视频压缩方式
各视频编码的应用场合简要:http://blog.csdn.net/luchy/archive/2007/03/27/1542478.aspx这里讲的挺详细的
1.    Mpeg1较早的视频编码,质量比较差,主要用于 CD-ROM 存储视频,国内最为大家熟悉的就是 VCD(Video CD),他的视频编码就是采用 MPEG-1;
2.    在 MPEG-1 的基础上开发的一种视频编码,它的质量远远好于 MPEG-1,所以被运用在了 DVD-Video 上面,MPEG-2 是 DVD-Video 唯一指定的视频编码。MPEG-2 不光运用于 DVD-Video ,现在大部分 HDTV(高清电视)也采用 MPEG-2 编码,分辨率达到了 1920x1080。
3.    MPEG-3是MPEG组织制定的视频和音频压缩标准。本来的目标是为HDTV提供20-40Mbps视频压缩技术。在标准制定的过程中,委员会很快发现MPEG-2可以取得类似的效果。随后,MPEG-3项目停止了。
4.    MPEG-4是为了适应网络的需求,采用一系列新技术,以最少的数据获得最佳的图像质量为目标的新一代编码方式。主要应用在数字电视、动态图像、互联网、实时多媒体监控、移动多媒体通信、Internet/intranet上的视频流与可视游戏、DVD上的交互多媒体应用等方面。Divx,xvid,ms mpeg4都是采用mpeg-4视频编码的。对于普通用户来说,MPEG-4在目前来说最有吸引力的地方还在于它能在普通CD-ROM上基本实现DVD的质量;用MPEG-4压缩算法的ASF(Advanced Streaming format,高级格式流)可以将120分钟的电影压缩为300MB左右的视频流;采用MPEG-4压缩算法的DIVX视频编码技术可以将120分钟的电影压缩600MB左右
5.    Mpeg4 AVC和 MPEG-4 是两种不同的编码,主要是在极低码率下 MPEG-4 表现并不好,而 AVC 更加适合低带宽传输。在高码率上,AVC 的表现也要好过 MPEG-4,所以现在大有取代 MPEG-4 的趋势。下一代 HD DVD 和 Blue Ray Disc 已经正式接纳 AVC 为视频编码方案之一,相信 AVC 的发展前途会非常好。AVC/H.264极有可能成为下一代视频格式,(avs,中国标准)
6.    H.261是ITU-T为在综合业务数字网(ISDN)上开展双向声像业务(可视电话、视频会议)而制定的,它是最早的运动图像压缩标准,它详细制定了视频编码的各个部分,包括运动补偿的帧间预测、DCT变换、量化、熵编码,以及与固定速率的信道相适配的速率控制等部分。
7.    H.262是由ITU-T的VCEG组织和ISO/IEC的MPEG组织联合制定的,所以制定完成后分别成为了两个组织的标准,正式名称是"ITU-T建议H.262"和"ISO/IEC 13818-2"。这两个标准在所有的文字叙述上都是相同的。
8.    H.263是ITU-T为低于64kb/s的窄带通信信道制定的视频编码标准,它是在H.261基础上发展起来的
9.    H263+是H.263 的第二个版本,加入了许多新技术来扩展 H.263 的应用范围。
10.H.263++是在 H.263+ 上增加了几个选项,来增强码流在恶劣信道上的抗误码性能,同时提高增强编码效率。
11.H.264也就是前面提到的 MPEG-4 AVC。H.264是由ISO/IEC与ITU-T组成的联合视频组(JVT)制定的新一代视频压缩编码标准。在ISO/IEC中该标准命名为AVC (Advanced Video Coding),作为MPEG-4标准的第10个选项;在ITU-T中正式命名为H.264标准。
12.Microsoft MPEG-4 v1/v2/v3,最早的 ASF 采用的视频编码,基于 MPEG-4 技术开发,DivX3.11 就是基于 Microsoft MPEG-4 v3 破解出来的,后来才进行了重写。
13.Windows Media Video 7,Microsoft 正式开发的第一个 Windows Media Video,开始脱离了 MPEG-4,和 MPEG-4 不兼容,从这一点上可见微软的野心。可惜这个版本压缩效果非常烂,打破了微软一飞冲天的美梦,不过它在压缩速度上非常快,现在网络上有很多采用这种格式压缩的 WMV。
14.Windows Media Video 8,在 WMV7 基础上改进的版本,质量上面进不了不少
15.Windows Media Video 9,微软的重头戏,不光是这一个编码,V9 系列更是一个平台,让微软有足够的能力挑战 MPEG,ITU 等标准化组织。虽然这个版本并没有微软吹得那么厉害,特别是低码率下比较差,不过跟以前版本相比进步还是非常多的。特别是 WMV HD 的应用,让微软也跻身视频标准领域。
16.RealVideo G2,早期的 RealVideo 编码,质量比较糟糕,不过那时在网络上算是很先进了,毕竟当时能用网络看视频的人不多。
17.RealVideo 8,随着 RealPlayer 8 推出的视频格式,是现在主流的网络视频编码之一。编码速度较慢,质量也只能算一般。
18.RealVideo 9,RealNetworks 开发的新一代编码,质量进步了很多,特别是在底码率下,而且编码速度很快,做到了速与质的很好统一。
19.RealVideo 10,在 RealVideo 9 基础上加入了一些参数,如 EHQ 等,更加精确控制码率,和 RealVideo 9 兼容。
20.Sorenson Video 3,Sorenson Media 公司随 QuickTime 5 发布的编码器,质量很不错,已经成为 QuickTime 的标准视频编码,网络上大部分电影预告片都采用这种编码。
21.Apple MPEG-4,Apple 公司自己开发的 MPEG-4 编码器,随 QuickTime 6 发布,质量很差。
22.Apple H.264,Apple 公司自己开发的 H.264 编码器,随 QuickTime 7 发布,支持 HDTV。
23.Ogg 是 Xiph.org 基金会发起的一个开放源代码项目,包括视频音频,服务器,传输系统,客户端,硬件支持等,最为大家熟悉的就是音频 Ogg Vorbis,它被认为是迄今为止 128kbps 码率上最好的编码器。
24.On2 VPX系列,On2 公司开发了一系列优秀的视频编码,现在应用得最多的恐怕是 Nullsoft Video 的视频,它们就采用了 VP3,VP5,VP6 视频编码。
25.Flash Video,Macromedia 公司推出的多媒体格式,主要用于在 Flash 中压缩视频。视频采用 Sorenson 公司的 Spark 编码器,音频采用 MP3,质量比较差。传闻下一代 Flash Video 准备使用 On2 VP6 ,那将让视频质量得到一个量的提升。
26.M-JPEG(Motion-JoinPhotographicExpertsGroup)技术即运动静止图像(或逐帧)压缩技术,广泛应用于非线性编辑领域可精确到帧编辑和多层图像处理,把运动的视频序列作为连续的静止图像来处理,这种压缩方式单独完整地压缩每一帧,在编辑过程中可随机存储每一帧,可进行精确到帧的编辑,此外M-JPEG的压缩和解压缩是对称的,可由相同的硬件和软件实现。
阅读(2276) | 评论(0) | 转发(3) |
0

上一篇:C++对象初始化

下一篇:线程属性

给主人留下些什么吧!~~