[发明专利]元数据辅助的视频解码有效
申请号: | 201380009666.7 | 申请日: | 2013-02-13 |
公开(公告)号: | CN104106264B | 公开(公告)日: | 2017-05-17 |
发明(设计)人: | 吴勇军;S.萨瓦尼;N.塔姆普迪 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | H04N19/12 | 分类号: | H04N19/12;H04N19/157 |
代理公司: | 中国专利代理(香港)有限公司72001 | 代理人: | 陈慧,汪扬 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 辅助 视频 解码 | ||
技术领域
本申请一般地涉及解码,并且具体地涉及使用来自具有文件容器的编码视频序列的元数据来优化解码。
背景技术
工程师使用压缩(也称为源代码化或源编码)来减小数字视频的比特率。压缩通过将信息转换成较低比特率形式而降低存储和传输视频信息的成本。解压缩(也称为解码)从经压缩的形式重建原始信息的版本。“编解码器”是编码器/解码器系统。
在过去的二十年间,已经采用了各种视频编解码器标准,包括H.261、H.262(MPEG-2)和H.263标准以及MPEG-1和MPEG-4标准。最近,已经采用了H.264标准(有时被称为AVC或14496-10)和VC-1标准。HEVC的下一代标准正在发展中。对于附加细节,参见相应标准的有代表性的版本。视频编解码器标准典型地定义用于编码视频比特流的语法的选项,从而在特定特征被用在编码和解码中时对用于视频序列的比特流中的参数进行细节化。在许多情况中,视频编解码器标准还提供关于解码器能够执行以在解码中得到正确结果的解码操作的细节。
对于现代解码,可以使用图形处理单元(GPU)。GPU是专用电子电路,其被设计成以这样的方式迅速操纵和更改存储器以便加速旨在用于输出到显示器的帧缓冲器中的图像构建。GPU被用在嵌入式系统、移动电话、个人计算机、工作站、游戏控制台等等中。现代GPU在操纵计算机图形方面非常高效,并且它们的高度并行结构使得它们比通用CPU在用于其中并行完成大块数据的处理的算法时更加高效。
尽管快速,但是大多数GPU并未被设计成操控利用任意片排序(ASO)和/或灵活宏块排序(FMO)编码的视频。使用这样的算法编码的视频典型地使用被设计成操控基线简档(profile)的解码器(比如CPU)来处理。相反,GPU一般被设计成操控具有主简档和较高简档的视频序列。不幸的是,许多H.264/AVC编码器产生基线比特流,其实际上与主简档一致,但是约束标志被不正确地设置。该不正确设置的标志使H.264/AVC解码器将那些剪辑(clip)视为包括ASO或FMO的纯基线,即便这样的算法可能未被使用。
发明内容
提供本发明内容来以简化的形式引入在下文的具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识所要求保护的主题的关键特征或本质特征,也不旨在用于限制所要求保护的主题的范围。
公开了一种使用编码视频序列的元数据以便做出优化决策的视频解码器。例如,在一个实施例中,元数据可以用于选定哪个解码器引擎可以接收视频序列。多个解码器引擎可以在解码器中可用,诸如可以操控基线简档的一个解码器引擎(例如CPU)和不能这样做但一般而言更高效的一个解码器引擎(例如GPU)。通过使用元数据选定最高效的解码器引擎,实现了优化的解码器。
在另一实施例中,优化决策可以基于与视频序列相关联的长度和位置元数据信息。通过使用这样的元数据信息,解码器引擎可以跳过起始码扫描以使解码过程更加高效。
在又一实施例中,在比特流解析器解码片头、序列参数集(SPS)、图片参数集(PPS)和补充增强信息(SEI)的同时,可以动态地移除竞争阻止字节(emulation prevention byte)。当网络接入层单元(NALU)长度信息可用时,硬件加速的解码可以完全跳过起始码扫描,并且直接向硬件逐个发送NALU。
本发明的上述和其它目的、特征和优点将从以下参照附图进行的详细描述变得更加显而易见。
附图说明
图1是其中可以实现一些所描述的实施例的示例计算环境的图。
图2是用于基于编码视频序列中的元数据而做出解码优化决策的方法的流程图。
图3是使用元数据来确定哪个可用解码器引擎可以用于解码视频序列的流程图。
图4是较为详细的流程图,其可以用于详述图3的流程图并且是用于MPEG-4视频序列的特定示例。
图5是包括多个解码器引擎的解码器的示例架构式结构。
图6是可以使用的示例解码器引擎。
图7是用于将长度和位置传递到解码器引擎的方法的流程图。
图8是用于移除竞争阻止字节的方法的流程图。
具体实施方式
I.示例计算环境
图1图示了其中可以实现所描述的技术和工具中的若干个的适合的计算环境(100)的通用示例。计算环境(100)不旨在喻示对使用或功能性的范围的任何限制,因为技术和工具可以在多种多样的通用或专用计算环境中实现。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380009666.7/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置