音视频基础知识

来源:互联网 发布:阿里云代理商技术 编辑:程序博客网 时间:2024/05/16 23:35

视频播放原理

日常所见的如mp4、avi、flv、mkv、3gp等视频格式,它们是封装格式视频数据,封装格式视频数据是由最原始的视频像素数据通过视频压缩再封装而获得,它们既然是压缩封装得到,当然要比像素视频数据要小的多,所以它们更利于存储使用。提到视频像素数据,最常见的格式为YUV,它实际就是一帧一帧的图片数据所封装的视频数据格式,到后面我还会讲到。在视频像素数据与视频封装数据之间还有存在视频压缩数据,视频压缩数据是将视频像素数据解码之后的一种格式的视频数据,最常见的格式为H.264、MPEG2.x等等。这三个过程对分析视频播放流程非常重要,下面看一一张音视频播放流程的图片

这里写图片描述

信息查看工具

MediaInfo

二进制信息查看

UltraEdit

封装格式


视频封装格式的作用:

视频码流和音频码流按照一定的格式存储在一个文件中

封装格式分析工具

Elecard Format Analyzer

常见的视频封装格式为:AVI、MP4、TS、FLV、MKV、RMVB、等等。

这里写图片描述

MPEG2-TS格式简介

用于音效、图像与数据的通信协定,最早应用于DVD的实时传送节目,将DVD上的VOB文件的前面一截cut掉(或者是损坏数据)就会导致整个文件无法解码,所以MPEG2-TS格式的特点就是从视频流的任一片段开始都是可以独立解码,与之对应的MPEG2-PS格式与其相反。MPEG2-TS格式结构中不包含文件头,数据大小固定(188Byte)的TS Packet构成。

这里写图片描述

FLV格式简介

包含文件头。数据由大小不固定的Tag构成;FLV 是FLASH VIDEO的简称,FLV流媒体格式是随着Flash
MX的推出发展而来的视频格式。由于它形成的文件极小、加载速度极快,使得网络观看视频文件成为可能,它的出现有效地解决了视频文件导入Flash后,使导出的SWF文件体积庞大,不能在网络上很好的使用等问题。FLV是被众多新一代视频分享网站所采用,是目前增长最快、最为广泛的视频传播格式。是在sorenson公司的压缩算法的基础上开发出来的。FLV格式不仅可以轻松的导入Flash中,速度极快,并且能起到保护版权的作用,并且可以不通过本地的微软或者REAL播放器播放视频。

这里写图片描述

视频编码数据

视频编码的作用:将视频像素数据(RGB,YUV等)压缩成为视频码流,从而降低视频的数据量。视频编码分析工具:Elecard Stream Eye

这里写图片描述

H.264格式简介

数据由大小不固定的NALU构成 最常见的情况下,1个NALU存储了1帧画面的压缩编码后的数据。

这里写图片描述

H.264压缩格式方法

比较复杂。包含了帧内预测、帧间预测、熵编码、环路滤波等环节构成。不对其中的算法做过多介绍。 可以将图像压缩100倍以上。

视频像素数据

视频像素数据作用
保存了屏幕上每个像素点的像素值
格式
常见的像素数据格式有RGB24,RGB32,YUV420P,YUV422P,YUV444P等。压缩编码中一般使用的是YUV格式的像素数据,最为常见的格式为YUV420P。
特点
视频像素数据体积很大,一般情况下1小时高清视频的RGB24格式的数据体积为:3600*25*1920*1080*3 =559.9GByte
PS:这里假定帧率为25Hz,取样精度8bit。
YUV格式像素数据查看工具
YUV Player
RGB格式简介
Red、Green、Blue三种颜色,可以混合成世界上所有的颜色。
彩色图像中每个点,由R、G、B三个分量组成。
以RGB24位例,图像像素数据的存储方式如下:
这里写图片描述

从图中可以看出,RGB24依次存储了每个像素点的R、G、B信息。
PS:BMP文件中存储的就是RGB格式的像素数据
YUV格式简介
相关实验表明,人眼对亮度敏感而对色度不敏感。因而可以将亮度信息和色度信息分离,并对色度信息采用更“狠”一点的压缩方案,从而提高压缩效率。
YUV格式中,Y只包含亮度信息,而UV只包含色度信息。
以YUV420P为例,图像像素数据的存储方式如图所示。
从图中可以看出,YUV420P首先存储了整张图像的Y信息,然后存储整张图像的U信息,最后存储了整张图像的V信息。
这里写图片描述

音频编码数据

音频编码的作用
将音频采样数据(PCM等)压缩成为音频码流,从而降低音频的数据量
音频编码分析工具
Media Info

这里写图片描述

AAC格式简介
数据由大小不固定的ADTS构成

这里写图片描述

AAC压缩方法
作为一种高压缩比的音频压缩算法,AAC通常压缩比为18:1,也有资料说为20:1,远胜mp3,而音质由于采用多声道,和使用低复杂性的描述方式,使其比几乎所有的传统编码方式在同规格的情况下更胜一筹。
可以将音频数据压缩10倍以上。

音频采样数据

音频采样数据作用
保存了音频中每个采样点的值
特点
音频采样数据体积很大,一般情况下一首4分钟的PCM格式的歌曲体积为:4*60*44100*2*2=42.3MByte
PS:这里假定采用率为44100Hz,采样精度为16bit。
音频采样数据查看工具:Adobe Audition

PCM格式简介

单声道的情况下按照顺序存储每个采样点的数据。 双声道的情况下按照“左右、左右”的顺序存储每个采样点两个声道数据。

这里写图片描述

原创粉丝点击