CN112368766A - 带有编码器反馈的图形渲染 - Google Patents
带有编码器反馈的图形渲染 Download PDFInfo
- Publication number
- CN112368766A CN112368766A CN201980043358.3A CN201980043358A CN112368766A CN 112368766 A CN112368766 A CN 112368766A CN 201980043358 A CN201980043358 A CN 201980043358A CN 112368766 A CN112368766 A CN 112368766A
- Authority
- CN
- China
- Prior art keywords
- feedback
- graphics
- encoder
- content
- configuration information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000009877 rendering Methods 0.000 title claims description 28
- 238000012545 processing Methods 0.000 claims abstract description 56
- 230000000694 effects Effects 0.000 claims description 25
- 238000000034 method Methods 0.000 claims description 24
- 230000033001 locomotion Effects 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 12
- 238000013139 quantization Methods 0.000 claims description 9
- 238000012805 post-processing Methods 0.000 claims description 8
- 238000007781 pre-processing Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 claims description 4
- 238000003708 edge detection Methods 0.000 claims description 4
- 238000010801 machine learning Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 238000013442 quality metrics Methods 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 claims description 3
- 238000003860 storage Methods 0.000 description 15
- 230000008901 benefit Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011960 computer-aided design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000005266 casting Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/08—Bandwidth reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/36—Level of detail
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
反馈处理模块[200]包括被配置为存储从编码器[125]接收的反馈[205]的存储器[220]。该反馈包括与由图形引擎[105]生成的经编码的图形内容相关联的参数。反馈处理模块还包括处理器[215],该处理器被配置为基于该反馈生成用于图形引擎的配置信息。所述图形引擎被配置为基于所述配置信息执行工作负荷。在一些情况下,所述反馈处理模块还被配置为接收来自用于对由所述编码器编码的所述图形内容进行解码的解码器的反馈,并且基于从所述解码器接收的所述反馈来生成所述配置信息。
Description
背景技术
云服务(诸如云游戏和虚拟桌面应用程序)用于执行计算密集型任务,诸如执行游戏逻辑和渲染高分辨率三维(3D)图形。将计算密集型任务转移到云服务器可以使此类应用程序向缺乏执行完整应用程序所需的计算能力的智能手机、平板电脑和其他瘦装置提供服务。例如,在云服务器上实现的云游戏应用程序从客户端接收控制输入。云游戏应用程序使用控制输入来生成或修改表示游戏世界的3D场景。图形引擎渲染场景,并且对渲染的场景进行编码,以从云服务器传输到客户端装置,客户端装置接收并解码编码后的视频帧,以呈现在客户端装置的屏幕上。因此,客户端不使用直接从图形引擎接收的图形内容。相反,客户端使用已经在云服务器处被编码(例如,作为压缩的比特流)并且然后在客户端处被解码(例如,通过对压缩的比特流进行解压缩)的图形内容。因此,在云服务器处实现的编码器至少部分地确定在客户端装置的屏幕上显示的图像的质量。
附图说明
通过参考附图,本领域技术人员可更好地理解本公开并且明白其众多特征和优势。在不同附图中使用相同的附图标记表示类似或等同的项。
图1是根据一些实施方案的图形处理系统的框图。
图2是根据一些实施方案的反馈处理模块的框图。
图3是根据一些实施方案的由图形引擎生成并被编码用于通过网络进行传输的图像的示例。
图4是根据一些实施方案的基于从编码器接收的反馈来配置图形引擎的方法的流程图,该编码器对由图形引擎产生的图形内容进行编码。
具体实施方式
云服务器集成了视频编码器来压缩数据以通过将云服务器连接到客户端装置的网络进行传输。视频压缩通常基于二维(2D)视频编解码器或多视图视频编解码器(MVC)(诸如但不限于H.264/MVC、H.265(HEVC)、VP8、VP9和AV1)执行。在一些情况下,图形引擎提供其他信息来辅助视频编码器。例如,图形引擎向视频编码器提供深度信息,视频编码器使用该信息来定位图像中的感兴趣区域(ROI)。然后,编码器分配其他位,以对图像的在ROI中的部分进行编码。对于另一个示例,图形引擎提供图形上下文以辅助视频图像的压缩。在一些情况下,响应于改变网络状况(包括带宽、往返时间、抖动等的变化)而修改诸如编码帧速率或量化的编码参数。但是,由于常规的云服务器不包括用于将信息从编码器传送回图形引擎的通道,因此图形引擎仍未意识到在编码器处执行的调整。缺少反馈导致编码后的比特流的视觉质量降低以及图形引擎处的不必要计算。例如,图形引擎启用了全套3D效果来渲染高度纹理化的内容,但是在一些情况下,编码器约束阻止了编码器以图形引擎产生的质量级别传递图形内容,这降低了用户体验。
图1-图4公开了用于从编码器向反馈处理模块提供反馈以提高云服务器中的图形处理效率,同时节省带宽并保持客户端装置上的用户体验质量的设备、系统和方法。反馈处理模块生成用于配置图形引擎的信息,该图形引擎向编码器提供图形内容。在一些实施方案中,由编码器提供的反馈包括诸如图形内容中的不同区域的比特率成本、可用带宽、图形内容中的差异、图形内容中的运动活动、图形内容中的场景变化的检测、量化强度、空间差异、预测模式、客观质量度量等信息。该反馈还可以包括与在编码之前对图形内容的预处理或在对经编码的图形内容进行解码之后在接收器处进行的后处理相关联的信息。例如,预处理或后处理信息包括快速傅立叶变换(FFT)参数、离散余弦变换(DCT)参数、直方图、边缘检测结果、文本检测结果等。反馈处理模块的一些实施方案还从解码器接收反馈,该解码器用于解码经编码的图形内容。反馈处理模块使用现场可编程门阵列(FPGA)、中央处理单元(CPU)、图形处理单元(GPU)、固定功能硬件块或其他处理单元实现。反馈处理模块使用应用程序提供的指令、经验生成的查找表、闭环控制方法、机器学习、神经网络、回归建模等来生成配置信息。
反馈处理模块将配置信息提供给图形引擎,图形引擎基于该配置信息修改渲染设置或其他选项。例如,反馈处理模块将图片的不同区域的比特率成本用于生成配置信息,该配置信息指示图形引擎应关闭图片的具有较高比特率成本的部分中的3D效果。又例如,反馈处理模块响应于接收到指示带宽不足以支持高质量3D渲染效果的编码器量化的反馈信息,指示图形引擎关闭一些3D渲染效果。又例如,反馈处理模块响应于指示编码器能够在预定帧边界上改变其帧速率以减小编码比特流的带宽的反馈信息,指示图形引擎修改渲染帧速率。又例如,反馈处理模块基于来自编码器的反馈中接收的编码器统计信息,指示图形引擎以较低的图像分辨率渲染图形内容。
图1是根据一些实施方案的图形处理系统100的框图。图形处理系统100包括图形引擎105。图形引擎105的一些实施方案使用图形处理单元(GPU)来实现,该图形处理单元(GPU)包括用于独立地或同时地处理指令线程的多个处理元件(为了清楚起见未示出)。例如,使用根据单指令多数据(SIMD)协议进行操作的GPU来实现图形引擎105。图形引擎105被配置为执行诸如执行应用程序逻辑(例如,用于控制游戏应用程序的逻辑)和渲染高分辨率三维(3D)图形的任务。图形引擎105生成用于在显示器110上呈现场景、图像或帧的图形内容。
图形引擎105执行工作负荷以生成图形内容,该图形内容经由网络115被提供给显示器110。在所示的实施方案中,图形引擎105被实现在经由网络115与显示器110通信的云服务器120上。因此,使用在云服务器120的一些实施方案中实现的编码器125,对图形内容进行编码以便通过网络115进行传输。为了至少部分地保存网络115内的带宽,编码器125压缩从图形引擎105接收的图形内容。编码器125的一些实施方案使用诸如但不限于H.264/MVC、H.265(HEVC)、VP8、VP9、AV1的二维(2D)视频编解码器或多视图视频编解码器(MVC)来压缩图形内容。解码器130经由网络115从编码器125接收经编码的图形内容,并且对经编码的图形内容进行解码。然后将解码的图形内容提供给显示器110以呈现给用户。尽管所示实施方案描绘了经由网络115向显示器110提供内容的云服务器120,但是本文公开的技术的一些实施方案同样适用于其他图形处理系统,其中图形引擎105通过需要对图形内容进行编码和解码的有线或无线网络与显示器110分开。
如本文中所讨论的,从编码器125到图形引擎105的反馈的缺乏导致编码比特流的较低的视觉质量和图形引擎105处的不必要计算。因此,云服务器120包括反馈处理器135,以从编码器125接收反馈140,并将配置信息提供给图形引擎105。因此,反馈处理器135提供用于将信息从编码器125传回到图形引擎105的通道,使得图形引擎105意识到在编码器125处执行的调整。反馈处理器135的一些实施方案接收反馈140,该反馈包括与由图形引擎105生成的经编码的图形内容相关联的参数。反馈处理器135被配置为基于反馈140为图形引擎105生成配置信息。反馈处理器135的一些实施方案还被配置为从解码器130接收反馈145,并基于从解码器130接收的反馈145生成配置信息。图形引擎105使用反馈处理器135生成的配置信息进行配置,并且一旦如此配置,图形引擎105就执行一个或多个工作负载以生成图形内容。
图2是根据一些实施方案的反馈处理模块200的框图。反馈处理模块200用于实现图1所示的反馈处理器135的一些实施方案。反馈处理模块200接收诸如图1所示的反馈140的编码器反馈205。反馈205的一些实施方案包括从编码器接收的统计信息,该编码器用于对从图形引擎接收的原始图形内容进行编码。例如,反馈205包括图形内容中的不同感兴趣区域(ROI)的比特率成本、诸如图1中所示的网络115的网络中的可用带宽、图形内容中的差异、图形内容中的运动活动、图形内容中的场景变化的检测、量化强度、空间差异、预测模式、客观质量度量等。反馈205的一些实施方案还包括与在编码之前对图形内容的预处理或在对经编码的图形内容进行解码之后在接收器处进行的后处理相关联的信息。例如,预处理或后处理信息包括快速傅立叶变换(FFT)参数、离散余弦变换(DCT)参数、直方图、边缘检测结果、文本检测结果等。
在所示的实施方案中,反馈处理模块200从诸如图1所示的解码器130的解码器接收解码器反馈210。如虚线所示,在一些实施方案中,解码器反馈210是可选的,并且不提供给反馈处理模块200。解码器反馈210包括表征由解码器执行的解码过程的信息。例如,解码器反馈210包括指示将要呈现经解码的图形内容的显示器的显示尺寸或分辨率的信息,这影响对如何生成图形内容以供显示的评估。又例如,解码器反馈210包括指示解码器是否正在实时地成功解码经编码的图形内容的信息,这影响对图形内容的帧速率的确定。如果解码器正在实时地成功解码经编码的图形,则增加帧速率,并且如果解码器无法跟上当前帧速率的解码,则降低帧速率。又例如,解码器反馈210包括标识支持的或不支持的编解码器工具的信息,该信息用于决定是否执行不同类型的渲染。如果解码器不支持子像素运动补偿,则将内容渲染为子像素运动不必要地消耗资源。在那种情况下,图形引擎被配置为仅将内容渲染为全像素运动。
反馈处理模块200还包括处理器215和存储器220。处理器215用于执行存储在存储器220中的指令,并且将诸如所执行指令的结果的信息存储在存储器220中。存储器220存储编码器反馈205以及解码器反馈210(如果可用),使得处理器215能够访问编码器反馈205以及解码器反馈210(如果可用)。处理器215基于编码器反馈205和解码器反馈210(如果可用)为图形引擎(诸如图1中所示的图形引擎105)生成配置信息。
处理器215的一些实施方案生成用于提高在显示器上呈现的图像的质量的配置信息。编码器提供包括图像内的不同区域的比特率成本的反馈。例如,该信息包括图片顶部处相对静止的区域(诸如图像的背景部分)的相对较高的比特率成本。因此,该信息指示编码器分配了太多的位来对图像的这些区域进行编码,这导致使用较少数量的位并因此以较低的质量来编码图像的其他部分。因此,处理器215生成用于配置图形引擎以确定图像顶部附近的区域在背景中(例如,使用位深度图)的配置信息。图形引擎在这些区域中关闭诸如3D效果的效果,这使编码器更有效且以更高的质量压缩表示这些区域的图形内容。而且,通过减少背景区域中的图形内容的复杂性而节省的位随后可用于改善图像中的其他区域(诸如前景区域或高度可变区域)的质量。
处理器215的一些实施方案生成用于节省图形引擎或编码器中的功率的配置信息。编码器提供反馈,该反馈指示可用的网络带宽不足以支持对图像的所有区域中的高质量3D渲染效果进行编码所需的大程度的量化。处理器215然后生成用于配置图形引擎以关闭任何不必要的3D效果的配置信息,这允许图形引擎通过利用较少的GPU周期或消耗较少的内存并执行较少的存储器访问请求来节省功率。
处理器215的一些实施方案生成用于改变由图形引擎生成的帧速率或图像的配置信息。编码器提供反馈,该反馈指示可用网络带宽不足以在当前由图形引擎用来渲染帧的帧速率下维持当前图像质量。编码器能够在图形内容中的预定边界上改变其帧速率。例如,编码器使用每秒30帧(FPS)、50FPS、60FPS等的帧速率。因此,处理器215生成用于配置图形引擎以修改用于渲染图像的帧速率的配置信息。例如,处理器215响应于指示当前帧速率下的网络带宽不足的反馈而生成配置信息,该配置信息配置图形引擎以降低渲染帧速率。
处理器215的一些实施方案生成用于改变由图形引擎渲染的图像的大小或分辨率的配置信息。编码器提供包括代表编码过程的统计信息的反馈。在一些情况下,统计信息指示由图像描绘的运动是否被用户感知为平滑。用户体验的质量在游戏产生的图形内容中尤其重要,游戏通常表示图像内元素的连续移动。因此,处理器215生成用于配置图形引擎以修改所渲染图像的分辨率的大小的配置信息。例如,如果统计信息指示断断续续或不稳定的运动,则配置信息用于配置图形引擎以降低图像分辨率(例如,1080p至720p),以增强图像中表示的运动的平滑度。
处理器215输出渲染设置或选项225,其被提供给图形引擎并用于配置图形引擎。响应于诸如编码器检测到场景改变的事件,响应于来自图形引擎的请求等,以预定的时间间隔提供渲染设置或选项225。
处理器215的一些实施方案使用以下中的一者或多者来实现:现场可编程门阵列(FPGA)、中央处理单元(CPU)、图形处理单元(GPU)、固定功能硬件块和通用处理单元。处理器215的一些实施方案被配置为基于由产生图形内容的应用程序提供的指令、经验生成的查找表、闭环控制方法、机器学习、神经网络和回归建模中的一者或多者来生成配置信息。
图3是根据一些实施方案的由图形引擎生成并被编码用于通过网络进行传输的图像300的示例。表示图像300的图形内容是由图1所示的图形引擎105的一些实施方案生成的。图像300包括正在向篮框315投篮球310的球员305。图像300还包括在图像300的背景中的天空320和地面325。代表图像300的图形内容被提供给编码器,诸如图1所示的编码器125。编码器对图形内容进行编码(例如使用压缩算法)以压缩代表图像300的接收到的比特流,并且向诸如图1所示的反馈处理器135的反馈处理器提供反馈。
该反馈包括与图像300内的不同区域330、335相关联的信息。例如,与包括在图像300的背景中的天空320的一部分的区域330相关联的反馈包括指示用于对区域330进行编码的比特率成本的信息。如果区域330的比特率成本相对较高,这表明编码器正在消耗不必要的大量的位来对区域330进行编码,则反馈处理器生成配置信息,以配置图形引擎来降低用于渲染区域330的细化程度或修改被施加以渲染区域330的效果,如本文所讨论的。又例如,与包括篮球310的区域335相关联的反馈包括指示由于篮球310的运动而使区域335中的像素值快速变化的统计信息。因此,反馈处理器生成配置信息以将图形引擎配置为修改渲染选项或设置以考虑篮球310的运动。
图4是根据一些实施方案的基于从编码器接收的反馈来配置图形引擎的方法400的流程图,该编码器对由图形引擎产生的图形内容进行编码。方法400在图1所示的云服务器120和图2所示的反馈处理模块200的一些实施方案中实现。
在框405处,反馈处理模块从编码器接收反馈信息。如本文所述,基于编码器对图形内容的编码来生成反馈信息。在框410处,反馈处理模块从解码器接收反馈信息,该解码器被配置为对由编码器编码的信息进行解码。如本文所讨论的,解码器可选地提供反馈信息,并且如框410的虚线所示,反馈处理模块的一些实施方案不从解码器接收反馈信息。
在框415处,反馈处理模块基于从编码器接收的反馈以及从解码器接收的反馈(如果可用)生成渲染设置或选项。在框420处,反馈处理模块向图形引擎提供渲染设置或选项。在框425处,基于由反馈处理模块提供的渲染设置或选项来配置图形引擎。
在一些实施方案中,上文所描述的设备和技术在包括一个或多个集成电路(IC)装置(也被称为集成电路封装或微芯片)的系统中实现,诸如上文参考图1至图4所描述的反馈处理模块。这些IC装置的设计和制造中使用了电子设计自动化(EDA)和计算机辅助设计(CAD)软件工具。这些设计工具通常呈现为一个或多个软件程序。一个或多个软件程序包括代码,所述代码可由计算机系统执行以操纵计算机系统对表示一个或多个IC装置的电路的代码进行操作,以便执行过程的至少一部分来设计或调整制造系统以制作电路。此代码可包括指令、数据或指令和数据的组合。表示设计工具或制造工具的软件指令通常存储在可由计算系统访问的计算机可读存储介质中。同样地,表示IC装置的设计或制造的一个或多个阶段的代码存储在同一计算机可读存储介质或不同的计算机可读存储介质中,以及从同一计算机可读存储介质或不同的计算机可读存储介质进行访问。
计算机可读存储介质包括任何非暂时性存储介质或非暂时性存储介质的组合,所述非暂时性存储介质在使用期间可由计算机系统访问,以将指令和/或数据提供给计算机系统。此类存储介质可包括但不限于光学介质(例如,压缩光盘(CD)、数字通用光盘(DVD)、蓝光光盘)、磁性介质(例如,软盘、磁带或磁性硬盘驱动器)、易失性存储器(例如,随机存取存储器(RAM)或高速缓存)、非易失性存储器(例如,只读存储器(ROM)或快闪存储器)或基于微机电系统(MEMS)的存储介质。计算机可读存储介质嵌入在计算系统中(例如,系统RAM或ROM)、固定地附接到计算系统(例如,磁性硬盘驱动器)、可移除地附接到计算系统(例如,光盘或基于通用串行总线(USB)的快闪存储器)或经由有线或无线网络耦合到计算机系统(例如,网络可访问存储装置(NAS))。
在一些实施方案中,上文所描述的技术的某些方面由执行软件的处理系统的一个或多个处理器实现。软件包括存储或以其他方式有形地体现在非暂时性计算机可读存储介质上的一个或多个可执行指令集。软件可包括指令和某些数据,所述指令和某些数据当由一个或多个处理器执行时操纵所述一个或多个处理器来执行以上所述的技术的一个或多个方面。非暂时性计算机可读存储介质可以包括例如磁盘或光盘存储装置、固态存储装置诸如快闪存储器、缓存、随机存取存储器(RAM)或其他一个或多个非易失性存储器装置等。存储在非暂时性计算机可读存储介质上的可执行指令呈源代码、汇编语言代码、目标代码或者被一个或多个处理器解译或可以其他方式执行的其他指令格式。
应注意,并不需要上文在一般描述中所描述的所有活动或元件,特定活动或装置的一部分是需要的,并且执行一个或多个其他活动,或者包括除所描述的那些元件之外的元件。此外,列出活动的顺序不一定是执行所述活动的顺序。另外,已经参考具体实施方案描述了概念。然而,本领域普通技术人员应了解,在不脱离如所附权利要求中所阐述的本公开范围的情况下,可作出各种修改和改变。因此,本说明书和附图将被视为说明性的而非限制性的,并且所有此类修改都意图被包括在本公开的范围内。
上文已经参照具体实施方案描述了相应益处、其它优点以及问题的解决方案。然而,所述益处、优点、问题解决方案以及可使任何益处、优点或问题解决方案出现或变得更突出的任何特征都不应被解释为是任何或所有权利要求的关键、必需或必要特征。此外,上文所公开的特定实施方案只是说明性的,因为所公开的主题可以按受益于本文教导的本领域技术人员显而易见的不同但等效的方式来修改和实践。除了如所附权利要求中所描述的之外,并不意图限制本文所示出的构造或设计的细节。因此,明显的是,上文所公开的特定实施方案可以更改或修改,并且所有此类变化都被认为是在所公开的主题的范围内。因此,本文所寻求的保护正如所附权利要求中所陈述。
Claims (22)
1.一种设备,其包括:
存储器[220],所述存储器被配置为存储从编码器[125]接收的反馈[205],其中所述反馈包括与编码由图形引擎[105]生成的图形内容相关联的参数;和
处理器[215],所述处理器被配置为基于所述反馈生成用于所述图形引擎的配置信息,
其中所述图形引擎被配置为基于所述配置信息执行工作负荷。
2.根据权利要求1所述的设备,其中所述反馈包括针对所述图形内容中的区域的运动信息、量化强度、空间差异、预测模式、比特率成本和客观质量度量中的至少一者。
3.根据权利要求1所述的设备,其中所述反馈包括指示检测到所述图形内容中的场景变化的信息。
4.根据权利要求1所述的设备,其中所述反馈包括与在编码之前对所述图形内容的预处理或在对所述编码的图形内容进行解码之后在接收器处进行的后处理相关联的信息中的至少一者。
5.根据权利要求4所述的设备,其中与预处理或后处理相关联的所述信息包括快速傅立叶变换(FFT)参数、离散余弦变换(DCT)参数、直方图、边缘检测结果和文本检测结果中的至少一者。
6.根据权利要求1所述的设备,其中所述存储器被配置为存储从解码器[130]接收的反馈,所述解码器用于对由所述编码器编码的所述图形内容进行解码,并且其中所述处理器被配置为基于从所述解码器接收的反馈[210]来生成所述配置信息。
7.根据权利要求1所述的设备,其中所述处理器被配置为基于以下中的至少一者来生成所述配置信息:由产生所述图形内容的应用程序提供的指令;经验生成的查找表;闭环控制过程;机器学习;神经网络;和回归建模。
8.根据权利要求1所述的设备,其中通过基于所述配置信息来修改所述图形引擎的渲染设置来配置所述图形引擎。
9.根据权利要求8所述的设备,其中修改所述渲染设置包括修改所述渲染设置以配置所述图形引擎以执行以下中的至少一者:
基于在所述编码器处对所述图形内容的多个区域进行编码的比特率成本,在所述多个区域中的至少一个区域中禁用至少一个图形效果;
响应于指示带宽不足以支持所述至少一个图形效果的编码器量化的反馈,在所述图形内容的所述多个区域中的至少一个区域中禁用所述至少一个图形效果;
响应于指示所述编码器能够在预定的帧边界上改变其帧速率以减小表示所述图形内容的编码比特流的带宽的反馈来修改渲染帧速率;以及
基于所述反馈中接收的编码器统计信息,降低用于渲染所述图形内容的图像分辨率。
10.一种方法,其包括:
在反馈处理模块[200]处接收来自编码器[125]的反馈[205],其中所述反馈包括与编码由图形引擎[105]生成的图形内容相关联的参数;
将所述反馈存储在所述反馈处理模块处;
在所述反馈处理模块处基于所述反馈生成用于所述图形引擎的配置信息;
使用所述配置信息配置所述图形引擎;以及
在所述图形引擎处执行至少一个工作负荷。
11.根据权利要求10所述的方法,其中接收所述反馈包括接收针对所述图形内容中的区域的运动信息、量化强度、空间差异、预测模式、比特率成本和客观质量度量中的至少一者。
12.根据权利要求10所述的方法,其中接收所述反馈包括接收指示检测到所述图形内容中的场景变化的信息。
13.根据权利要求12所述的方法,其中接收所述反馈包括接收与在编码之前对所述图形内容的预处理或在对所述编码的图形内容进行解码之后进行的后处理相关联的信息中的至少一者。
14.根据权利要求13所述的方法,其中接收与预处理或后处理相关联的所述信息包括接收快速傅立叶变换(FFT)参数、离散余弦变换(DCT)参数、直方图、边缘检测结果和文本检测结果中的至少一者。
15.根据权利要求10所述的方法,其还包括:
在所述反馈处理模块处存储从解码器[130]接收的反馈[210],所述解码器用于对由所述编码器编码的所述图形内容进行解码;以及
在所述反馈处理模块处基于从所述解码器接收的所述反馈生成所述配置信息。
16.根据权利要求10所述的方法,其中生成所述配置信息包括基于由产生所述图形内容的应用程序提供的指令、经验生成的查找表、闭环控制方法、机器学习、神经网络和回归建模中的至少一者的所述配置信息。
17.根据权利要求10所述的方法,其还包括:
基于所述配置信息修改所述图形引擎的渲染设置。
18.根据权利要求17所述的方法,其中修改所述图形引擎的渲染设置包括以下中的至少一者:
基于在所述编码器处对所述图形内容的多个区域进行编码的比特率成本,在所述多个区域中的至少一个区域中禁用至少一个图形效果;
响应于指示带宽不足以支持所述至少一个图形效果的编码器量化的反馈,在所述图形内容的所述多个区域中的至少一个区域中禁用所述至少一个图形效果;
响应于指示所述编码器能够在预定的帧边界上改变其帧速率以减小表示所述图形内容的编码比特流的带宽的反馈来修改渲染帧速率;以及
基于所述反馈中接收的编码器统计信息,降低用于渲染所述图形内容的图像分辨率。
19.一种设备,其包括:
图形引擎[105],所述图形引擎被配置为生成图形内容;
编码器[125],所述编码器被配置为对所述图形内容进行编码以进行传输,并生成包括与图形内容的所述编码相关联的参数的反馈[205];和
反馈处理模块[200],所述反馈处理模块被配置为从所述编码器接收所述反馈,并基于所述反馈生成用于所述图形引擎的配置信息,其中基于从所述反馈处理模块接收的所述配置信息来重新配置所述图形引擎。
20.根据权利要求19所述的设备,其中所述反馈处理模块被配置为接收来自解码器[130]的反馈[210],所述解码器用于对由所述编码器编码的所述图形内容进行解码,并且其中所述反馈处理模块被配置为基于从所述解码器接收的所述反馈来生成所述配置信息。
21.根据权利要求19所述的设备,其中所述图形引擎被配置为执行以下中的至少一者:
基于在所述编码器处对所述图形内容的多个区域进行编码的比特率成本,在所述多个区域中的至少一个区域中禁用至少一个图形效果;
响应于指示带宽不足以支持所述至少一个图形效果的编码器量化的反馈,在所述图形内容的所述多个区域中的至少一个区域中禁用所述至少一个图形效果;
响应于指示所述编码器能够在预定的帧边界上改变其帧速率以减小表示所述图形内容的编码比特流的带宽的反馈来修改渲染帧速率;以及
基于所述反馈中接收的编码器统计信息,降低用于渲染所述图形内容的图像分辨率。
22.根据权利要求19所述的设备,其中所述反馈处理模块使用现场可编程门阵列(FPGA)、中央处理单元(CPU)、图形处理单元(GPU)、固定功能硬件块和通用处理单元中的至少一者实现。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/993,074 | 2018-05-30 | ||
US15/993,074 US11830225B2 (en) | 2018-05-30 | 2018-05-30 | Graphics rendering with encoder feedback |
PCT/IB2019/052608 WO2019229547A1 (en) | 2018-05-30 | 2019-03-29 | Graphics rendering with encoder feedback |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112368766A true CN112368766A (zh) | 2021-02-12 |
CN112368766B CN112368766B (zh) | 2024-05-10 |
Family
ID=68694181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980043358.3A Active CN112368766B (zh) | 2018-05-30 | 2019-03-29 | 带有编码器反馈的图形渲染 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11830225B2 (zh) |
EP (1) | EP3803845A4 (zh) |
JP (1) | JP7397008B2 (zh) |
KR (1) | KR20210014664A (zh) |
CN (1) | CN112368766B (zh) |
WO (1) | WO2019229547A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169234A1 (zh) * | 2022-03-07 | 2023-09-14 | 华为技术有限公司 | 渲染方法及电子设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113947518B (zh) * | 2021-11-02 | 2024-04-30 | 北京蔚领时代科技有限公司 | 数据处理系统 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070230581A1 (en) * | 2006-04-04 | 2007-10-04 | Qualcomm Incorporated | Video decoding in a receiver |
WO2009138878A2 (en) * | 2008-05-12 | 2009-11-19 | Playcast Media Systems, Ltd. | Centralized streaming game server |
US20110090963A1 (en) * | 2009-10-16 | 2011-04-21 | Hong Kong Applied Science and Technology Research Institute Company Limited | Method and apparatus for zoom motion estimation |
CN102783169A (zh) * | 2009-12-30 | 2012-11-14 | Ati科技无限责任公司 | 具有多流发送/接收操作的三维视频显示系统 |
US20140092991A1 (en) * | 2012-09-30 | 2014-04-03 | Microsoft Corporation | Conditional signalling of reference picture list modification information |
US20140321561A1 (en) * | 2013-04-26 | 2014-10-30 | DDD IP Ventures, Ltd. | System and method for depth based adaptive streaming of video information |
US20140347376A1 (en) * | 2013-05-24 | 2014-11-27 | Nvidia Corporation | Graphics server and method for managing streaming parameters |
CN104243440A (zh) * | 2013-06-21 | 2014-12-24 | 辉达公司 | 图形服务器和经远程图形处理服务使渲染内容流动的方法 |
CN104966004A (zh) * | 2015-07-03 | 2015-10-07 | 绚视软件科技(上海)有限公司 | 一种视窗商店应用程序远端媒体来源的实现装置及方法 |
US20160148650A1 (en) * | 2014-11-24 | 2016-05-26 | Vixs Systems, Inc. | Video processing system with custom chaptering and methods for use therewith |
CN105828072A (zh) * | 2016-03-25 | 2016-08-03 | 乐视控股(北京)有限公司 | 一种图像处理方法、远程被控设备及虚拟现实系统 |
US9704270B1 (en) * | 2015-07-30 | 2017-07-11 | Teradici Corporation | Method and apparatus for rasterizing and encoding vector graphics |
CN106951204A (zh) * | 2017-03-21 | 2017-07-14 | 广东暨通信息发展有限公司 | 基于计算机集群可视化系统的图像同步方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8401336B2 (en) * | 2001-05-04 | 2013-03-19 | Legend3D, Inc. | System and method for rapid image sequence depth enhancement with augmented computer-generated elements |
CN1757240A (zh) | 2003-03-03 | 2006-04-05 | 皇家飞利浦电子股份有限公司 | 视频编码 |
US7961960B2 (en) * | 2006-08-24 | 2011-06-14 | Dell Products L.P. | Methods and apparatus for reducing storage size |
US7456760B2 (en) | 2006-09-11 | 2008-11-25 | Apple Inc. | Complexity-aware encoding |
WO2009117450A1 (en) * | 2008-03-18 | 2009-09-24 | Invism, Inc. | Enhanced immersive soundscapes production |
US8264493B2 (en) | 2008-05-12 | 2012-09-11 | Playcast Media Systems, Ltd. | Method and system for optimized streaming game server |
EP2286595A1 (en) * | 2008-06-16 | 2011-02-23 | Dolby Laboratories Licensing Corporation | Rate control model adaptation based on slice dependencies for video coding |
US8385971B2 (en) * | 2008-08-19 | 2013-02-26 | Digimarc Corporation | Methods and systems for content processing |
US9071484B1 (en) | 2011-04-05 | 2015-06-30 | Elemental Technologies, Inc. | Feedback optimized video coding parameters |
US20130208809A1 (en) | 2012-02-14 | 2013-08-15 | Microsoft Corporation | Multi-layer rate control |
JP2015515806A (ja) | 2012-03-26 | 2015-05-28 | ユークリッド・ディスカバリーズ・エルエルシーEuclid Discoveries,Llc | コンテキストベースの映像符号化及び映像復号化 |
US10278584B2 (en) * | 2013-03-11 | 2019-05-07 | Carestream Dental Technology Topco Limited | Method and system for three-dimensional imaging |
TW201505399A (zh) | 2013-03-29 | 2015-02-01 | Vid Scale Inc | 早期封包損失檢測及回饋 |
US9609336B2 (en) * | 2013-04-16 | 2017-03-28 | Fastvdo Llc | Adaptive coding, transmission and efficient display of multimedia (acted) |
US10547825B2 (en) * | 2014-09-22 | 2020-01-28 | Samsung Electronics Company, Ltd. | Transmission of three-dimensional video |
US20160112708A1 (en) * | 2014-10-20 | 2016-04-21 | Trusight, Inc. | System and method for optimizing intensity levels for video encoding |
US10756997B2 (en) | 2015-09-28 | 2020-08-25 | Cybrook Inc. | Bandwidth adjustment for real-time video transmission |
CN105357524B (zh) | 2015-12-02 | 2020-04-28 | 广东中星微电子有限公司 | 一种视频编码方法及装置 |
US10313686B2 (en) * | 2016-09-20 | 2019-06-04 | Gopro, Inc. | Apparatus and methods for compressing video content using adaptive projection selection |
CA3060578C (en) * | 2017-04-21 | 2020-07-21 | Zenimax Media Inc. | Systems and methods for encoder-guided adaptive-quality rendering |
-
2018
- 2018-05-30 US US15/993,074 patent/US11830225B2/en active Active
-
2019
- 2019-03-29 CN CN201980043358.3A patent/CN112368766B/zh active Active
- 2019-03-29 EP EP19811114.8A patent/EP3803845A4/en active Pending
- 2019-03-29 WO PCT/IB2019/052608 patent/WO2019229547A1/en unknown
- 2019-03-29 KR KR1020207037197A patent/KR20210014664A/ko not_active Application Discontinuation
- 2019-03-29 JP JP2020566981A patent/JP7397008B2/ja active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070230581A1 (en) * | 2006-04-04 | 2007-10-04 | Qualcomm Incorporated | Video decoding in a receiver |
CN101411198A (zh) * | 2006-04-04 | 2009-04-15 | 高通股份有限公司 | 接收器中的视频解码 |
WO2009138878A2 (en) * | 2008-05-12 | 2009-11-19 | Playcast Media Systems, Ltd. | Centralized streaming game server |
US20110090963A1 (en) * | 2009-10-16 | 2011-04-21 | Hong Kong Applied Science and Technology Research Institute Company Limited | Method and apparatus for zoom motion estimation |
CN102783169A (zh) * | 2009-12-30 | 2012-11-14 | Ati科技无限责任公司 | 具有多流发送/接收操作的三维视频显示系统 |
US20140092991A1 (en) * | 2012-09-30 | 2014-04-03 | Microsoft Corporation | Conditional signalling of reference picture list modification information |
US20140321561A1 (en) * | 2013-04-26 | 2014-10-30 | DDD IP Ventures, Ltd. | System and method for depth based adaptive streaming of video information |
US20140347376A1 (en) * | 2013-05-24 | 2014-11-27 | Nvidia Corporation | Graphics server and method for managing streaming parameters |
CN104243440A (zh) * | 2013-06-21 | 2014-12-24 | 辉达公司 | 图形服务器和经远程图形处理服务使渲染内容流动的方法 |
US20160148650A1 (en) * | 2014-11-24 | 2016-05-26 | Vixs Systems, Inc. | Video processing system with custom chaptering and methods for use therewith |
CN104966004A (zh) * | 2015-07-03 | 2015-10-07 | 绚视软件科技(上海)有限公司 | 一种视窗商店应用程序远端媒体来源的实现装置及方法 |
US9704270B1 (en) * | 2015-07-30 | 2017-07-11 | Teradici Corporation | Method and apparatus for rasterizing and encoding vector graphics |
CN105828072A (zh) * | 2016-03-25 | 2016-08-03 | 乐视控股(北京)有限公司 | 一种图像处理方法、远程被控设备及虚拟现实系统 |
CN106951204A (zh) * | 2017-03-21 | 2017-07-14 | 广东暨通信息发展有限公司 | 基于计算机集群可视化系统的图像同步方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169234A1 (zh) * | 2022-03-07 | 2023-09-14 | 华为技术有限公司 | 渲染方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
EP3803845A4 (en) | 2022-04-13 |
WO2019229547A1 (en) | 2019-12-05 |
KR20210014664A (ko) | 2021-02-09 |
CN112368766B (zh) | 2024-05-10 |
JP2021525986A (ja) | 2021-09-27 |
US20190371006A1 (en) | 2019-12-05 |
JP7397008B2 (ja) | 2023-12-12 |
EP3803845A1 (en) | 2021-04-14 |
US11830225B2 (en) | 2023-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10594901B2 (en) | Game engine application direct to video encoder rendering | |
US10242462B2 (en) | Rate control bit allocation for video streaming based on an attention area of a gamer | |
JP5214246B2 (ja) | フィルム粒度シミュレーションのためのブロック平均決定方法 | |
CA3082771C (en) | Systems and methods for encoder-guided adaptive-quality rendering | |
CN106331687B (zh) | 根据参考部分的位置处理沉浸式视频内容的一部分的方法和设备 | |
US20150228106A1 (en) | Low latency video texture mapping via tight integration of codec engine with 3d graphics engine | |
US9984504B2 (en) | System and method for improving video encoding using content information | |
CN112368766B (zh) | 带有编码器反馈的图形渲染 | |
JP6226578B2 (ja) | 画像符号化装置、画像符号化方法及びプログラム | |
JP2018522430A (ja) | ユーザヘッドセットへの球状ビデオ帯域幅を減少させる方法および装置 | |
US20150208072A1 (en) | Adaptive video compression based on motion | |
US20140161173A1 (en) | System and method for controlling video encoding using content information | |
US11997275B2 (en) | Benefit-based bitrate distribution for video encoding | |
CN114007137A (zh) | 一种基于roi的视频分级编码的方法、装置及介质 | |
US20150229921A1 (en) | Intra searches using inaccurate neighboring pixel data | |
JP7438234B2 (ja) | 符号化アーティファクトのためのフレームオーバーレイ | |
US20210092424A1 (en) | Adaptive framerate for an encoder | |
KR20160147408A (ko) | 프레임 간 변화량을 이용한 가변 해상도 처리 장치 및 그 제어 방법 | |
KR20160096754A (ko) | 계층적 비디오 코딩의 시간 확장성을 활용한 전력 관리 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |