CN111052738B - 用于在视频编码中延迟后处理的系统和方法 - Google Patents
用于在视频编码中延迟后处理的系统和方法 Download PDFInfo
- Publication number
- CN111052738B CN111052738B CN201880041750.XA CN201880041750A CN111052738B CN 111052738 B CN111052738 B CN 111052738B CN 201880041750 A CN201880041750 A CN 201880041750A CN 111052738 B CN111052738 B CN 111052738B
- Authority
- CN
- China
- Prior art keywords
- post
- processing
- client
- server
- computer
- 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.)
- Active
Links
- 238000012805 post-processing Methods 0.000 title claims abstract description 124
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000003111 delayed effect Effects 0.000 title claims abstract description 48
- 230000008859 change Effects 0.000 claims description 11
- 230000002441 reversible effect Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 9
- 238000009877 rendering Methods 0.000 description 26
- 230000008569 process Effects 0.000 description 14
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 230000006872 improvement Effects 0.000 description 7
- 238000005259 measurement Methods 0.000 description 6
- 230000009467 reduction Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 125000001475 halogen functional group Chemical group 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000001627 detrimental effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/355—Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
公开了在视频编码中延迟后处理效果的系统和方法。所述系统和方法能够计算客户端硬件性能从而延迟负载,并对一个或更多个延迟候选者的已知负载求和,以评估多少后处理延迟候选者能够被延迟到客户端硬件。所述系统和方法还能够将更新的后处理延迟列表发送到远程服务器,该远程服务器能够在第一视频帧的后处理阶段期间应用延迟的后处理候选者的列表。
Description
相关申请
本申请要求于2017年4月21日提交的第62/488,526号和于2018年1月17日提交的第62/618,498号美国临时申请的权益。
技术领域
本申请涉及视频编码。
背景技术
服务器侧游戏由客户端玩家控制的远程游戏应用程序已经尝试使用现有的或定制的编码器对来自三维(3D)图形引擎的视频输出进行实时编码。然而,视频游戏的交互性,特别是视频输出和玩家输入之间的玩家反馈环节,使得游戏视频流传输比常规视频流传输对延迟更为敏感。现有的视频编码方法能够为减少编码时间而牺牲计算能力,而几乎别无其它方法。将编码过程集成到视频渲染过程中的新方法能够显著减少编码时间,同时还降低了计算能力,提高了编码视频的质量,并保留了原始比特流数据格式以保持现有硬件设备的互操作性。
典型的视频渲染管线是与视频编码管线分离并独立的,两个领域中的过程和专业知识之间几乎没有交叉。因此,在视频渲染管线中应用的一些视觉效果和后处理会不利于视频编码过程,导致了视频伪影、编码视频大小的增加和更长的编码时间。然而,这些视觉效果在最终的已解码的视频中仍然是理想的。
通过集成视频渲染管线和视频编码管线,能够延迟后处理效果以改善编码过程。例如,模拟的胶片颗粒会引入对典型的编码器在不需要视频质量或压缩比的大量成本的情况下很难处理的随机出现的动画颗粒。一些视频编码方法试图在编码之前去除这些附加的视觉噪声,但是这些方法仅适用于脱机使用且计算成本高。通过在渲染管线中禁用此特定的后处理,视频将自动变得更易于编码。然后,能够在视频解码之后应用后处理。在胶片颗粒的情况下,将颗粒合成到已解码的视频上对计算要求不高,能够在解码器处实时完成,并且可以通过隐藏其它编码伪影来提高主观视频质量。
国际专利申请号WO2016172314 A1(“314申请”)公开了针对基于艺术意图的内容编码的系统和方法。编码用户界面允许用户指定艺术集并配置与艺术集相关联的像素和/或块的处理,例如保真度增强、QP调整值和/或后处理。可添加到视频输出的艺术意图的示例包括:编码器可以在编码前从原始信号中去除胶片颗粒,并使用胶片颗粒SEI向解码器传达如何重新生成胶片颗粒并在视频信号显示之前将其添加回所述视频信号。可以将本发明与’314申请区别开,至少是因为‘314申请没有公开在编码之前禁用渲染管线中的特定后处理,并且随后在视频解码之后应用那些后处理。因此,本发明是对该计算机技术的改进,这是因为本发明在不需要视频质量或压缩比的大量成本的情况下提供了改进的视频数据的编码和解码。本发明也是一种改进,这是因为本发明改进了产生的带宽、比特率、编码时间,并且能够用于具有改进的视频质量的实时视频流传输应用中。
美国专利第9,609,330号(“‘330专利”)公开了模式和参考类型数据的内容自适应熵编码,这意味着编码器的预分析器子系统分析内容以计算对提高视频编码效率和速度性能有用的各种类型的参数。这些参数包括水平和垂直梯度信息(Rs、Cs)、方差、每幅图像的空间复杂度、每幅图像的时间复杂度、场景变化检测、运动范围估计、增益检测、预测距离估计、目标数量估计、区域边界检测、空间复杂度映射计算、焦点估计以及胶片颗粒估计。由预分析器子系统生成的参数随后能够被编码器应用或被量化并传送给解码器。本发明也可以与‘330专利中公开的技术区别开来,至少是因为该技术没有在编码之前禁用渲染管线中的特定后处理,并且随后在视频解码之后应用那些后处理。因此,本发明是对‘330专利的计算机技术的改进,这是因为本发明在不需要视频质量或压缩比的大量成本的情况下提供了改进的视频数据的编码和解码,并且因为本发明能够用于具有改进的视频质量的实时视频流传输应用中。
美国专利第9,762,911号(“‘911专利”)公开了用于与运动矢量的内容自适应预测和熵编码相关的技术的系统和方法。所公开的技术允许在熵编码器模块处接收第一视频数据和第二视频数据以进行熵编码。第一视频数据和第二视频数据可以是不同的数据类型(例如,如本文进一步讨论的报头数据、变形参数、合成参数、或全局映射数据或运动矢量或帧内预测分区数据等)。可基于诸如第一视频数据的几个压缩比特、与第一视频数据相关联的预定指示符或标记、预定阈值或启发式确定的阈值之类的与第一视频数据相关联的参数来为第一视频数据确定第一熵编码技术。在一些示例中,第一熵编码技术可以选自自适应符号游程可变长度编码技术或自适应代理(proxy)可变长度编码技术中的一种。可以使用第一熵编码技术对第一视频数据进行熵编码,并且可以使用第一熵编码技术对第二视频数据进行熵编码。同样,本发明是可区别开的,至少是因为‘911专利中公开的技术不涉及在编码之前选择性地禁用渲染管线中的后处理,并且随后在视频解码之后应用那些后处理。同样,本发明是对‘911专利的计算机技术的改进,这是因为本发明在不需要视频质量或压缩比的大量成本的情况下提供了改进的视频数据的编码和解码。本发明也是一种改进,这是因为本发明改进了产生的比特率、编码时间,并且能够用于具有改进的视频质量的实时视频流传输应用中。
从上述对该技术的技术现状的讨论中可以明显看出,本领域需要改进与游戏环境中的视频编码相关的现有计算机技术。
发明内容
因此,本文公开的示例性实施例的目的是解决现有技术中的缺点,并提供用于通过以下技术来减少延迟和编码时间的系统和方法,在该技术中,服务器向客户端应用程序发送指令以测量客户端硬件性能,并向客户端应用程序发送指令,以对一个或更多个预定的后处理延迟候选者的已知负载求和,从而评估多少后处理延迟候选者能够被延迟到客户端硬件。在客户端应用程序处,以相反的顺序编译和构建后处理延迟列表。然后,服务器接收后处理延迟列表,在第一视频帧的后处理阶段期间跳过延迟的后处理的列表,并向客户端应用程序发送指令以渲染图像。
本发明的另一个目的是提供用于通过使客户端应用程序执行回调或轮询一个或更多个操作系统事件以确定是否重新测量客户端硬件的性能来减少延迟和编码时间的系统和方法。
本发明的另一个目的是提供用于通过检测可用的指令集、存储器、CPU和/或GPU特征来测量客户端硬件的性能,从而减少延迟和编码时间的系统和方法。
本发明的又一个目的是提供用于通过测量帧速率和/或资源使用情况来评估多少后处理延迟候选者能够被延迟到客户端硬件来减少延迟和编码时间的系统和方法。
附图说明
当结合附图考虑时,通过参考以下详细描述会更好地理解本发明,将容易地获得对本发明及其附带的许多优点的更全面的了解,附图中:
图1是根据本发明的实施例的,示出渲染视频以供在远程客户端上观看的示例性3D图形引擎的框图;
图2是根据本发明的实施例的,示出通过延迟每像素的后处理来改进编码时间或主观视频质量所需的示例性步骤的流程图;
图3是根据本发明的实施例的,示出视频渲染、编码和解码阶段期间延迟的每像素质量的示例性最低限度的实现的图;以及
图4是根据本发明的实施例的,示出服务器和客户端之间用于同步延迟的后处理的列表的示例性通信的流程图。
具体实施方式
在描述附图中所示的本发明的优选实施例时,为了清楚起见,将采用特定术语。然而,本发明并不旨在限于这样选择的特定术语,并且应当理解,每个特定术语包括以类似方式操作以实现类似目的的所有技术等同物。为了说明的目的,描述了本发明的几个优选实施例,应该理解,本发明可以以未在附图中具体示出的其它形式来实施。
后处理管线能够执行许多复杂的过程,包括抗混叠、运动模糊、景深、颜色分级、光晕、胶片颗粒、色差、渐晕和色调映射。与未处理的帧相比,这些效果中的一些会对编码过程产生非常不利的影响,增加编码时间并降低压缩比。等待直到帧被解码后应用某些后处理,可以提高主观视频质量并提供附加的有益折衷。
在客户端应用程序的开发期间,应为渲染管线中的每个后处理评估编码时间、带宽和主观质量之间的平衡,以确定哪些后处理是好的延迟候选者。客户端将在运行期间使用延迟候选者列表来确定哪些后处理能够延迟到客户端上。
每个后处理都应进行测试,以测量其对编码过程的影响。首先,应该通过未更改的渲染管线和编码管线来提供一系列参考帧,并且应该测量编码时间和编码帧大小。应该在渲染管线中一次关闭一个后处理,并将编码时间和编码帧大小与控制结果进行比较。这些测量将有助于通知哪些后处理是好的延迟候选者。通过已增加的编码帧大小来测量的几乎任何增加图像熵的后处理效果都可能是好的延迟候选者。例如,模拟的胶片颗粒后处理会在图像上添加随机噪声,从而导致较低的压缩比。在某些情况下,色差和光晕会增加图像的熵并导致较低的压缩比。几乎任何减少熵或图像数据的后处理效果都不应被延迟,这是因为熵的减少将减少编码开销。
可以选择不改变图像熵的后处理作为延迟候选者,以实现诸如主观视频质量改进或服务器负载减少之类的次要目标。例如,颜色分级可能不会影响编码时间或带宽使用,但当延迟到客户端时,可能导致服务器侧计算负载的显著减少。类似地,抗混叠可以改进主观视频质量,并在延迟时显著减少服务器侧负载。应该执行附加的测试以确定延迟熵中性(entropy-neutral)的后处理是否有益。例如,能够使用类似利用参考帧的测试过程来比较延迟熵中性后处理之前和之后的服务器负载。
客户端应用程序应该能够为每个延迟候选者运行后处理计算。为了将这些功能移至客户端应用程序中,可能需要一些代码重构。诸如胶片颗粒、色差或渐晕之类的渲染管线末端的后处理通常比诸如抗混叠或景深之类的渲染管线中较早发生的后处理更容易移至客户端应用程序。在某些情况下,后处理的延迟会将通常应用于线性空间的后处理应用于非线性空间,例如在色调映射之前应用的那些后处理,如色差、光晕或渐晕。该处理可以直接应用于伽玛空间,并且在数学上可能不是正确的,但是观看者可能无法察觉到差异,并且总体主观质量可能提高。否则,以一些客户端侧计算周期和图像质量损失为代价,客户端应用程序能够将图像转换回线性空间中,应用后处理,然后转换回伽玛空间。转换回线性空间将牺牲一些质量,因为图像将在编码期间将已量化和压缩。这些主观质量决策应该在客户端应用程序的开发期间中做出。
客户端应用程序能够执行的所有后处理构成延迟候选者列表的基础。延迟候选者列表的顺序应该与它们在渲染管线中的出现顺序相同,以便维持任何依赖性。列表中的每个延迟候选者还应该与诸如存储器最低限度或GPU需求之类的硬件特征需求配对。
图1示出了一种示例系统,其中在视频渲染期间像素质量后处理被延迟。该示例系统表示实时远程游戏流传输应用,在与其它类型的视频系统相比时,该应用程序最大程度地受益于通过延迟每像素质量处理而提供的主观质量的改进和减少的编码时间。在该系统中,服务器100托管视频游戏软件102和渲染视频输出的图形引擎104。视频在编解码器106中被编码,并且已编码的视频数据108被发送给远程客户端。服务器架构100是能够支持图形引擎104和编解码器106两者的功能的硬件或软件的任何组合。在给定的示例中,图形引擎104可以实现为例如执行加载到某些计算机可读存储器112中的视频游戏软件102的GPU110,而编解码器106(也称为编码器)可以实现为运行视频编码软件的CPU 114。
远程客户端计算机系统116能够运行客户端侧的编解码器118对发送的已编码的视频数据108进行解码,并且能够运行客户端应用程序120来应用延迟的像素质量后处理。客户端计算机系统116还包含显示控制器122以驱动显示硬件124。来自客户端侧输入外围设备126的输入将被客户端应用程序120转换为控制数据128,该控制数据被发送回服务器100上运行的游戏软件102。基于延迟像素质量后处理的具体实现,一些附加的控制数据128可能需要从服务器侧软件102流向客户端应用程序120,以确保对给定的视频帧应用正确的后处理。
图2示出了在对视频进行渲染、编码和解码的系统中延迟后处理所需的步骤。在步骤200,渲染管线如常在服务器100处开始。在后处理阶段之前,无需对渲染过程进行任何改变。
在步骤202,在服务器100的图形引擎104处的视频渲染后处理阶段,应该跳过将被延迟的任何后处理。如果客户端计算机系统116具有应用所有延迟的后处理所需的计算性能,则可以跳过任何数量的后处理。图4更详细地描述服务器100如何确定哪些后处理将被延迟。跳过任何延迟的后处理后,渲染管线应该继续直到帧完全被渲染为止。
在步骤204,在编解码器106处对产生的帧进行编码。基于对延迟后处理的选择,编码时间可以更快,并且已编码的数据可以需要更少的带宽。例如,如果延迟了胶片颗粒后处理,则编解码器106将在没有引入的噪声的情况下更容易对帧进行编码。
在步骤206,根据需要,将已编码的视频数据108存储或发送到远程客户端计算机系统116。在实时视频游戏流传输应用中,如图1中的示例,视频数据108将被立即发送。在系统的替代实施例中,已编码的视频数据108可以存储在服务器100上以进行按需流传输或存储在物理介质上。
在步骤208,在远程客户端计算机系统116的编解码器118处对已编码的视频进行解码。无需对解码过程进行任何更改。
在步骤210,软件应用程序将以将在渲染管线中出现的顺序应用任何被延迟的后处理。如果延迟的后处理逐帧改变,则在图1示出为客户端应用程序120的该软件可能还需要从服务器100接收控制数据128。如视频游戏流传输系统中那样,如果视频是交互式的,则客户端应用程序120也可能需要发送控制数据128。取决于延迟的后处理的计算复杂度要求,客户端应用程序120可以是稀疏的,这可以允许客户端处的更大范围的计算性能。
图3示出了图1的示例系统中延迟的后处理的实现。在“渲染管线”步骤300示出的典型3D渲染管线位于服务器100处,其包括“应用”步骤302、“几何处理”步骤304以及示出为“光栅化”的步骤306的光栅化阶段。在“光栅化”步骤306中的光栅化阶段的输出是完整的视频帧,其通常通过在示出为步骤308的“后处理”中的后处理来增强。在“编码”步骤310的编码处理期间,一些后处理不利于编码时间或带宽,并且如果客户端能够稍后应用这些后处理,则在“后处理”步骤308的后处理阶段跳过这些后处理。在“后处理”步骤308的后处理期间,如常应用其余的未延迟到客户端116的后处理。输出视频帧在“编码”步骤310被编码,并在“发送”步骤312被发送。
当客户端116接收到已编码的视频帧时,在“解码”步骤314对其进行解码。在此,在“延迟的后处理”步骤316,将所有延迟的后处理应用于已解码的帧。例如,在胶片颗粒的情况下,动画效果能够提前缓存并以相对低的计算成本合成到已解码的帧上。针对颜色分级、抖动和锐化视频的实时解决方案已经存在,并且能够基于客户端的计算性能加以应用。产生的视频帧在“显示”步骤318处显示。
图4示出了客户端应用程序120构建将被延迟的后处理的列表并将该列表传递给服务器100的过程。
在步骤400,客户端应用程序120将测量客户端硬件的性能,以确定哪些后处理能够延迟到客户端116上。能够通过针对诸如可用的指令集、存储器、CPU或GPU的硬件信息的特征检测来测量客户端的性能。
在步骤402,客户端应用程序120读取延迟候选者列表,并且丢弃客户端不满足其硬件要求的任何延迟候选者。延迟候选者的后处理应在客户端上进行基准测试,以测量实时客户端性能。延迟候选者将一次一个地添加到基准测试过程中,直到客户端不再能够保持由帧速率、资源使用情况或某些其它的实时测量来测量的所需的性能。基准测试能够在客户端应用程序安装期间、客户端应用程序120的初始加载期间或应用程序的每次加载期间进行。
客户端116应该对尽可能多的延迟候选者进行后处理。延迟列表以相反顺序构建,以使操作的总体顺序接近原始渲染管线顺序。例如,移动设备可能只能够运行最后的后处理,笔记本电脑可能能够运行在渲染管线的末端的三个后处理,而新的台式计算机可能能够运行延迟候选者列表中的所有后处理。
在步骤404,客户端116向服务器100发送要延迟的后处理列表。
在步骤202,服务器100在第一视频帧的后处理阶段期间使用延迟的后处理的列表。延迟列表上的所有后处理都被跳过。
在步骤206,开始向客户端116发送已编码的视频数据流108。由于客户端116在生成任何帧之前就发送延迟列表,因此不需要从服务器100向客户端116发送附加的元数据。客户端116将自动知道哪些后处理已被延迟。
在步骤210,客户端116应用延迟列表中的所有后处理。客户端116将继续对未来帧应用延迟的后处理。
可能存在这样的情况:客户端性能在运行期间改变,从而需要改变延迟的后处理的列表。例如,如果客户端应用程序在刚进入省电模式的移动设备上运行,则客户端可能希望缩减延迟的后处理的列表。在此示例中,客户端应用程序将需要注册回调或轮询操作系统(“OS”)事件,以侦听电池状态的变化。在步骤412,客户端应用程序120通过重新测量客户端性能来对最近的环境变化做出响应。环境变化可以是影响远程客户端计算机系统116的硬件性能的任何变化。对于上面的示例,省电模式将通过能够直接获取的乘法器降低时钟速率。时钟速率乘法器的变化可以提供对客户端性能变化的粗略估计。否则,可以将省电模式下的附加基准测量添加到步骤402所述的基准测量阶段。
如果客户端性能已经改变,则客户端应用程序120将在步骤414重新评估能够延迟哪些后处理。在省电模式示例中,延迟列表可能与时钟速率乘法器的变化成比例地缩减。例如,如果省电模式将时钟速率降低50%,则延迟列表将缩减至少一半。如果客户端116延迟了四个后处理,则它将列表缩减到两个后处理。否则,如果先前已经执行了省电模式基准测试,则延迟列表将是已知的。
如果延迟列表被改变,则在步骤416客户端116将更改的延迟列表发送到服务器100。客户端116将继续应用来自原始延迟列表的后处理,直到它从服务器100接收到消息为止,该消息优选地包括不同的延迟的后处理的列表。
在步骤418,服务器100在下一可用帧上应用更改的延迟列表。为了与客户端116同步,对该帧应用一些元数据。
在步骤420,发送已编码的视频数据108的帧以及其对应的元数据。
客户端等待,直到它收到元数据标记。在步骤422,客户端116开始根据更改的延迟列表来处理帧。客户端116将继续根据更改的延迟列表来应用延迟的后处理。如果运行环境再次改变,则延迟列表能够从步骤412开始再次增加或缩减。如果延迟列表由于诸如移动设备上的省电模式的临时运行环境改变而缩减,则客户端应用程序120应该尽早增加延迟列表,以便在任何给定时间延迟最多可能的后处理。
示例1:基准测试结果
胶片颗粒引入随机出现的视觉噪声,对编码器的压缩比造成重大影响。在客户端侧应用诸如胶片颗粒的后处理将导致较小的编码帧大小。
在图形引擎以每秒60帧的速度以1280×720的分辨率产生输出时,采集实验比特率值,并且在60帧的基础上求平均值,以获得平均比特率。这些测量的值将在服务器侧应用了胶片颗粒的视频流的比特率与将胶片颗粒延迟到客户端的视频流的比特率进行比较。针对三种不同尺寸的胶片颗粒和两个编码器质量设置值,重复这些测量。胶片颗粒1代表最小的颗粒尺寸,而胶片颗粒3代表最大的颗粒尺寸。实验结果见下表1和表2。表1示出了使用编码器质量16的结果,而表2示出了使用编码器质量20的结果。
表1:编码器质量设置为16时的比特率结果
表2:编码器质量设置为20时的比特率结果
根据实验结果,很明显,诸如胶片颗粒的后处理导致较大的编码帧大小,这是不希望的。这些负面影响在较高的编码器质量值时更为明显,并且随着引入的噪声量的增加而变得更加明显。然而,通过将胶片颗粒延迟到客户端,能够实现比特率的显著降低,如表1和表2所示,其中比特率分别降低到270Kbyte/s和140Kbyte/s。在这些实验中,不管通过胶片颗粒的尺寸来衡量的引入的噪声量有多大,对于给定的编码器质量,比特率保持稳定。
类似地,如下表3所示,针对几个编码器质量设置值,在图形引擎以每秒60帧的速度以1280×720的分辨率产生输出时,测量了实验编码时间。测量值将在服务器侧应用了胶片颗粒的视频流的编码时间与将胶片颗粒延迟到客户端的视频流的编码时间进行比较。胶片颗粒的大小在所有测量中均保持不变。如表3所示,在较高的编码器质量设置下,应用本文所讨论的技术的编码时间的减少更为明显。
表3:根据编码器质量设置值的延迟结果
前述说明和附图应仅被认为是对本发明的原理的说明。本发明无意于受优选实施例的限制,并且可以以本领域普通技术人员所清楚的各种方式来实现。本领域技术人员容易想到本发明的许多应用。因此,不希望将本发明限制于所公开的具体示例或所示出和描述的确切构造和操作。相反,在本发明的范围内可以采用所有合适的修改和等同方案。
Claims (24)
1.一种用于延迟后处理的由计算机实现的方法,其包括以下步骤:
向客户端应用程序发送指令,以测量客户端硬件性能;并且
向客户端应用程序发送指令,以对一个或更多个预定的后处理延迟候选者的已知负载求和,从而评估多少后处理延迟候选者能够被延迟到客户端硬件,
其中,以相反顺序编译后处理延迟列表,并且
其中,服务器接收后处理延迟列表,在第一视频帧的后处理阶段期间跳过后处理延迟列表中的后处理操作,并向客户端应用程序发送指令以渲染图像。
2.根据权利要求1所述的由计算机实现的方法,其中,所述服务器将更新的延迟列表应用于下一可用视频帧。
3.根据权利要求1所述的由计算机实现的方法,其中,所述服务器利用元数据标记将第一或下一可用视频帧返回给客户端应用程序。
4.根据权利要求1所述的由计算机实现的方法,还包括所述服务器将已编码的视频数据发送给客户端应用程序而不发送与后处理相关联的元数据的步骤。
5.根据权利要求1所述的由计算机实现的方法,其中,基于客户端硬件的电池状态的变化来重新计算后处理延迟候选者的列表。
6.一种用于延迟后处理的系统,其中,通过网络,服务器:
向客户端应用程序发送指令,以测量客户端硬件性能;并且
向客户端应用程序发送指令,以对一个或更多个预定的后处理延迟候选者的已知负载求和,从而评估多少后处理延迟候选者能够被延迟到客户端硬件,
其中,以相反顺序编译后处理延迟列表,并且
其中,服务器接收后处理延迟列表,在第一视频帧的后处理阶段期间跳过后处理延迟列表中的后处理操作,并向客户端应用程序发送指令以渲染图像。
7.根据权利要求6所述的系统,其中,所述服务器将更新的延迟列表应用于下一可用视频帧。
8.根据权利要求6所述的系统,其中,所述服务器利用元数据标记将第一或下一可用视频帧返回给客户端应用程序。
9.根据权利要求6所述的系统,还包括所述服务器将已编码的视频数据发送给客户端应用程序而不发送与后处理相关联的元数据的步骤。
10.根据权利要求6所述的系统,其中,基于客户端硬件的电池状态的变化来重新计算后处理延迟候选者的列表。
11.一种用于延迟后处理的由计算机实现的方法,其包括以下步骤:
标识一个或更多个用于延迟的后处理;
跳过标识出的一个或更多个后处理;
在编解码器中将一个或更多个帧编码为一个或更多个编码视频,其中,跳过的后处理不用于编码;和
将所述一个或更多个编码视频发送给客户端计算机,其中,客户端在输出之前将跳过的后处理应用于编码视频。
12.根据权利要求11所述的由计算机实现的方法,其中,后处理的跳过发生在图形引擎处。
13.根据权利要求11所述的由计算机实现的方法,其中,将编码视频中的至少一个在发送给客户端之前存储于服务器。
14.根据权利要求13所述的由计算机实现的方法,其中,所述编码视频存储在服务器上以进行按需流传输或存储在物理介质上。
15.根据权利要求11所述的由计算机实现的方法,其中,用于延迟的后处理的标识基于客户端的计算能力来确定。
16.根据权利要求11所述的由计算机实现的方法,其中,所述编码视频用于视频游戏流传输。
17.根据权利要求13所述的由计算机实现的方法,其中,所述服务器接收来自客户端的控制数据。
18.一种用于延迟后处理的系统,其中,通过网络,服务器
标识一个或更多个用于延迟的后处理;
跳过标识出的一个或更多个后处理;
在编解码器中将一个或更多个帧编码为一个或更多个编码视频,其中,跳过的后处理不用于编码;和
将所述一个或更多个编码视频发送给客户端计算机,其中,将编码视频中的至少一个在发送给客户端之前存储于服务器。
19.根据权利要求18所述的系统,其中,后处理的跳过发生在图形引擎处。
20.根据权利要求18所述的系统,其中,将编码视频中的至少一个在发送给客户端之前存储于服务器。
21.根据权利要求20所述的系统,其中,所述编码视频存储在服务器上以进行按需流传输或存储在物理介质上。
22.根据权利要求18所述的系统,其中,用于延迟的后处理的标识基于客户端的计算能力来确定。
23.根据权利要求18所述的系统,其中,所述编码视频用于视频游戏流传输。
24.根据权利要求18所述的系统,其中,所述服务器接收来自客户端的控制数据。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762488526P | 2017-04-21 | 2017-04-21 | |
US62/488,526 | 2017-04-21 | ||
US201862618498P | 2018-01-17 | 2018-01-17 | |
US62/618,498 | 2018-01-17 | ||
PCT/US2018/028582 WO2018195431A1 (en) | 2017-04-21 | 2018-04-20 | Systems and methods for deferred post-processes in video encoding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111052738A CN111052738A (zh) | 2020-04-21 |
CN111052738B true CN111052738B (zh) | 2021-12-21 |
Family
ID=63854347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880041750.XA Active CN111052738B (zh) | 2017-04-21 | 2018-04-20 | 用于在视频编码中延迟后处理的系统和方法 |
Country Status (15)
Country | Link |
---|---|
US (4) | US10271055B2 (zh) |
EP (1) | EP3613210A4 (zh) |
JP (1) | JP7077396B2 (zh) |
KR (1) | KR102282233B1 (zh) |
CN (1) | CN111052738B (zh) |
AU (1) | AU2018254570B2 (zh) |
BR (1) | BR112019021627A2 (zh) |
CA (1) | CA3059743A1 (zh) |
DE (1) | DE112018002117T5 (zh) |
GB (1) | GB2576286B (zh) |
MX (1) | MX2021004096A (zh) |
RU (2) | RU2728812C1 (zh) |
TW (2) | TWI735193B (zh) |
WO (1) | WO2018195431A1 (zh) |
ZA (2) | ZA201907681B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102282233B1 (ko) | 2017-04-21 | 2021-07-28 | 제니맥스 미디어 인크. | 비디오 인코딩의 연기된 포스트-프로세스들을 위한 시스템들 및 방법들 |
US11731043B2 (en) * | 2019-11-19 | 2023-08-22 | Sony Interactive Entertainment Inc. | Adaptive graphics for cloud gaming |
US20220212100A1 (en) * | 2021-01-04 | 2022-07-07 | Microsoft Technology Licensing, Llc | Systems and methods for streaming interactive applications |
Family Cites Families (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4501980A (en) | 1982-06-04 | 1985-02-26 | Motornetics Corporation | High torque robot motor |
JP2972410B2 (ja) | 1991-10-03 | 1999-11-08 | 富士通株式会社 | 光学的読取装置 |
JPH06129865A (ja) | 1992-10-20 | 1994-05-13 | Sumitomo Electric Ind Ltd | シングルモ−ドファイバ型デポラライザとその製造方法及び光ファイバジャイロ |
US6728713B1 (en) * | 1999-03-30 | 2004-04-27 | Tivo, Inc. | Distributed database management system |
US6345279B1 (en) * | 1999-04-23 | 2002-02-05 | International Business Machines Corporation | Methods and apparatus for adapting multimedia content for client devices |
US6788680B1 (en) * | 1999-08-25 | 2004-09-07 | Sun Microsystems, Inc. | Defferrable processing option for fast path forwarding |
WO2001077979A1 (en) * | 2000-04-12 | 2001-10-18 | Janssen Pharmaceutica N.V. | Method and apparatus for detecting outliers in biological/pharmaceutical screening experiments |
EP1520431B1 (en) | 2002-07-01 | 2018-12-26 | E G Technology Inc. | Efficient compression and transport of video over a network |
US6903662B2 (en) | 2002-09-19 | 2005-06-07 | Ergodex | Computer input device with individually positionable and programmable input members |
US8054880B2 (en) | 2004-12-10 | 2011-11-08 | Tut Systems, Inc. | Parallel rate control for digital video encoder with multi-processor architecture and picture-based look-ahead window |
US7408984B2 (en) | 2003-09-17 | 2008-08-05 | International Business Machines Corporation | Method and system for multiple pass video coding |
WO2005038452A1 (en) * | 2003-10-14 | 2005-04-28 | Verseon | Method and apparatus for analysis of molecular combination based on computations of shape complementarity using basis expansions |
US20050108707A1 (en) * | 2003-11-14 | 2005-05-19 | Taylor Thomas M. | Systems and methods for creating and managing a virtual retail store on end-user client computers within a network |
US20050182582A1 (en) * | 2004-02-12 | 2005-08-18 | International Business Machines Corporation | Adaptive resource monitoring and controls for a computing system |
JP4789494B2 (ja) * | 2004-05-19 | 2011-10-12 | 株式会社ソニー・コンピュータエンタテインメント | 画像フレーム処理方法、装置、レンダリングプロセッサおよび動画像表示方法 |
JP2006014981A (ja) * | 2004-07-02 | 2006-01-19 | Fujitsu Ltd | ネットワークゲーム制御方法及びネットワークゲームプログラム |
US8347088B2 (en) * | 2005-02-01 | 2013-01-01 | Newsilike Media Group, Inc | Security systems and methods for use with structured and unstructured data |
US20060230428A1 (en) * | 2005-04-11 | 2006-10-12 | Rob Craig | Multi-player video game system |
US8139642B2 (en) * | 2005-08-29 | 2012-03-20 | Stmicroelectronics S.R.L. | Method for encoding signals, related systems and program product therefor |
JP4888996B2 (ja) * | 2005-10-21 | 2012-02-29 | 株式会社ユニバーサルエンターテインメント | 会話制御装置 |
US7925136B2 (en) * | 2006-05-25 | 2011-04-12 | Qualcomm Incorporated | Method and apparatus for recording information in battery operated devices |
US9349201B1 (en) * | 2006-08-03 | 2016-05-24 | Sony Interactive Entertainment America Llc | Command sentinel |
DE102006043894B3 (de) * | 2006-09-19 | 2007-10-04 | Siemens Ag | Detailtiefenstufen-Einstellung mehrdimensionaler Bilddaten mit einem Client/Server-basierten Bildrenderingsystem |
EP2177010B1 (en) | 2006-12-13 | 2015-10-28 | Quickplay Media Inc. | Mobile media platform |
US8069258B1 (en) | 2007-09-11 | 2011-11-29 | Electronic Arts Inc. | Local frame processing to apparently reduce network lag of multiplayer deterministic simulations |
US9967590B2 (en) | 2008-04-10 | 2018-05-08 | Qualcomm Incorporated | Rate-distortion defined interpolation for video coding based on fixed filter or adaptive filter |
KR20090117429A (ko) * | 2008-05-09 | 2009-11-12 | 삼성전자주식회사 | 영상 부호화 및 복호화 방법 및 장치 |
EP2364190B1 (en) | 2008-05-12 | 2018-11-21 | GameFly Israel Ltd. | Centralized streaming game server |
WO2009138879A2 (en) | 2008-05-12 | 2009-11-19 | Wei Shi | System and method for fit prediction and recommendation of footwear and clothing |
US8154553B2 (en) | 2008-05-22 | 2012-04-10 | Playcast Media System, Ltd. | Centralized streaming game server |
JP4613990B2 (ja) * | 2008-07-31 | 2011-01-19 | ソニー株式会社 | 画像処理装置、画像処理方法、プログラム |
US8678929B1 (en) | 2008-08-01 | 2014-03-25 | Electronics Arts Inc. | Client-side prediction of a local game object to reduce apparent network lag of multiplayer simulations |
US20100278231A1 (en) | 2009-05-04 | 2010-11-04 | Imagine Communications Ltd. | Post-decoder filtering |
US9723319B1 (en) | 2009-06-01 | 2017-08-01 | Sony Interactive Entertainment America Llc | Differentiation for achieving buffered decoding and bufferless decoding |
CA2684678A1 (en) | 2009-11-03 | 2011-05-03 | Research In Motion Limited | System and method for dynamic post-processing on a mobile device |
US9338523B2 (en) | 2009-12-21 | 2016-05-10 | Echostar Technologies L.L.C. | Audio splitting with codec-enforced frame sizes |
US20110261885A1 (en) | 2010-04-27 | 2011-10-27 | De Rivaz Peter Francis Chevalley | Method and system for bandwidth reduction through integration of motion estimation and macroblock encoding |
WO2012097178A1 (en) * | 2011-01-14 | 2012-07-19 | Ciinow, Inc. | A method and mechanism for performing both server-side and client-side rendering of visual data |
KR20120096317A (ko) * | 2011-02-22 | 2012-08-30 | 한국전자통신연구원 | 스테레오스코픽 비디오를 부호화하는 방법 및 그 장치 |
JP5155462B2 (ja) | 2011-08-17 | 2013-03-06 | 株式会社スクウェア・エニックス・ホールディングス | 動画配信サーバ、動画再生装置、制御方法、プログラム、及び記録媒体 |
KR101926570B1 (ko) * | 2011-09-14 | 2018-12-10 | 삼성전자주식회사 | 포스트 프레그먼트 쉐이더를 사용하는 그래픽 처리 방법 및 장치 |
US20130111514A1 (en) * | 2011-09-16 | 2013-05-02 | Umami Co. | Second screen interactive platform |
JP5977023B2 (ja) | 2011-11-07 | 2016-08-24 | 株式会社スクウェア・エニックス・ホールディングス | 描画システム、プログラム、及び記録媒体 |
US20130212440A1 (en) * | 2012-02-13 | 2013-08-15 | Li-Raz Rom | System and method for virtual system management |
WO2013188457A2 (en) * | 2012-06-12 | 2013-12-19 | Coherent Logix, Incorporated | A distributed architecture for encoding and delivering video content |
CN107911699B (zh) * | 2012-07-02 | 2021-08-10 | 三星电子株式会社 | 视频的编码方法和设备以及非暂时性计算机可读介质 |
BR112015006178B1 (pt) | 2012-09-21 | 2022-11-16 | Nokia Technologies Oy | Métodos, aparelhos e meio não transitório legível por computador para codificação e decodificação de vídeo |
CN104704827B (zh) | 2012-11-13 | 2019-04-12 | 英特尔公司 | 用于下一代视频的内容自适应变换译码 |
US20140192207A1 (en) * | 2013-01-07 | 2014-07-10 | Jinsong Ji | Method and apparatus to measure video characteristics locally or remotely |
CN104885467B (zh) | 2013-01-30 | 2018-08-17 | 英特尔公司 | 用于下一代视频编码的内容自适应参数变换 |
US9661351B2 (en) | 2013-03-15 | 2017-05-23 | Sony Interactive Entertainment America Llc | Client side frame prediction for video streams with skipped frames |
WO2014193403A1 (en) | 2013-05-31 | 2014-12-04 | Empire Technology Development Llc | Cache-influenced video games |
US9210434B2 (en) * | 2013-06-12 | 2015-12-08 | Microsoft Technology Licensing, Llc | Screen map and standards-based progressive codec for screen content coding |
US20140368505A1 (en) * | 2013-06-13 | 2014-12-18 | Nvidia Corporation | Graphics processing subsystem for recovering projection parameters for rendering effects and method of use thereof |
US9596280B2 (en) * | 2013-11-11 | 2017-03-14 | Amazon Technologies, Inc. | Multiple stream content presentation |
CN103686195B (zh) * | 2013-11-22 | 2017-04-05 | 华为技术有限公司 | 视频信息处理方法及设备 |
US9854270B2 (en) | 2013-12-19 | 2017-12-26 | Qualcomm Incorporated | Device and method for scalable coding of video information |
US9749642B2 (en) | 2014-01-08 | 2017-08-29 | Microsoft Technology Licensing, Llc | Selection of motion vector precision |
US20150228106A1 (en) | 2014-02-13 | 2015-08-13 | Vixs Systems Inc. | Low latency video texture mapping via tight integration of codec engine with 3d graphics engine |
US10136152B2 (en) | 2014-03-24 | 2018-11-20 | Qualcomm Incorporated | Use of specific HEVC SEI messages for multi-layer video codecs |
GB2538469B (en) | 2014-05-30 | 2020-08-05 | Halliburton Energy Services Inc | Methods for formulating a cement slurry for use in a subterranean salt formation |
US10078631B2 (en) * | 2014-05-30 | 2018-09-18 | Apple Inc. | Entropy-guided text prediction using combined word and character n-gram language models |
US9762919B2 (en) | 2014-08-28 | 2017-09-12 | Apple Inc. | Chroma cache architecture in block processing pipelines |
US20160092037A1 (en) * | 2014-09-25 | 2016-03-31 | Osix Corporation | Computer-Implemented Methods, Computer Readable Media, And Systems For Distributed Processing |
US10142386B2 (en) * | 2014-10-29 | 2018-11-27 | DLVR, Inc. | Determining manifest file data used in adaptive streaming video delivery |
US10021411B2 (en) | 2014-11-05 | 2018-07-10 | Apple Inc. | Techniques in backwards compatible multi-layer compression of HDR video |
EP3029940B1 (en) * | 2014-12-04 | 2017-03-15 | Axis AB | Method and device for post processing of a video stream |
US9832521B2 (en) * | 2014-12-23 | 2017-11-28 | Intel Corporation | Latency and efficiency for remote display of non-media content |
US10063866B2 (en) | 2015-01-07 | 2018-08-28 | Texas Instruments Incorporated | Multi-pass video encoding |
KR102271721B1 (ko) * | 2015-01-13 | 2021-07-01 | 에스케이플래닛 주식회사 | 클라우드 스트리밍 서비스 시스템, 단말 성능을 고려한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 |
US10000963B2 (en) | 2015-01-26 | 2018-06-19 | Rolltech A/S | Two part spacer with overlapping surfaces |
ES2768979T3 (es) * | 2015-02-27 | 2020-06-24 | Divx Llc | Sistema y método para la duplicación de fotogramas y la ampliación de fotogramas en codificación y envío por flujo continuo de vídeo en directo |
CN106034241B (zh) * | 2015-03-19 | 2019-04-26 | 华为技术有限公司 | 一种多媒体重定向的方法、客户端、服务器和系统 |
TW201642655A (zh) | 2015-04-21 | 2016-12-01 | Vid衡器股份有限公司 | 基於藝術意向之視訊編碼 |
KR102370842B1 (ko) * | 2015-06-03 | 2022-03-08 | 삼성전자주식회사 | 컨텐츠를 암호화하기 위한 전자 장치 및 방법 |
US9491490B1 (en) | 2015-06-12 | 2016-11-08 | Intel Corporation | Facilitating environment-based lossy compression of data for efficient rendering of contents at computing devices |
JP6910130B2 (ja) | 2015-11-06 | 2021-07-28 | 三星電子株式会社Samsung Electronics Co.,Ltd. | 3dレンダリング方法及び3dレンダリング装置 |
US10163183B2 (en) | 2016-01-13 | 2018-12-25 | Rockwell Collins, Inc. | Rendering performance using dynamically controlled samples |
US10000961B2 (en) | 2016-02-29 | 2018-06-19 | Ford Global Technologies, Llc | Temperature control for powered vehicle doors |
US9705526B1 (en) | 2016-03-17 | 2017-07-11 | Intel Corporation | Entropy encoding and decoding of media applications |
US10109100B2 (en) | 2016-03-25 | 2018-10-23 | Outward, Inc. | Adaptive sampling of pixels |
US20170347126A1 (en) | 2016-05-27 | 2017-11-30 | Qualcomm Incorporated | Video debanding using adaptive filter sizes and gradient based banding detection |
US20180115795A1 (en) * | 2016-10-22 | 2018-04-26 | Gopro, Inc. | Adaptive bit rate algorithm for point-to-point wifi devices |
US10462334B2 (en) | 2016-11-04 | 2019-10-29 | Disney Enterprises, Inc. | Pipeline for high dynamic range video coding based on luminance independent chromaticity preprocessing |
US11095877B2 (en) | 2016-11-30 | 2021-08-17 | Microsoft Technology Licensing, Llc | Local hash-based motion estimation for screen remoting scenarios |
US10591971B2 (en) * | 2017-04-01 | 2020-03-17 | Intel Corporation | Adaptive multi-resolution for graphics |
US10719902B2 (en) * | 2017-04-17 | 2020-07-21 | Intel Corporation | Thread serialization, distributed parallel programming, and runtime extensions of parallel computing platform |
KR102282233B1 (ko) | 2017-04-21 | 2021-07-28 | 제니맥스 미디어 인크. | 비디오 인코딩의 연기된 포스트-프로세스들을 위한 시스템들 및 방법들 |
-
2018
- 2018-04-20 KR KR1020197033911A patent/KR102282233B1/ko active IP Right Grant
- 2018-04-20 TW TW109110609A patent/TWI735193B/zh active
- 2018-04-20 US US15/958,574 patent/US10271055B2/en active Active
- 2018-04-20 RU RU2019136651A patent/RU2728812C1/ru active
- 2018-04-20 CN CN201880041750.XA patent/CN111052738B/zh active Active
- 2018-04-20 AU AU2018254570A patent/AU2018254570B2/en active Active
- 2018-04-20 GB GB1916964.8A patent/GB2576286B/en active Active
- 2018-04-20 DE DE112018002117.3T patent/DE112018002117T5/de active Pending
- 2018-04-20 TW TW107113615A patent/TWI691200B/zh active
- 2018-04-20 RU RU2020124345A patent/RU2744982C2/ru active
- 2018-04-20 BR BR112019021627-8A patent/BR112019021627A2/pt unknown
- 2018-04-20 EP EP18788388.9A patent/EP3613210A4/en active Pending
- 2018-04-20 WO PCT/US2018/028582 patent/WO2018195431A1/en active Application Filing
- 2018-04-20 JP JP2020507500A patent/JP7077396B2/ja active Active
- 2018-04-20 CA CA3059743A patent/CA3059743A1/en active Pending
-
2019
- 2019-03-15 US US16/355,200 patent/US10841591B2/en active Active
- 2019-10-18 MX MX2021004096A patent/MX2021004096A/es unknown
- 2019-11-20 ZA ZA2019/07681A patent/ZA201907681B/en unknown
-
2020
- 2020-10-06 US US17/064,430 patent/US11778199B2/en active Active
- 2020-11-12 ZA ZA2020/07052A patent/ZA202007052B/en unknown
-
2023
- 2023-07-12 US US18/221,293 patent/US20230362388A1/en active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230362388A1 (en) | Systems and methods for deferred post-processes in video encoding | |
US8396122B1 (en) | Video codec facilitating writing an output stream in parallel | |
KR100809354B1 (ko) | 복원된 프레임의 프레임율을 업컨버팅하는 장치 및 방법 | |
RU2735241C1 (ru) | Системы и способы для векторов движения, генерируемых во время игры | |
US20100295922A1 (en) | Coding Mode Selection For Block-Based Encoding | |
US10477249B2 (en) | Video processing for masking coding artifacts using dynamic noise maps | |
JP7405989B2 (ja) | マシン向け映像符号化における方法及び装置 | |
JP2010098352A (ja) | 画像情報符号化装置 | |
WO2023142715A1 (zh) | 视频编码方法、实时通信方法、装置、设备及存储介质 | |
US8934539B2 (en) | Vector processor acceleration for media quantization | |
RU2825728C2 (ru) | Системы и способы для отложенных процессов постобработки при кодировании видеоинформации | |
CN113794887A (zh) | 一种游戏引擎中视频编码的方法及相关设备 | |
US8687875B2 (en) | Comparator based acceleration for media quantization | |
JP2000209610A (ja) | カラ―画像の符号化・復号化処理装置 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40021829 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |