视频是现在电脑中多媒体系统中的重要一环。为了适应储存视频的需要,人们设定了不同的视频文件格式来把视频和音频放在一个文件中,以方便同时回放。 视频文件格式有不同的分类。
封装格式, 容器:
多媒体封装格式,(Multimedia Container Format),简称MCF、多媒体容器,是一个开放(没有身份规限,免费),自由把资料存放的格式。本来MCF是一个文件格式,就像微软的AVI,但它的文件格式包含着流式传输和广播设备。它并不压缩视频和音频的,但它就像一个容器一样可以把很多的多媒体容纳,例如:MPEG-4 (XviD、DivX),AC3,Ogg Vorbis,MP3等。
编码和编码格式:
视频编码是指连续图像的编码,与静态图像编码着眼于消除图像内的冗余信息相对,视频编码主要通过消除连续图像之间的时域冗余信息来压缩视频。
视频编解码器,是指一个能够对数字视频进行压缩或者解压缩的程序或者设备。通常这种压缩属于有损数据压缩。历史上,视频信号是以模拟形式存储在磁带上的。随着Compact Disc的出现并进入市场,音频信号以数字化方式进行存储,视频信号也开始使用数字化格式,一些相关技术也开始随之发展起来。视频编解码器使用的数字化格式叫编码格式
帧率:
帧率(Frame rate)是用于测量显示帧数的量度。帧指的是视频中每一个画面称为帧,所谓的测量单位为每秒显示帧数(Frames per Second,简:FPS)或”赫兹”(Hz)。
分辨率:
视讯的画面大小称为「解析度」。数位视讯以像素为度量单位,而类比视讯以水平扫瞄线数量为度量单位。标准画质电视讯号解析度为 720/704/640x480i60(NTSC)或768/720x576i50(PAL/SECAM)。新的高画质电视(HDTV)解析度可达 1920x1080p60,即每条水平扫瞄线有1920个像素,每个画面有1080条扫瞄线,以每秒钟60张画面的速度播放。
现在有许多的编解码器应用在电脑和消费电子设备中。所以,有一些编解码器功能相同,避免使用编解码器的兼容性的原因。最后,似乎不大可能,一个解码器将取代他们所有人。
码流(比特率, bitrate)
比特率是指每秒传送的比特(bit)数。单位为 bps(Bit Per Second),比特率越高,传送的数据越大。比特率表示经过编码(压缩)后的音、视频数据每秒钟需要用多少个比特来表示,而比特就是二进制里面最小的单位,即一位,要么是0,要么是1。
比特率与音、视频压缩的关系,简单的说就是比特率越高,音、视频的质量就越好,但编码后的文件就越大;如果比特率越少则情况刚好相反。
Kbps:首先要了解的是,ps指的是/s,即每秒。Kbps指的是网络速度,也就是每秒钟传送多少个千位的信息(K表示千位,Kb表示的是多少千个位),为了在直观上显得网络的传输速度较快,一般公司都使用kb(千位)来表示,如果是KBps,则表示每秒传送多少千字节。1KBps=8Kbps。
清晰度
清晰度主要由帧率和码率(决定每帧的数据量)决定。码率就是数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒。通俗一点的理解就是取样率,单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件。帧率就是在1秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次,通常用fps(Frames Per Second)表示。每一帧都是静止的图象,快速连续地显示帧便形成了运动的假象。高的帧率可以得到更流畅、更逼真的动画。每秒钟帧数 (fps) 愈多,所显示的动作就会愈流畅。
VCD
影音光碟(Video Compact Disc;VCD),是一种在光碟(Compact Disk)上存储视频信息的标准。VCD可以在个人电脑或VCD播放器以及大部分DVD播放器中播放。VCD标准由索尼、飞利浦、JVC、松下等电器生产厂商联合于1993年制定,属于数字光盘的白皮书标准。
VCD是一种全动态、全屏播放的视频标准。它的格式可分为:
1.分辨率为352×240像素,每秒29.97幅画面(适合NTSC制式电视播放)
2.分辨率为352×240像素,每秒23.976幅画面
3.分辨率为352×288像素,每秒25幅画面(适合PAL制式电视播放)
整体来说分辨率大约是对应电视制式分辨率的四分之一。VCD的视频采用MPEG-1压缩编码,音频采用MPEG 1/2 Layer 2(MP2)编码。码率分别为视频1150kbit/s,音频224kbit/s。
由于VCD的比特率和普通音乐CD相当,因此,一张标准的74分钟的CD可以存放大约74分钟的VCD格式的视频。
DVD
DVD(Digital Versatile Disc;DVD),又称数字多功能光盘、数字多用途光盘和数字光盘,简称DVD,是一种光碟存储器,通常用来播放高质量的电影,歌曲与作储存资料用途。DVD与CD的外观极为相似,它们的直径都是120毫米左右。
正常情况下,DVD影碟有以下2个目录:
AUDIO_TS
预留给DVD-AUDIO的目录
VIDEO_TS
存储所有DVD-VIDEO(包括音频,视频,字幕等)所有数据的目录
注意:DVD-AUDIO是指只有AUDIO数据的DVD光盘,我们通常说的DVD影碟是指DVD-VIDEO碟。
一个标准的VIDEO-TS目录中包含有3种类型的文件 VOB、IFO、BUP
VOB文件
视频目标文件(Video OBjects)
VOB文件有视频、声音、字幕数据流组成。视频数据流是MPEG2格式,音频数据流是AC-3或者LPCM、MPEG2、MP2、DTS等,AC3基本上是事实的标准,MPEG2多声道只在极少数2区碟上可以看到(比如In the line of fire,2区)。MP2只在非出版级DVD上有等。PCM是高质量无压缩数字音频,因此需要太多的空间,并不适合用于DVD电影光碟。AC3的数据率介于192~448KBPS之间才,192KBPS用于双声道,384~448KBPS用于5.1声道。
一个VOB文件可以包含一个主要的视频数据流和几个多语种伴音和字幕。最大视频数据率是9.8MBPS,视频和音频数据率总的上限是10MBPS。一张DVD最多可以有9种伴音和32种字幕。
IFO文件
InFOrmation
IFO文件告诉DVD播放机浏览信息:比如章节的开始时间,伴音流在哪里,字幕在哪里。也就是讲,VOB文件是电影本身,而相应的IFO文件把组成电影的各个片段有机连接起来。这样DVD机才”懂”得如何播放。
BUP文件;备份文件(BackUP)
和IFO文件完全相同,是留在如果IFO文件出错的时候,DVD播放机也可以通过BUP来得到相应信息。从这里你也可以看到IFO文件的重要性,所以还有相应的BUP备份文件。
MPEG
MPEG是Moving Picture Experts Group的简称。这个名字本来的含义是指一个研究视频和音频编码标准的小组。现在我们所说的MPEG泛指又该小组制定的一系列视频编码标准。该小组于1988年组成,至今已经制定了MPEG-1、MPEG-2、MPEG-3、MPEG-4、MPEG-7等多个标准,MPEG-21正在制定中。MPEG是ISO和IEC的工作组,它的官方头衔为:第一技术委员会第二十九子委员会第十一号工作组,英文头衔为ISO/IEC JTC1/SC29 WG11。MPEG大约每2-3个月举行一次会议,每次会议大约持续5天,在会议期间,新的建议和技术细节先在小组中讨论,成熟后进入标准化的正式审核程序。与MPEG工作组相关的其他几个视频标准化工作组包括ITU-T VCEG以及JVT。
MPEG1
MPEG-1是为CD光盘介质定制的视频和音频压缩格式。一张70分钟的CD光盘传输速率大约在1.4Mbps。而MPEG-1采用了块方式的运动补偿、离散余弦变换(DCT)、量化等技术,并为1.2Mbps传输速率进行了优化。MPEG-1随后被Video CD采用作为核心技术。MPEG-1的输出质量大约和传统录像机VCR,信号质量相当,这也许是Video CD在发达国家未获成功的原因。MPEG-1音频分三层,其中第三层协议被称为MPEG-1 Layer 3,简称MP3。MP3目前已经成为广泛流传的音频压缩技术。
MPEG-1具有以下特点:
随机访问 ;灵活的帧率 ;可变的图像尺寸 ;定义了I-帧、P-帧和B-帧 ;运动补偿可跨越多个帧 ;半像素精度的运动向量 ;量化矩阵 ;GOF结构 ;slice结构
MPEG2
MPEG-2是MPEG工作组于1994年发布的视频和音频压缩国际标准。MPEG-2通常用来为广播信号提供视频和音频编码,包括卫星电视、有线电视等。MPEG-2经过少量修改后,也成为DVD产品的核心技术。
MPEG-2的系统描述部分(第1部分)定义了传输流,它用来一套在非可靠介质上传输数位视频信号和音频信号的机制,主要用在广播电视领域。
MPEG-2的第二部分即视频部分和MPEG-1类似,但是它提供对隔行扫描视频显示模式的支持(隔行扫描广泛应用在广播电视领域)。MPEG-2视频并没有对低位元速率(小于1Mbps)进行优化,在3Mbit/s及以上位元速率情况下,MPEG-2明显优于MPEG-1。MPEG-2向后兼容,也即是说,所有符合标准的MPEG-2解码器也能够正常播放MPEG-1视频流。
MPEG-2技术也应用在了HDTV传输系统中。
MPEG-2的第三部分定义了音频压缩标准。该部分改进了MPEG-1的音频压缩,支持两通道以上的音频。MPEG-2音频压缩部分也保持了向后兼容的特点。
MPEG-2的第七部分定义了不能向后兼容的音频压缩。该部分提供了更强的音频功能。通常我们所说的MPEG-2AAC指的就是这一部分。
MPEG-2标准文档号码
1.ISO/IEC 13818-1:系统-描述视频和音频的同步和多路技术
2.ISO/IEC 13818-2:视频-视频压缩
3.ISO/IEC 13818-3:音频-音频压缩,包括多通道的MP3扩展。
4.ISO/IEC 13818-4:测试规范
5.ISO/IEC 13818-5:仿真软件
6.ISO/IEC 13818-6:DSM-CC(Digital Storage Media Command and Control)扩展
7.ISO/IEC 13818-7:Advanced Audio Coding (AAC)
8.ISO/IEC 13818-9:实时接口扩展
9.ISO/IEC 13818-10:DSM-CC规范
MPEG4
MPEG-4是一套用于音频、视频信息的压缩编码标准,由国际标准化组织IEC活动图像专家组(即MPEG)制定,第一版在1998年10月通过,第二版在1999年12月通过。MPEG-4格式的主要用途在于网上串流及光碟分发,语音传送(视像电话),以及电视广播。
MPEG-4包含了MPEG-1及MPEG-2的绝大部份功能及其他格式的长处,并加入及扩充对虚拟现实模型语言(VRML for Virtual Reality Modeling Language)的支援,面向对象的合成档案(包括音效,视讯及VRML物件),与及数码权限管理及其他互动功能。
MPEG-4由一系列的子标准组成,被称为部,包括以下的部分:
1.第一部(ISO/IEC 14496-1):系统:描述视频和音频的同步以及混合方式(multiplexing)。
2.第二部(ISO/IEC 14496-2):视频: 定义了一个对各种视觉信息(包括视频,静止纹理,计算机合成图形等等)的编解码器。对视频部分来说,众多”Profiles”中很常用的一种是Advanced Simple Profile (ASP)。
3.第三部(ISO/IEC 14496-3):音频:定义了一个对各种音频信号进行编码的编解码器的集合。包括高级音频编码(AAC for Advanced Audio Coding)的若干变形和其他一些音频/语音编码工具。
4.第四部(ISO/IEC 14496-4):一致性: 定义了对本标准其他的部分进行一致性测试的程序。
5.第五部(ISO/IEC 14496-5):参考软件:提供了用于演示功能和说明本标准其他部分功能的软件。
6.第六部(ISO/IEC 14496-6):多媒体传输集成框架(DMIF for Delivery Multimedia Integration Framework)。
7.第七部(ISO/IEC 14496-7):优化的参考软件:提供了对实现进行优化的例子。(这里的实现指的是第五部分)。
8.第八部(ISO/IEC 14496-8):在IP网络上传输: 定义了在IP网络上传输MPEG-4内容的方式。
9.第九部(ISO/IEC 14496-9):参考硬件: 提供了用于演示怎样在硬件上实现本标准其他部分功能的硬件设计方案。
10.第十部(ISO/IEC 14496-10):进阶视讯编码(AVC for Advanced Video Coding):定义了一个被称为AVC的视频编解码器。从技术上讲,它和ITU-T H.264标准是一致的。
11.第十一部(ISO/IEC 14496-12):基于ISO的媒体文件格式: 定义了一个存储媒体内容的文件格式。
12.第十二部(ISO/IEC 14496-13):知识产权管理和保护(IPMP for Intellectual Property Management and Protection)拓展。
13.第十三部(ISO/IEC 14496-14):MPEG-4文件格式: 定义了基于第十二部分的用于存储MPEG-4内容的容器文件格式。
14.第十四部(ISO/IEC 14496-15):AVC文件格式: 定义了基于第十二部分的用于存储第十部分的视频内容的文件格式。
15.第十五部(ISO/IEC 14496-16):动画框架扩展(AFX for Animation Framework eXtension)。
16.第十六部(ISO/IEC 14496-17):同步文本字幕格式 (尚未完成 – 2005年1月达成”最终委员会草案”(FCD for Final Committee Draft)。
17.第十七部(ISO/IEC 14496-18):字体压缩和流式传输(针对公开字体格式)。
18.第十八部(ISO/IEC 14496-19):综合用材质流(Synthesized Texture Stream)。
19.第十九部(ISO/IEC 14496-20):简单场景表示(LASeR for Lightweight Scene Representation)(尚未完成 – 2005年1月达成”最终委员会草案”(FCD for Final Committee Draft)。
20.第二十部(ISO/IEC 14496-21):用于描绘(Rendering)的MPEG-J拓展(尚未完成 – 2005年1月达成”委员会草案”(CD for Committee Draft)。
Profiles是在每个部分内定义的,所以对某个部分的一个实现通常不是对该部分的完整实现。MPEG-4大部份功能都留待开发者决定采用是否。这意味着整个格式的功能不一定被某个程式所完全函括。因此,这个格式有所谓’profiles’及’层次(levels)’,定义了MPEG-4用于某些特定应用的某些功能的集合。
H263:
H.263标准是由国际电信联盟(ITU)发布的,对视频会议和视频电信应用提供视频压缩(编码).H.263系统有很多的视频编码的标准,它们每个都是为了特定的应用而设定:比如说,JPEG是为静态图片设定的,MPEG2是为数字电视信号设定的 ,H.261是为ISDN视频会议系统设定。H.263是特别面向低码率的视频编码而设定的(通常只有20-30kbps或更高) H.263标准指明了对于视频编码和解码器的需求。它不描述编码器和解码器自身:取而代之的是,它指明了编码流的格式与内容。降低带宽的第一步就是从当前帧中减去之前传输的帧,这样只有差值或叫剩余值才被编码并传输。这就意味着帧中没有变化的内容就不被 编码。我们通过试图对于前而帧的内容的移动进行估计并补偿这个运动值来实现更高的压缩比.
H264
H.264 是由ITU-T 和ISO 两个组织的专家为实现视频的更高压缩比,更好的图像质量和良好的网络适应性而提出的新的视频编解码标准。事实证明,H.264 编码具有比其他的H系列视频压缩标准更加节省码流,并且比MPEG-4 算法简单的特点。H.264 的良好网络适应性和内在的抗丢包能力、抗误码机制,使它不仅适于IP 传输方式,也非常适合丢包严重、时延和抖动复杂的无线信道。H.264 有望成为多媒体通信中首选的视频编解码标准。
渐进式下载
这种方式是我们应用最多的方式,可适用于Flash Player 6或以上。渐进(Progressive)表示当FLV视频文件被下载或缓存到我们的电脑,然后再播放。对5-90秒长度的视频很有效,如果更长时间的视频则需要适宜的缓存策略。这种方式没有文件大小与时长限制、没有音频同步问题。由于FLV文件在SWF播放程序外部,所以非常容易在不用重新发布我们的SWF而实现视频切换。
流式播放
流式传输时,声音、影像或动画等多媒体信息由流媒体服务器向用户计算机连续、实时传送,它首先在使用者端的电脑上创建一个缓冲区,于播放前预先下载一段资料作为缓冲,用户不必等到整个文件全部下载完毕,而只需经过几秒或十数秒的启动延时即可进行观看。当多媒体信息在客户机上播放时,文件的剩余部分将在后台从服务器内继续下载。如果网络连接速度小于播放的多媒体信息需要的速度时,播放程序就会取用先前建立的一小段缓冲区内的资料,避免播放的中断,使得播放品质得以维持
RTMP
通常的flv播放器只是用来播放本地的或者http协议的视频文件,但是这样视频文件是暴露在web下面的,并且需要加载到本地播放,其实flash的Media系列组件已经支持rtmp协议播放视频流,包括MediaPlayBack组件,方法非常简单。
假设我们在服务器上面有一个appName的FMS应用,在应用目录下面的streams目录中存在一个flvName.flv文件。我们把mediaPlayBack组件拖入舞台中,命名为play_mc,然后在添加下面的脚本代码(或者使用组件检查器设置url参数):
play_mc.setMedia(‘rtmp://serverIp/appName/flvName’);
通过上面的方式可以自动开始播放服务器上面的flvName.flv视频文件。其实,使用这种方式的播放,会自动尝试进行NetConnection连接到appName应用,并且在FMS管理控制台可以查看到类似 flv:flvName connected 日志记录,如果连接失败或者flv文件不存在则无法完成播放。
因为使用rtmp方式播放视频文件不会下载到客户端,所以,进度条始终是在最后,只会显示播放时间。
[整理自网络]
分类目录
- arch/management (17)
- computer (38)
- java/j2ee (305)
- lnmpa (237)
- mac/iphone/ipad/android (11)
- mysql/oracle/postgresql (126)
- os/software (74)
- other (518)
- python (6)
- redis/memcached/mongo (31)
- sitebuild (143)
随便看看
标签云
程序员 创业 人生箴言 eclipse 快捷键 术语 索引 unix命令 vim wordpress java学习笔记 环境变量 oracle内置函数 index 人生 数据类型 nohup tuxedo mysql学习笔记 MS-DOS命令 servlet spring 职场进阶 职业进阶 服务器选购 服务器选型 apache JPA MongoDB 注解 tomcat 子女教育 jquery maven JVM aix命令 网络营销 java异常 seo 人生规划 关键字 css 网络推广 struts 系统优化 成长 frame iframe bluehost jdbc select 我的信仰 oracle函数 cookie HashMap 站长工具 乱码 ArrayList secureCRT jsp session tail find halt 事务 oracle单记录函数 算法 URL window table javascript操作表单元素 String 字符串处理 健康 http 域名 情感 more google A记录 域名解析 netstat 弹出对话框 弹出窗口 框架集 框架 excel 字符串 javascript函数 showModalDialog nginx number 数组 sql frameset 开源程序 java数组 软件 oracle服务友情链接
收藏链接