TI的H264 SOC方案
TI的H264 SOC方案是目前常用的视讯解决方案,TI针对视频会议,视频监控,视频存储等场景细化需求并优化了H264技术。
1. TI H.264背景
如今视频压缩技术在视频领域有非常多的应用需求。
H.264编解码器几乎能适用于所有的视频压缩场景。
H.264编解码器标准推出到如今已有十多年了。很多厂商都提供H.264解决方案。TI面对的竞争很激烈。
面对竞争,TI提供二种差异化特性:1)可编程性 2)开放性。
本次TI H.264介绍是针对TI SOC,如DM36X, Netra(DM616X) 和 Centaurus(DM814X)。
2. H.264各种视频应用的需求。

TI面对的视频应该场景如图1所示:
1. 视频会议。
2. 视频安防和监控。
3. 多媒体存储。
4. 数码录像。
5. 数字电视卫星视频。
6. 移动数字媒体。
|
应用 |
关注点 |
|
可视电话,视频会议 |
低时延,低码率,高帧率,编解器错误修复。 |
|
视频安防和监控 |
中等或低码率,存储性优化,随机访问,支持大尺寸图像。 |
|
多媒体存储 |
高图像质量,随机访问,低成本。 |
|
数码录像 |
低功耗,高图像质量,中等码率。 |
|
数字电视卫星视频 |
高图像质量。 |
|
移动数字媒体 |
低复杂度编解码,编解器错误修复。 |
|
互联网流媒体 |
低码率,多格式解码。 |
|
编解码特性 |
视频监控 |
视频会议 |
数码摄像 |
|
随机访问,I帧间隔短 |
有要求 |
无要求 |
有要求 |
|
可接受时延 |
1000毫秒(DVR)100至500毫秒(IPC) |
20至100毫秒 |
可无限制 |
|
误码容忍度 |
低 |
高 |
低 |
|
固定码率 |
无要求(DVR)/有要求(IPC) |
有要求 |
无要求 |
|
码率 |
低 |
低 |
中等 |
|
内容感知 |
有要求 |
无要求 |
无要求 |
|
视频分析 |
有要求 |
无要求 |
无要求 |
|
低功耗 |
无要求(DVR) |
无要求/有要求(移动或便携视频会议) |
无要求 |
综合表1和表2对视频编解码的需求总结为:需要最好的视频质量和最优编码表现。(TI表示压力很大)
3. 非链式P帧
H.264标准允许灵活的参考帧。多P帧可参考最后一个I帧,而不是参考前一帧,形成一种非链式P帧。虽然这种方法会导致编码压缩率减小,但能得到较高的抗丢包能力和更灵活的随机播放能力。

图2

图3
如图2中,第1帧是I帧,第2,3,4,5帧是P帧。如果第2帧丢失,第3,4,5帧即使收到也不能还原解码正常图像。但在图3中,第2帧丢失不影响后续3,4,5帧正常解码,只要所依赖的第1帧到达即可。
存储播放时也优势。如要随机播放第5帧图像时,只需读取第1,5二帧解码即可。而在链式参考模型里要解码1,2,3,4帧后再解码第5帧才能得到图像。非链式可以减少三帧的读取和解码开销。
4. 动态改变编码参数
H.264编码器支持动态改变码率,帧率和图像分辨率。比如在网络带宽变化时,编码器可改变参数来适应。
5. 支持大尺寸
支持大尺寸编码在视频监控中是很好的卖点,这样在图像数字放大后能得到更好的图像效果。现在编码支持4K,2K的图像大小。
6. 图像分析
H.264视频编码算法对图像有运算和查找运动矢量的功能。利用每帧图像的运动矢量可以提供图像分析的功能。
例如:
视频安防,在发现监控画面有物体运动可发出提示。
监控录像时发现在低运动场景时可用低码率编码以节省存储资源。
监控录像时根据物体运动矢量让摄像头自动跟踪物体。
7. 低时延
传统的视频通信时延由7个部分组成,
1. 采集
2. 编码
3. 发送
4. 网络传输
5. 接收
6. 解码
7. 播放显示
除了发送,网络传输,接收的时间,其他部分独自耗时约33毫秒。
点对点最小时延 = 4*33 + X= (132 + X) ms,X = 发送+网络传输+接收

编码低时延在视频会议(网真),视频交互游戏等应用有较高要求。
TI能提供新的API接口应用于小于帧级数据处理。在slice级就可进行数据交换,而不是等到一帧编码结束,这样编码时延可以从33 ms降到2ms以下。

8. 固定slice大小的编码
固定slice大小的好处是有利于编码后的网络传输。可指定slice大小为网络MTU大小。编码器能做到就不需要网络层做。但固定slice大小的代价是编码压缩率会降低。
9. 视频渐近刷新
视频渐近刷新GDR(Gradual decoder refresh)是相对一帧完整刷新而来。传统IDR刷新的缺点是IDR帧大小相比图像质量相近的P帧更大,这样会对网络有冲击,导致网络抖动和拥塞。而GDR会带来更优的网络适应性。
GDR是通过P帧内包括I块组的方法来实现渐近刷新。

10. SVC技术
H.264 SVC(H.264可分级编码)作为H.264标准的一个扩展最初由JVT在2004年开始制定,并于2007年7月获得ITU批准。H.264 SVC以H.264 AVC视频编解码器标准为基础,利用了AVC编解码器的各种高效算法工具,在编码产生的编码视频时间上(帧率)、空间上(分辨率)可扩展,并且是在视频质量方面可扩展的,可产生不同帧速率、分辨率或质量等级的解码视频。
H.264 SVC通过在在编码码流嵌入具有相关性的多个不同分辨率的子流实现空间上的可分级。上层所有的视频帧构成了高分辨率视频,下层所有的视频帧构成了低分辨率视频为此,具备H.264 SVC编码的视频会议系统,在保证高效的视频压缩性能的基础上,视频广播端可以通过一次编码产生具有不同帧率、分辨率的视频压缩码流,以适应不同网络带 宽、不同的显示屏幕和终端解码能力的应用需求,从而有效地避免了视频会议系统中MCU上复杂而昂贵的转码。
传统H.264 AVC,能容忍的丢包率小于2%,而H.264 SVC能能容忍20%左右的丢包。

11. 感兴趣区域(ROI)编码
感兴趣区域ROI (Region Of Interest),在图像压缩编码时,对某些特定区域(如人脸等)的简称,就是在要待处理的图像中提取出的要处理的区域。
针对ROI,视频会议场景编码器可以分配更多的码流给人脸区域,让面部表情更清晰。或者在监控场景对需要打马赛克区域分配更少的码流。

12. TI SOC 数据
注意以下表格是TI好几年前的数据,TI当时没实现的现在有的已实现。

从上图可知DM81XX 是支持 H.264 SVC的。


TI的H264 SOC方案的更多相关文章
- 基于SOC方案的嵌入式开发-远程定时设备
Soc方案实现简单的定时开关灯 http://club.gizwits.com/forum.php?mod=viewthread&tid=7787&highlight=%E5%AE%9 ...
- esp8266 SOC方案经过半年沉淀之后再度重启二
2018-08-2014:16:10 以下是输出控制 PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO0_U, FUNC_GPIO0); GPIO_OUTPUT_SET ...
- esp8266 SOC方案经过半年沉淀之后再度重启
我发誓这是最后一次玩esp8266,该脱坑了...... 以前看不懂的教程 http://club.gizwits.com/thread-6447-1-1.html 2018教程 http://clu ...
- 无线冲方案 MCU vs SoC
参考: MCU还是SoC:2018无线充电技术走向何方? 方案 分立/集成 特点 框图 MCU方案 分立方案 MCU芯片负责Qi协议的运算和外围电路控制,ST MCU居多:单线圈,双线圈,三线圈都有: ...
- 【DSP开发】【计算机视觉】TI 视觉软件开发套件ADAS
关键字:TI 视觉软件开发套件 ADAS 日前,德州仪器 (TI) 宣布推出其视觉软件开发套件(SDK),从而为开发人员提供了一款灵活的框架.一组丰富齐全的硬件设备驱动程序和一套适用的开发工具,可 ...
- Android平台对H264视频硬解码
本文讲述如何使用Android标准的API (MediaCodec)实现H264的硬件解码. 原本我们是用JNI调用平台提供的硬件解码接口得到YUV帧,再放入opengl脚本里处理渲染的.可是换了新平 ...
- [转帖]IPC网络高清摄像机基础知识1(IPC芯片市场分析以及“搅局者”华为海思 “来自2013年”)
IPC网络高清摄像机基础知识1(IPC芯片市场分析以及“搅局者”华为海思 “来自2013年”) 2016-06-02 14:23:49 Times_poem 阅读数 9734更多 分类专栏: IPC网 ...
- camera isp
1. 目标手机摄像头模组用ISP功能模块的市场走向及研发方向.为能够正确认识手机摄像模组行业提供技术及市场依据.2. ISP在模组上的应用原理2.1 功能区域无论数码相机.摄像机或者摄像手机,其影像数 ...
- Linux内核之mmc子系统-sdio
现在的Linux内核中,mmc不仅是一个驱动,而是一个子系统.这里通过分析Linux3.2.0内核,结合TI的arm335x平台及omap_hsmmcd host分析下mmc子系统,重点关注sdio及 ...
随机推荐
- mysql 函数示例(转)
MySQL函数大全及用法示例 1.字符串函数ascii(str) 返回字符串str的第一个字符的ascii值(str是空串时返回0) mysql> select ascii('2'); ...
- [转帖]HDD磁盘,非4K无以致远
https://blog.csdn.net/swingwang/article/details/54880918 机械硬盘的未来要靠高容量作为依托,在财报中,希捷表示未来18个月内它们将推出14和16 ...
- Java词频统计
public class WordCount { public static void main(String[] args) { String[] stopWords = { "" ...
- jsp中的下载链接
1.下载链接jsp界面(a链接直接链文件可以看出文件在服务器中的路径,用servlet处理的链接则看不出) <%@ page language="java" contentT ...
- python参数传递方式
原文地址:http://www.cnblogs.com/zhaopengcheng/p/5492183.html python中一切皆对象,函数中参数传递的是对象的引用. 1在函数中改变变量指向的对象 ...
- AND Graph CodeForces - 987F(思维二进制dfs)
题意:给出n(0≤n≤22)和m,和m个数ai,1 ≤ m ≤ 2n ,0≤ai<2n ,把ai & aj == 0 的连边,求最后有几个连通块 解析:一个一个去找肯定爆,那么就要转换一 ...
- 【转】VMware虚拟机三种网络模式详解
由于Linux目前很热门,越来越多的人在学习Linux,但是买一台服务放家里来学习,实在是很浪费.那么如何解决这个问题?虚拟机软件是很好的选择,常用的虚拟机软件有VMware Workstations ...
- 【BZOJ 1098】办公楼(补图连通块个数,Bfs)
补图连通块个数这大概是一个套路吧,我之前没有见到过,想了好久都没有想出来QaQ 事实上这个做法本身就是一个朴素算法,但进行巧妙的实现,就可以分析出它的上界不会超过 $O(n + m)$. 接下来介绍一 ...
- CentOS7单节点部署redis-cluster
准备一台机器,系统版本为CentOS7.(注意本文描述的是redis-cluster,不是主从复制) 1.下载软件包 # wget http://download.redis.io/releases/ ...
- 解题:ZJOI 2013 K大数查询
题面 树套树,权值线段树套序列线段树,每次在在权值线段树上的每棵子树上做区间加,查询的时候左右子树二分 本来想两个都动态开点的,这样能体现树套树在线的优越性.但是常数太大惹,所以外层直接固定建树了QA ...