[发明专利]具有提前渲染队列的GPU时间线无效
| 申请号: | 200680024224.X | 申请日: | 2006-04-26 |
| 公开(公告)号: | CN101512656A | 公开(公告)日: | 2009-08-19 |
| 发明(设计)人: | B·J·沃克 | 申请(专利权)人: | 微软公司 |
| 主分类号: | G11B27/00 | 分类号: | G11B27/00 |
| 代理公司: | 上海专利商标事务所有限公司 | 代理人: | 陈 斌 |
| 地址: | 美国华*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 具有 提前 渲染 队列 gpu 时间 | ||
技术领域
本发明的实施例涉及视频渲染以及视频和音频文件的回放这一领域。本发明 的实施例尤其涉及利用图形队列来以视频时间线的帧速率渲染和平滑地显示视频 和音频文件的系统和方法。
背景
视频文件平滑回放的常用格式标准包括在视频时间线的每秒显示三十个视频 帧。在视频编辑过程中,由于必须在向屏幕显示视频文件以及向扬声器输出音频序 列之前对视频文件以及单个视频帧和音频序列进行处理,所以常常无法实现构成视 频和音频文件的视频帧和音频序列的平滑回放。
在视频编辑和回放中进行的诸多处理需要中央处理单元(CPU)资源。这些 处理中许多是“预卷逻辑(pre-roll logic)”的一部分,该逻辑包括寻找文件、打 开和解码第一视频文件、对文件的视频帧渲染效果、向屏幕显示这些帧以及关闭该 第一视频文件、打开和解码第二视频文件诸如此类。类似地,对音频文件的音频序 列的处理及其与视频帧的同步也需要CPU处理能力。CPU通常无法在所要显示的 一个视频帧所占的时间(三十分之一秒)内执行预卷逻辑的所有处理来平滑地回放 视频和音频文件。因此,当CPU以小于视频时间线的速率执行所要求的预卷逻辑 处理时,视频和音频回放出现波纹抖动(choppy)或间歇停顿(即毛刺(glitch))。
视频逆向回放也需要大量的CPU资源。除视频文件正向回放中的毛刺外, 大多数压缩视频文件格式(例如WMA)的逆向回放都无法实时地执行。作为实时 视频格式的常见形式的基于I帧的视频文件将视频帧存储为与前一帧的差异。因 而,为了回放视频帧X,必须首先确定帧X与视频时间线上紧靠其之前的帧(例 如,帧X-1)之间的差异。因此,视频的逆向回放可能对CPU处理是代价极高的 操作,因为需要CPU解码视频文件中到前一关键帧为止的所有先前帧。一旦被解 码,则必须通过CPU来渲染视频效果,从而消耗了其更多的处理资源。这种处理 使CPU难以实时地进行解码、渲染、同步视频帧与音频序列、以及回放视频文件。
除预卷逻辑处理之外,由于在后台中发生的诸如接收电子邮件的排定或随机 处理也会消耗CPU处理资源,这进一步限制了原本可供于执行预卷逻辑处理的 CPU资源。因而,由于排定或随机处理进一步要求CPU处理时间,所以在视频回 放中可能出现更多的毛刺。
因此,期望一种在正向和逆向时间线方向上平滑回放视频的系统和方法来解 决这些以及其它缺点的一个或多个。
概要
现有技术的不足之处通过提供在正向和逆向时间线方向上的平滑视频回放被 克服。视频文件被解码并且得到的视频时间线被直接保存到视频存储器中。本发明 的实施例利用图形处理单元(GPU)的资源,由图象处理单元在渲染过程中处理视 频帧的效果。经渲染的视频帧被存储在视频存储器中的提前渲染(render-ahead) 队列上。然后,这些帧被从提前渲染队列移除并被显示到屏幕。
在另一个方面中,本发明的实施例利用提前渲染队列和第二队列来以逆时间 线顺序平滑地回放视频。以正时间线顺序将视频帧解码到存储器中并且对它们渲染 效果。经渲染的帧被存储在第二队列上。然后,第二队列上的这些帧被按逆序从第 二队列移除,并被放置于提前渲染队列上。然后,这些帧被按逆时间线顺序从提前 渲染队列移除并被显示到屏幕。
替换地,本发明可包括各种其它方法和装置。
其它特征部分将是显而易见的,而部分将在在下文中指出。
提供本概要来以简化形式介绍将在以下详细描述中进一步描述的概念的 精选。本概要无意标识所要求保护的主题的关键特征或本质特征,也无意用于 帮助确定所要求保护的主题的范围。
附图简述
图1是可在其中实现本发明的显示视频的方法的示例性流程图。
图2是可在其中实现本发明的显示视频和输出音频的方法的示例性流程图。
图3是需要CPU资源的公共处理对处于提前渲染队列上的帧的数量的相对影 响的图示。
图4是在逆时间线方向上的帧回放的过程的图示。
图5是示出了可在其中实现本发明的合适的计算系统环境的一个示例的框图。
图6是其中视频1在视频时间线上过渡到视频2的视频时间线的示图。
图7A是在视频1的帧1被显示之前以及在视频1的帧8被渲染并排列到提前 渲染队列之后的提前渲染队列的示例。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680024224.X/2.html,转载请声明来源钻瓜专利网。





