关闭
搜索
搜索
本版
帖子
用户
热搜:
程序员
简洁模式
高级模式
用户组: 游客
消息
提醒
新听众
我关注的
帖子
道具
勋章
任务
设置
退出
请
登录
后使用快捷导航
没有帐号?
立即注册
设为首页
收藏本站
开启辅助访问
切换到窄版
登录
or
立即注册
快捷导航
搜索
首页
论坛
BBS
MCU单片机技术
程序员交流
音视频处理之编码介绍20180224
[复制链接]
作者:
那么坤
版块:
›
嵌入式操作系统
›
其他嵌入式相关
发布时间:
2018-6-29 23:38:53
848
0
返回列表
那么坤
当前离线
新手上路
新手上路, 积分 28, 距离下一级还需 22 积分
新手上路
新手上路, 积分 28, 距离下一级还需 22 积分
积分
28
发消息
楼主
电梯直达
那么坤
发表于 2018-6-29 23:38:53
|
只看该作者
|
倒序浏览
|
阅读模式
一、视频编码数据
1.概述
视频编码的主要作用是将视频像素数据(RGB,YUV等)压缩成为视频码流,从而降低视频的数据量。如果视频不经过压缩编码的话,体积通常是非常大的,一部电影可能就要上百G的空间。视频编码是视音频技术中最重要的技术之一。视频码流的数据量占了视音频总数据量的绝大部分。高效率的视频编码在同等的码率下,可以获得更高的视频质量。
视频编码的简单原理可以参考:视频压缩编码和音频压缩编码的基本原理
注:视频编码技术在整个视音频技术中应该是最复杂的技术。如果没有基础的话,可以先买一些书看一下原理,比如说《现代电视原理》《数字电视广播原理与应用》(本科的课本)中的部分章节。
主要视频编码一览
名称
推出机构
推出时间
目前使用领域
HEVC(H.265)
MPEG/ITU-T
2013
研发中
H.264
MPEG/ITU-T
2003
各个领域
MPEG4
MPEG
2001
不温不火
MPEG2
MPEG
1994
数字电视
VP9
Google
2013
研发中
VP8
Google
2008
不普及
VC-1
Microsoft Inc.
2006
微软平台
由表可见,有两种视频编码方案是最新推出的:VP9和HEVC。目前这两种方案都处于研发阶段,还没有到达实用的程度。当前使用最多的视频编码方案就是H.264。
2.视频编码分析工具
Elecard Stream Eye查看视频编码格式(也叫码流分析工具,可分析h264),如下图:
红色的表示I帧,蓝色的表示P帧,绿色的表示B帧,方块表示宏块的划分方式,划分为16x16的小块,每块都有不同的类型(用不同的颜色标识)
左侧坐标表示数据量
I帧不依赖其他的帧,只压缩当前画面的数据。
P帧只会存和红色框(运动矢量)不一样的信息,和前面I帧不一样的信息。
B帧还会存和绿色框(运动矢量,和后面不一样的)不一样的信息,会参考前后的帧
3.编码标准
3.1. 主流编码标准
H.264仅仅是一个编码标准,而不是一个具体的编码器,H.264只是给编码器的实现提供参照用的。
基于H.264标准的编码器还是很多的,究竟孰优孰劣?可参考:MSU出品的H.264编码器比较(2011.5)
在学习视频编码的时候,可能会用到各种编码器(实际上就是一个exe文件),他们常用的编码命令可以参考:各种视频编码器的命令行格式
学习H.264最标准的源代码,就是其官方标准JM了。但是要注意,JM速度非常的慢,是无法用于实际的:H.264参考软件JM12.2RC代码详细流程
实际中使用最多的就是x264了,性能强悍(超过了很多商业编码器),而且开源。其基本教程网上极多,不再赘述。编码时候可参考:x264编码指南——码率控制。编码后统计值的含义:X264输出的统计值的含义(X264 Stats Output)
Google推出的VP8属于和H.264同一时代的标准。总体而言,VP8比H.264要稍微差一点。有一篇写的很好的VP8的介绍文章:深入了解VP8。除了在技术领域,VP8和H.264在专利等方面也是打的不可开交,可参考文章:WebM(VP8) vs H.264
此外,我国还推出了自己的国产标准AVS,性能也不错,但目前比H.264还是要稍微逊色一点。不过感觉我国在视频编解码领域还算比较先进的,可参考:视频编码国家标准AVS与H.264的比较(节选))
近期又推出了AVS新一代的版本AVS+,具体的性能测试还没看过。不过据说AVS+得到了国家政策上非常强力的支持。
3.2. 下一代编码标准
下一代的编解码标准就要数HEVC和VP9了。VP9是Google继VP8之后推出的新一代标准。VP9和HEVC相比,要稍微逊色一些。它们的对比可参考:(1)HEVC与VP9编码效率对比(2)HEVC,VP9,x264性能对比
HEVC在未来拥有很多大的优势,可参考:HEVC将会取代H.264的原因
学习HEVC最标准的源代码,就是其官方标准HM了。其速度比H.264的官方标准代码又慢了一大截,使用可参考:HEVC学习——HM的使用
未来实际使用的HEVC开源编码器很有可能是x265,目前该项目还处于发展阶段,可参考:x265(HEVC编码器,基于x264)介绍。x265的使用可以参考:HEVC(H.265)标准的编码器(x265,DivX265)试用
主流以及下一代编码标准之间的比较可以参考文章:视频编码方案之间的比较(HEVC,H.264,MPEG2等)
此外,在码率一定的情况下,几种编码标准的比较可参考:限制码率的视频编码标准比较(包括MPEG-2,H.263,MPEG-4,以及H.264)
结果大致是这样的:
HEVC > VP9 > H.264> VP8 > MPEG4 > H.263 > MPEG2。
截了一些图,可以比较直观的了解各种编码标准:
HEVC码流简析:HEVC码流简单分析
H.264码流简析:H.264简单码流分析
MPEG2码流简析:MPEG2简单码流分析
以上简析使用的工具:视频码流分析工具
雷神做的小工具:H.264码流分析器
4.H264格式简介
数据由大小不固定的NALU构成
最常见的情况下,1个NALU存储了1帧画面的压缩编码后的数据。
参考:视音频数据处理入门:H.264视频码流解析
二、音频编码数据
1.概述
音频编码的主要作用是将音频采样数据(PCM等)压缩成为音频码流,从而降低音频的数据量。音频编码也是互联网视音频技术中一个重要的技术。但是一般情况下音频的数据量要远小于视频的数据量,因而即使使用稍微落后的音频编码标准,而导致音频数据量有所增加,也不会对视音频的总数据量产生太大的影响。高效率的音频编码在同等的码率下,可以获得更高的音质。
音频编码的简单原理可以参考:视频压缩编码和音频压缩编码的基本原理
主要音频编码一览
名称
推出机构
推出时间
目前使用领域
AAC
MPEG
1997
各个领域(新)
AC-3
Dolby Inc.
1992
电影
MP3
MPEG
1993
各个领域(旧)
WMA
Microsoft Inc.
1999
微软平台
由表可见,近年来并未推出全新的音频编码方案,可见音频编码技术已经基本可以满足人们的需要。音频编码技术近期绝大部分的改动都是在MP3的继任者——AAC的基础上完成的。
2.编码标准
这些编码标准之间的比较可以参考文章:音频编码方案之间音质比较(AAC,MP3,WMA等)
结果大致是这样的:
AAC+ > MP3PRO > AAC> RealAudio > WMA > MP3
AAC格式的介绍:AAC格式简介
AAC几种不同版本之间的对比:AAC规格(LC,HE,HEv2)及性能对比
AAC专利方面的介绍:AAC专利介绍
此外杜比数字的编码标准也比较流行,但是貌似比最新的AAC稍为逊色:AC-3技术综述
雷神做的小工具:AAC格式分析器
3.AAC格式简介
数据由大小不固定的ADTS构成
类似h264的地位,目前大多数都是使用aac格式
参考:视音频数据处理入门:AAC音频码流解析
三、参考的原文
http://blog.csdn.net/leixiaohua1020/article/details/18893769
--------------------------------------------------------------------------------------------
来源:网络
如果侵权,请第一时间回复联系,将第一时间为您处理
--------------------------------------------------------------------------------------------
更多精彩内容:
1.回复“c”,查看c语言相关知识
2.回复“c++”,查看c++语言相关知识
3.回复“Java”,查看Java语言相关知识
4.回复"数据结构",查看数据结构相关知识
5.回复"设计理念",查看设计理念相关知识
6.回复“驱动”,查看驱动相关知识
7.回复"uCOS",查看uCOS相关知识
8.回复"Linux",查看Linux相关知识
9.
回复"Android",查看
Android
相关知识
10.回复"网络协议",查看网络协议相关知识
11.回复"音视频处理",查看音视频处理相关知识
12.
回复"Web",查看
Web
相关知识
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有帐号?
立即注册
收藏
0
相关帖子
•
秋天的第一个招聘
•
小米8手机正研究刷入Win10ARM系统
•
招聘|腾讯研究院招聘活动运营、短视频运营实习生
•
招聘海报
•
军武招聘
•
Haruna视频播放器:一个MPVGUI前端|Linux中国
•
喜庆京峰教育重磅推出,内部经典纪念版Linux从入门到精通全套视频
•
怎么在Linux命令行中下载YouTube视频来,这里教你一些操作
•
北京招聘:实习生招聘~《芭莎男士》
•
瞭望智库招聘视频编辑实习生
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
表情
@朋友
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
vxWorks
快速回复
返回顶部
返回列表