当前位置: 首页 > 专利查询>辉达公司专利>正文

使用虚拟分辨率调整的视频流缩放制造技术

技术编号:39121022 阅读:10 留言:0更新日期:2023-10-23 14:46
本发明专利技术公开了使用虚拟分辨率调整的视频流缩放。在各种示例中,随着时间的推移,观察与视频流相关联的网络条件,以确定虚拟缩放系数,虚拟缩放系数可应用于视频流的一个或更多个帧的图像,以生成可附加填充区域的缩放图像,该填充区域保持视频和/或视频流的原始分辨率,以便接收设备可在解码过程中从接收的视频流中裁剪填充区域,而无需重新启动或包括附加的帧内编码帧。加的帧内编码帧。加的帧内编码帧。

【技术实现步骤摘要】
使用虚拟分辨率调整的视频流缩放

技术介绍

[0001]提供云游戏服务是一项复杂的操作,需要大量复杂的计算基础设施,并涉及维持游戏和网络性能之间的平衡—理想情况下不影响用户体验。在云游戏中,视频输出(图形)是利用云中的服务器生成的,然后流式传输到游戏玩家的显示设备进行显示。通常,流媒体系统在服务器侧对玩游戏的视频数据进行编码,视频数据的解码和视频帧的渲染发生在客户端侧,以便在客户端设备上显示。传统上,为了减少或以其他方式控制流媒体系统的延迟和丢包,或减少流媒体服务器的资源使用(例如,用于编码和流式传输视频到客户端设备的计算资源量),流媒体系统可以降低或减少编码到流的帧的分辨率。
[0002]将流媒体视频的分辨率从1080p降低到720p,可以减少编码视频数据所需的比特率和传输视频数据所需的网络资源。一些传统的流媒体系统可以改变流媒体游戏的分辨率,以响应减少的网络带宽。然而,降低流媒体游戏的分辨率可能需要对流进行“重启”或“重置”以适应分辨率的变化。传统上,视频译码标准不支持基于先前不同分辨率的帧来预测视频数据的帧。因此,当流媒体游戏的分辨率被修改时,必须插入包含额外编码信息的新的帧内编码帧(例如,I

帧)。由于额外的编码信息,这些帧可能比预测的帧(例如,P

帧)大得多,而预测的帧可能依赖于早期帧的信息。这种额外的帧内编码帧的增加的大小可能会导致接收设备处的延迟和/或视觉停顿(stutter)的闪烁(spike)。此外,在流媒体视频中引入帧内编码帧可能导致接收设备的解码器重新启动视频解码过程
>‑‑
进一步影响延迟和视觉停顿。传统的技术已经试图限制帧内编码帧的大小。然而,限制这些帧的大小可能会由于量化损失和压缩伪影的增加而导致视觉质量下降。

技术实现思路

