音视频编码_笔记
来源:互联网 发布:软件调试报告模板 编辑:程序博客网 时间:2024/06/07 14:35
1、视频播放器原理
视频播放器播放一个互联网上的视频文件,需要经过以下几个步骤:解协议,解封装,解码视音频,视音频同步。如果播放本地文件则不需要解协议,为以下几个步骤:解封装,解码视音频,视音频同步。他们的过程如图所示。
解协议的作用,就是将流媒体协议的数据,解析为标准的相应的封装格式数据。流媒体传输数据中包含指令数据,如暂停、播放、停止等,或者对网络状态的描述。解协议的过程中会去除掉信令数据而只保留视音频数据
解封装的作用,就是将输入的封装格式的数据,分离成为音频流压缩编码数据和视频流压缩编码数据。封装格式种类很多,例如MP4,MKV,RMVB,TS,FLV,AVI等等,它的作用就是将已经压缩编码的视频数据和音频数据按照一定的格式放到一起。
解码的作用,就是将视频/音频压缩编码数据,解码成为非压缩的视频/音频原始数据。音频的压缩编码标准包含AAC,MP3,AC-3等等,视频的压缩编码标准则包含H.264,MPEG2,VC-1等等。通过解码,压缩编码的视频数据输出成为非压缩的颜色数据,例如YUV420P,RGB等等;压缩编码的音频数据输出成为非压缩的音频抽样数据,例如PCM数据。
视音频同步的作用,就是根据解封装模块处理过程中获取到的参数信息,同步解码出来的视频和音频数据,并将视频音频数据送至系统的显卡和声卡播放出来。
2、流媒体协议
主要流媒体协议一览
名称
推出机构
传输层协议
客户端
目前使用领域
RTSP+RTP
IETF
TCP+UDP
VLC, WMP
IPTV
RTMP
Adobe Inc.
TCP
Flash
互联网直播
RTMFP
Adobe Inc.
UDP
Flash
互联网直播
MMS
Microsoft Inc.
TCP/UDP
WMP
互联网直播+点播
HTTP
WWW+IETF
TCP
Flash
互联网点播
3、封装格式
封装格式的主要作用是把视频码流和音频码流按照一定的格式存储在一个文件中
主要封装格式一览
名称
推出机构
流媒体
支持的视频编码
支持的音频编码
目前使用领域
AVI
Microsoft Inc.
不支持
几乎所有格式
几乎所有格式
BT下载影视
MP4
MPEG
支持
MPEG-2, MPEG-4, H.264, H.263等
AAC, MPEG-1 Layers I, II, III, AC-3等
互联网视频网站
TS
MPEG
支持
MPEG-1, MPEG-2, MPEG-4, H.264
MPEG-1 Layers I, II, III, AAC,
IPTV,数字电视
FLV
Adobe Inc.
支持
Sorenson, VP6, H.264
MP3, ADPCM, Linear PCM, AAC等
互联网视频网站
MKV
CoreCodec Inc.
支持
几乎所有格式
几乎所有格式
互联网视频网站
RMVB
Real Networks Inc.
支持
RealVideo 8, 9, 10
AAC, Cook Codec, RealAudio Lossless
BT下载影视
4、视频编码
主要视频编码一览
名称
推出机构
推出时间
目前使用领域
HEVC(H.265)
MPEG/ITU-T
2013
研发中
H.264
MPEG/ITU-T
2003
各个领域
MPEG4
MPEG
2001
不温不火
MPEG2
MPEG
1994
数字电视
VP9
2013
研发中
VP8
2008
不普及
VC-1
Microsoft Inc.
2006
微软平台
5、音频编码
主要音频编码一览
名称
推出机构
推出时间
目前使用领域
AAC
MPEG
1997
各个领域(新)
AC-3
Dolby Inc.
1992
电影
MP3
MPEG
1993
各个领域(旧)
WMA
Microsoft Inc.
1999
微软平台
6、直播/点播平台
直播平台参数对比
现有网络视音频平台参数对比
名称
协议
封装
视频编码
音频编码
播放器
CNTV
私有
华数TV
RTMP
FLV
H.264
AAC
Flash
六间房
RTMP
FLV
H.264
AAC
Flash
中国教育电视台
RTMP
FLV
H.264
AAC
Flash
北广传媒移动电视
RTMP
FLV
H.264
AAC
Flash
上海IPTV
RTSP+RTP
TS
H.264
MP2
机顶盒
直播服务普遍采用了RTMP作为流媒体协议,FLV作为封装格式,H.264作为视频编码格式,AAC作为音频编码格式。
采用RTMP作为直播协议的好处在于其被Flash播放器支持。而Flash播放器如今已经安装在全球99%的电脑上,并且与浏览器结合的很好。因此这种流媒体直播平台可以实现“无插件直播”,极大的简化了客户端的操作。
FLV是RTMP使用的封装格式,H.264是当今实际应用中编码效率最高的视频编码标准,AAC则是当今实际应用中编码效率最高的音频编码标准。视频播放器方面,都使用了Flash播放器。
点播平台参数对比
现有互联网视音频平台参数对比
名称
协议
封装
视频编码
音频编码
播放器
CNTV
HTTP
MP4
H.264
AAC
Flash
CNTV(部分)
RTMP
FLV
H.264
AAC
Flash
华数TV
HTTP
MP4
H.264
AAC
Flash
优酷网
HTTP
FLV
H.264
AAC
Flash
土豆网
HTTP
F4V
H.264
AAC
Flash
56网
HTTP
FLV
H.264
AAC
Flash
音悦台
HTTP
MP4
H.264
AAC
Flash
乐视网
HTTP
FLV
H.264
AAC
Flash
新浪视频
HTTP
FLV
H.264
AAC
Flash
点播服务普遍采用了HTTP作为流媒体协议,H.264作为视频编码格式,AAC作为音频编码格式。
采用HTTP作为点播协议有以下两点优势:一方面,HTTP是基于TCP协议的应用层协议,媒体传输过程中不会出现丢包等现象,从而保证了视频的质量;另一方面,HTTP被绝大部分的Web服务器支持,因而流媒体服务机构不必投资购买额外的流媒体服务器,从而节约了开支。
参考文章:
http://blog.csdn.net/leixiaohua1020/article/details/18893769
- 音视频编码_笔记
- Flash视频编码笔记
- 视频编码笔记
- 视频编码学习笔记
- 音视频编码简介
- 音视频编码基本概念
- freeswtich 音视频编码
- 音视频编码
- 音视频编码基础
- 音视频编码基本概念
- 音视频编码基本概念
- 流媒体学习笔记---------编码视频的预览
- 流媒体技术笔记(视频编码相关)
- Hi3515视频编码(H.264)笔记
- 流媒体技术笔记(视频编码相关)
- 嵌入式 Hi3515视频编码(H.264)笔记
- OC视频笔记-键值编码的基本概念
- 嵌入式 Hi3515视频编码(H.264)笔记
- STL_排列函数的使用
- R语言中的模型修正函数update
- hdu1496 Equations (hash)
- 永远不要忽视 "粉红色/红色的异样字体" 在你不知道为什么跟你期望偏差那么大的时候,,不要急记得去问问为什么
- 求两个数的最大公约数和最小公倍数
- 音视频编码_笔记
- Hibernate动态查询框架
- 问题 B: 求各位数字之和
- JS仿百度搜索自动提示框匹配查询功能
- 百钱百鸡问题
- Python 从零学起——读《笨办法学Python v1.0》小结 随时更新
- nginx apache
- 关于APP分层简单框架思路
- mongodb调优那些事(四)-遇到的坑