[0003]本公开的实施例涉及使用虚拟分辨率调整改善视频流系统的可扩展性。公开了系统和方法,该系统和方法基于观察到的网络条件和/或流媒体内容的特性来确定视频流的帧的图像的缩放分辨率,从而图像可以被缩放,用填充区域填充,并流式传输到接收设备而不需要改变视频帧的实际分辨率。
[0004]与传统的方法,例如上述的方法相比,所公开的方法可以在较大的帧分辨率内执行与视频流相关联的分辨率的“虚拟”缩放,例如来自游戏或其他应用程序。通过减少或增加源视频数据(如图像)的有效分辨率,同时填充和/或扩展缩放后的源视频数据,可以保持原始分辨率。因此,视频数据流的预测性编码可以被保留,而不需要插入额外的、通常较大的帧内编码帧。由于在减少或增加有效分辨率时不需要帧内编码帧,虚拟分辨率缩放可以在与网络条件和/或流媒体系统的需求相对应的大小和/或频率下执行。此外,由于流媒体视频数据的虚拟缩放可以在更小和/或更频繁的步骤中完成,现有的视频压缩算法(例如,运动估计等)可以正确响应虚拟分辨率的任何变化。因此,游戏内容可以流式传输到一个或更多个客户端设备,在减少编码比特率以考虑到网络条件和/或网络资源的变化的同时,使感知的质量降低最小或不降低。
附图说明
[0005]下面参考附图详细描述用于使用虚拟分辨率调整的视频流媒体缩放的本系统和方法,其中:
[0006]图1是根据本公开的至少一些实施例的流媒体系统的示例系统图;
[0007]图2是根据本公开的至少一些实施例的示出流编码和解码过程的流程图;
[0008]图3是根据本公开内容的至少一些实施例的帧填充的示例描述;
[0009]图4是根据本公开内容的至少一些实施例的用于流媒体系统中的帧缩放过程的示例的图;
[0010]图5是示出根据本公开的至少一些实施例的至少基于网络条件的用于流媒体系统中视频编码的方法的示例的流程图;
[0011]图6是示出根据本公开的至少一些实施例的至少基于虚拟帧缩放的用于流媒体系统中的视频编码的方法的示例的流程图;
[0012]图7是适合用于实现本公开内容的一些实施例的示例性内容流媒体系统的框图;
[0013]图8是适合用于实现本公开内容的一些实施例的示例性计算设备的框图;以及
[0014]图9是适合用于实现本公开的一些实施例的示例性数据中心的框图。
具体实施方式
[0015]公开了与使用虚拟分辨率调整的视频流媒体缩放有关的系统和方法。
[0016]与传统的方法,例如上述的方法相比,所公开的方法可以在较大的帧分辨率内执行与视频流相关的分辨率的“虚拟”缩放,例如来自游戏或其他应用程序的分辨率。通过减少或增加源视频数据的有效分辨率,同时填充和/或扩展缩放后的源视频数据,可以保持原始分辨率。因此,视频数据流的预测性编码可以保留,而不需要插入额外的、通常较大的帧内编码帧。由于在减少或增加有效分辨率时不需要帧内编码帧,虚拟分辨率缩放可以在与网络条件、视频数据流的复杂度和/或流媒体系统的需求相对应的大小和/或频率下进行。此外,由于流媒体视频数据的虚拟缩放可以在更小和/或更频繁的步骤中完成,现有的视频压缩算法(例如,运动估计等)可以正确响应虚拟分辨率的任何变化。因此,游戏和其他应用内容可以以最小感知质量降低或不降低感知质量的方式流式传输到一个或更多个客户端设备,同时降低编码比特率以考虑到网络条件和/或网络资源的变化。
[0017]在各种实例中,流式传输到客户端设备的视频数据的虚拟分辨率可以基于网络条件和/或流媒体视频的视频复杂度的变化而改变。例如,响应于编码所需或期望的比特率的降低,游戏或其他应用流媒体服务器可以降低流式传输的视频数据的虚拟分辨率。例如,虚拟分辨率可以至少基于比特率的减少而减少到目标分辨率,或者至少基于比特率的增加而增加到目标分辨率。在至少一个实施例中,流式传输到客户端设备的视频数据的虚拟分辨率可以基于视频数据流的视频复杂度的变化(例如,视频数据中包含的空间和/或时间信息的水平)来改变。例如,响应于流媒体视频内容复杂度的减少,内容的虚拟分辨率可以增加,以利用已使用的编码和解码资源。在一些实施例中,观察到的网络条件和视频内容的复杂度可用于确定是否减少或增加(例如恢复)流媒体视频数据的虚拟分辨率。在一些实施例中,对虚拟分辨率的改变可以在单一步骤中执行(例如,从1080p到720p),而在至少一个实施例中,虚拟分辨率可以在减少或增加分辨率的一个或更多个步骤中改变。例如,1080p的
源分辨率可以在若干步骤中降低到720p,每个步骤将分辨率降低了任意像素的量和/或与1、4、8或16像素的倍数对齐(例如,对应于将用于编码帧的编码算法的块大小)的量。在至少一个示例中,虚拟分辨率可以通过一些步骤朝着源分辨率增加(例如恢复)(例如随着网络条件和/或视频复杂度的改善)。
[0018]在一些实施例中,为了将视频数据的源分辨率减小到帧中的虚拟分辨率,视频数据可以被填充和/或在帧中附加一个或更多个填充区域。在一个或更多个实施例中,一个或更多个填充区域可以被附加到流媒体视频数据中,以便降低的虚拟分辨率视频数据和一个或更多个填充区域的组合尺寸等于视频数据的原始源分辨率(例如,源视频分辨率和/或流媒体帧分本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种方法,包括:至少基于指示与视频流相关联的一个或更多个网络条件的数据,将与所述视频流的一个或更多个帧相对应的至少一个图像从第一分辨率缩放到第二分辨率,所述第二分辨率是比所述第一分辨率小的分辨率;对所述视频流的所述一个或更多个帧进行编码,所述编码包括用具有预先确定的像素值的一个或更多个像素填充所述至少一个图像,以便包括所述至少一个图像和填充的一个或更多个像素的编码帧具有等于所述第一分辨率的分辨率;以及使用一个或更多个分组通过网络传输编码的一个或更多个帧。2.如权利要求1所述的方法,其中所述传输包括使用所述一个或更多个分组存储表示一个或更多个参数的数据,所述参数指示帧内的至少一个图像的分辨率或帧内的所述至少一个图像的位置中的一个或更多个。3.如权利要求1所述的方法,进一步包括:引起将所述一个或更多个分组解码为一个或更多个解码帧,所述解码包括将对应于所述一个或更多个解码帧的一个或更多个图像从所述第二分辨率缩放为所述第一分辨率;以及引起所述一个或更多个解码帧的显示。4.如权利要求3所述的方法,其中引起所述解码包括引起所述设备从所述帧中裁剪掉所述一个或更多个帧。5.如权利要求1所述的方法,其中所述数据指示网络带宽、视频复杂度的指示或与所述视频流相关联的目标比特率中的一个或更多个。6.如权利要求1所述的方法,其中所述缩放被配置为将所述第一分辨率降低与定义所述编码中使用的视频压缩处理边界的像素大小的倍数对齐的量。7.如权利要求1所述的方法,其中所述第一分辨率是所述视频的原始分辨率。8.如权利要求1所述的方法,包括:通过两个或更多个迭代步骤将所述一个或更多个帧中的一组帧转变为目标分辨率,所述两个或更多个迭代步骤中的每个步骤对应于不同的分辨率,其中所述两个或更多个迭代步骤中的至少一个迭代步骤包括所述缩放、所述编码和所述生成。9.一种系统,包括:一个或更多个处理单元,用于执行操作,所述操作包括:至少基于指示与视频流相关联的一个或更多个网络条件的数据,确定所述视频流的一个或更多个帧的第一分辨率;至少基于所述确定,以所述第一分辨率生成所述一个或更多个帧;以所述第一分辨率对所述一个或更多个帧中的至少一个帧进行编码,并将所述至少一个帧填充到第二分辨率;以及使用一个或更多个分组将至少一个编码帧传输到设备。10.如权利要求9所述的系统,其中对所述至少一个帧进行编码包括对表示一个或更多个参数的数据进行编码,所述参数指示所述填充的大小或所述填充在所述至少一个帧内的位置中的一个或更多个。11.如权利要求9所述的系统,其中所述填充包括将一个或更多个虚拟像素附加到对应
于所述至少一个帧并缩放到所述第二分辨率的图像上,所述一个或更多个虚拟像素具有与所述图像中的至少一个其他像素的像素值...

【专利技术属性】
技术研发人员:B
申请(专利权)人:辉达公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1