CN111886864A - 分辨率自适应视频编码 - Google Patents

分辨率自适应视频编码 Download PDF

Info

Publication number
CN111886864A
CN111886864A CN201980007185.XA CN201980007185A CN111886864A CN 111886864 A CN111886864 A CN 111886864A CN 201980007185 A CN201980007185 A CN 201980007185A CN 111886864 A CN111886864 A CN 111886864A
Authority
CN
China
Prior art keywords
frame
resolution
encoded data
video
adaptive
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.)
Pending
Application number
CN201980007185.XA
Other languages
English (en)
Inventor
张翠姗
孙域晨
朱玲
楼剑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of CN111886864A publication Critical patent/CN111886864A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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
    • H04N19/423Methods 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 characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Abstract

客户端设备可以通过网络从服务器接收第一视频帧的编码数据,并且至少部分地基于存储在客户端设备的参考帧缓存中的第二分辨率的一个或更多个第二帧,解码所述编码数据以获得第一帧。响应于确定第一分辨率低于第二分辨率,客户端设备取决于客户端设备采用哪种编码设计可以或可以不将第一帧从第一分辨率调整为第二分辨率,将第一分辨率的第一帧和/或调整后的第二分辨率的第一帧存储在参考帧缓存中。客户端设备可以向用户显示重建帧。

Description

分辨率自适应视频编码
背景技术
随着互联网的发展,视频流应用已经在人们的日常生活中变得非常流行。用户现在可以使用视频流应用程序观看视频,而无需等待完整下载视频的整个文件(大小可能从几兆字节到几GB),这可能需要几分钟到几十分钟的分钟。当前,诸如H.264/AVC,H.265/HEVC等的常规视频编解码器被用于将视频从视频源流传输到通过网络观看视频的用户的客户端设备。
鉴于网络的不稳定性和网络中业务量的变化,期望根据网络的某些属性(例如网络带宽)实时自适应地以不同的分辨率编码和发送视频,例如视频序列的帧(例如,帧间编码帧)。但是,传统的视频编解码器(例如H.264/AVC和H.265/HEVC)要求相同视频序列中的帧具有相同的帧大小或分辨率,这是由于帧大小记录在视频序列的序列级头部中,并且不能在帧间编码帧中更改。因此,如果需要改变帧的大小或分辨率,则需要开始新的视频序列,并且首先要对帧内编码帧进行编码、压缩和发送。然而,编码、压缩和发送帧内编码的帧不可避免地会增加额外的时间,计算量和网络带宽,从而导致使用传统视频编解码器根据网络条件自适应地改变视频分辨率是困难且昂贵的。
当前在AVI编解码器中提出了一种新的帧类型,即切换帧,并将其用作在不同帧大小或分辨率的视频序列之间切换的过渡帧。在避免使用帧内编码并因此避免全部帧内编码帧的成本的同时,与普通帧间编码帧相比,这种类型的切换帧仍需要额外的计算时间/计算量和网络带宽,因此引入了改变视频分辨率时在计算时间/计算量和网络带宽方面的开销。此外,在所提出的使用切换帧的方法下,当前帧的运动矢量编码不能使用先前帧中的运动矢量作为运动矢量预测器。
下一代视频编解码器H.266/VVC当前正在开发中,并且在H.266/VVC中提出了许多新的编码工具。为了支持帧间编码帧中的分辨率变化,对于在同一视频序列中帧大小或分辨率不一致的情况,需要新的编码系统设计。
发明内容
本概述介绍了自适应分辨率视频编码的简化概念,其将在下面的详细描述中进一步描述。该概述不旨在标识所要求保护的主题的必要特征,也不旨在用于限制所要求保护的主题的范围。
本申请描述了自适应分辨率视频编码的示例实现。在实施中,第一计算设备可以在相同的视频序列中自适应地编码不同分辨率的视频帧(例如,帧间编码的帧),并且通过网络将所述帧发送给第二计算设备。在实施中,第一计算设备可以进一步在视频序列的序列头中标识最大分辨率,并且在相应帧的帧头中标识每个帧的相对分辨率。
在实施中,第二计算设备可以通过网络从第一计算设备接收第一视频帧的编码数据,并且至少部分地基于存储在第二计算设备的参考帧缓存中的第二分辨率的一个或更多个第二帧来解码编码数据以获得第一帧。在实施中,响应于确定第一分辨率低于第二分辨率,第二计算设备可以或可以不将第一帧从第一分辨率调整为第二分辨率,并取决于第二计算设备采用哪种编码设计,将第一分辨率的第一帧和/或调整大小的第二分辨率的第一帧存储在参考帧缓存中。
附图说明
详细的描述参照附图得以阐述。在附图中,附图标记的最左边的数字标识该附图标记首次出现的附图。在不同附图中使用相同的附图标记表示相似或相同的项目。
图1示出了其中可以使用自适应分辨率视频编码系统的示例环境。
图2更详细地示出了示例编码系统。
图3更详细地示出了示例解码系统。
图4示出了自适应视频编码的示例方法。
图5示出了自适应视频解码的示例方法。
具体实施例
概述
如上所述,现有技术中,为改变视频序列中视频帧的分辨率,要么需要开始新的视频序列,要么需要引入新的帧类型,这会导致额外的时间和计算成本,并且无法基于网络条件实时灵活地调整视频序列的视频帧(例如,帧间编码帧)的分辨率。
本公开描述了示例自适应分辨率视频编码系统。该自适应分辨率视频编码系统可以包括自适应编码系统和自适应解码系统。自适应编码系统和自适应解码系统可以在网络的两个节点上分别和/或彼此独立地操作,并且由于在约定的编码协议或标准下在它们之间传输的视频序列而彼此相关。
在实施中,该自适应编码系统可以基于网络条件(例如,网络带宽)来确定视频序列的第一帧的第一分辨率或帧大小,并且基于先前已经使用帧间编码传输的相同视频序列的一个或更多个第二帧实时地编码所述第一分辨率的第一帧。取决于网络条件,第一分辨率或帧大小可能与一个或更多个第二帧的第二分辨率或帧大小相同或不同。在实施中,自适应编码系统可以在第一帧的帧头中标识第一分辨率的信息,并且可以另外在视频序列的序列头中标识视频序列的最大分辨率。在获得第一帧的编码数据之后,自适应编码系统可以经由网络将所述第一帧的编码数据发送到自适应解码系统。
在实施中,自适应解码系统可以通过网络从自适应编码系统接收所述第一帧的编码数据。自适应解码系统可以对所述编码数据进行解码,以在发送所述第一帧的编码数据之前,基于一个或更多个已接收并在参考帧缓存中本地存储的第二帧重建所述第一帧。在实施中,如果第一帧的第一分辨率或帧大小与一个或更多个第二帧的第二分辨率或帧大小不同,则自适应解码系统可以调整与一个或更多个第二帧相关的运动预测器的大小和/或缩放运动矢量,或将一个或更多个第二帧调整为第一分辨率或帧大小。自适应解码系统然后可以基于经调整大小的运动预测器和/或经调整大小的运动矢量或一个或更多个经调整大小的第二帧,对编码数据进行解码以重建第一帧。自适应解码系统可以将第一分辨率或第二分辨率的第一帧提供给显示器以进行呈现。
此外,取决于自适应解码系统采用的解码设计,自适应解码系统可以将第一帧的大小从第一分辨率调整(例如,向上采样)为第二分辨率,并且将第一分辨率的第一帧和/或调整后大小的第二分辨率的第一帧存储到参考帧缓冲区中,以供视频序列的后续帧使用。
在本文描述的示例中,所描述的自适应分辨率视频编码系统允许实时地在任何时间实时地自适应地改变视频序列中的各个帧的分辨率或帧大小,而无需启动新的视频序列或使用新的帧类型,因此避免了由于启动新视频序列或使用新帧类型而导致不必要的额外时间和计算成本的引入。
此外,本文中由自适应视频编码系统和/或自适应解码系统执行的功能可以由多个单独的单元或服务执行。例如,对于自适应视频编码系统,确定服务可以基于网络条件来确定视频序列的第一帧的第一分辨率或帧大小,而编码服务可以基于先前已经使用帧间编码发送的相同视频序列的一个或更多个第二帧实时地编码第一分辨率的第一帧。标识服务可以在第一帧的帧头中标明第一分辨率的信息,并在视频序列的序列头中标明视频序列的最大分辨率,而另一服务可以通过网络将第一帧的编码数据发送到自适应解码系统。
此外,尽管在本文描述的示例中,自适应视频编码系统和自适应解码系统中的任何一个可以被实现为安装在单个设备中的软件和/或硬件,在其他示例中,自适应视频编码系统和自适应解码系统中的任何一个可以在多个设备上实现或分布,或者作为在网络上的一个或更多个服务器和/或在云计算架构中提供的服务来实现或分布。
本申请描述了多种多样的实施方式。以下部分描述了适合于实践各种实现的示例框架。接下来,本申请描述了用于实现自适应分辨率视频编码系统的示例系统、设备和过程。
示例环境
图1示出了可用于实现自适应分辨率视频编码系统的示例环境100。环境100可以包括自适应分辨率视频编码系统102。在该示例中,自适应分辨率视频编码系统102被描述为包括自适应编码系统104和自适应解码系统106。在其他情况下,自适应分辨率视频编码系统102可以包括一个或更多个自适应编码系统104和/或一个或更多个自适应解码系统106。自适应编码系统104和自适应解码系统106可以彼此独立地操作,并且在分别作为视频序列的发送和接收一方而关联。在实施中,自适应编码系统104通过网络108与自适应解码系统进行106数据通信。
在实施中,自适应编码系统104可以包括一个或更多个服务器110。在一些情况下,自适应编码系统104可以是一个或更多个服务器110的一部分,或者可以被包括在和/或分布在一个或更多个服务器110中。该一个或更多个服务器110可以经由网络108彼此和/或与自适应解码系统106进行数据通信。另外或可替代地,在一些情况下,自适应编码系统104的功能可以被包括在和/或分布在一个或更多个服务器110
中。例如,一个或更多个服务器110中的第一服务器可以包括自适应编码系统104的功能的一部分,而自适应编码系统104的其他功能可以包括在一个或更多个服务器110中的第二服务器中。此外,在一些实施例中,自适应编码系统104的一些或全部功能可以被包括在云计算系统或架构中,并且可以作为可以被自适应解码系统106所请求的服务来提供。
在实现中,自适应解码系统106可以是客户端设备112的一部分,例如,客户端设备112的软件和/或硬件组件。在某些情况下,自适应解码系统106可以包括客户端设备112。
客户端设备112可以被实现为多种计算设备中的任何一种,包括但不限于台式计算机、笔记本或便携式计算机、手持设备、上网本、互联网设备、平板电脑或平板电脑计算机、移动设备(例如,移动电话、个人数字助理、智能电话等)等,或其组合。
网络108可以是无线或有线网络或其组合。网络108可以是彼此互连并且用作单个大型网络(例如,互联网或内联网)的单个网络的集合。这样的单个网络的示例包括但不限于电话网络、电缆网络、局域网(LAN)、广域网(WAN)、和城域网(MAN)。此外,单个网络可以是无线或有线网络,或它们的组合。有线网络可以包括电载波连接(例如通信电缆等)和/或光载波或连接(例如光纤连接等)。无线网络可以包括例如WiFi网络、其他射频网络(例如,
Figure BDA0002564139000000061
Zigbee等)等。
在实现中,用户可能想要使用客户端设备112提供的浏览器或视频流应用程序观看视频。响应于接收到来自用户的命令,浏览器或视频流应用程序可以从与自适应编码系统关联的一或更多个服务器110请求视频,并将从一个或更多个服务器110(或自适应编码系统104)接收的视频序列的视频帧的编码数据转发到自适应解码系统106,以进行解码和重建视频帧以在客户端设备112的显示器中呈现。
示例性自适应编码系统
图2更详细地示出了自适应编码系统104。在实施中,自适应编码系统104可以包括但不限于一个或更多个处理单元202、存储器204、和程序数据206。在实施中,自适应编码系统104可以进一步包括网络接口208和输入/输出接口210。另外或可替代地,可以使用ASIC(即,专用集成电路)、FPGA(即,现场可编程门阵列)或自适应编码系统104中提供的其他硬件来实现自适应编码系统104的一些或全部功能。
在实施中,一个或更多个处理单元202被配置为执行从网络接口208接收的、从输入/输出接口210接收的和/或存储在存储器204中的指令。在实施中,一个或更多个处理单元202可以被实现为一个或更多个硬件处理器,包括例如微处理器、专用指令集处理器、图形处理单元、物理处理单元(PPU)、中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器等。另外或可替代地,本文描述的功能可以至少部分地由一个或更多个硬件逻辑组件执行。例如但不限于,可以使用的说明性类型的硬件逻辑组件包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、系统级片上系统(SOC)、复杂的可编程逻辑设备(CPLD)等。
存储器204可以包括易失性存储器形式的计算机可读介质,例如随机存取存储器(RAM),和/或非易失性存储器,例如只读存储器(ROM)或闪存RAM。存储器204是计算机可读介质的示例。
计算机可读介质可以包括易失性或非易失性类型,可移动或不可移动介质,其可以使用任何方法或技术来实现信息的存储。该信息可以包括计算机可读指令、数据结构、程序模块或其他数据。计算机存储介质的示例包括但不限于相变存储器(PRAM)、静态随机存取存储器(SRAM),动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电子可擦除可编程只读存储器(EEPROM)、快速闪存或其他内部存储技术、光盘只读存储器(CD-ROM)、数字通用光盘(DVD)或其他光学存储器、磁盒磁带、磁盘存储或其他磁存储设备、或任何其他非传输介质,以上可用于存储可由计算设备访问的信息。如本文所定义,计算机可读介质不包括瞬态介质,诸如调制的数据信号和载波。
尽管在该示例中,在自适应编码系统104中仅描述了硬件组件,但是在其他情况下,自适应编码系统104还可以包括诸如编码器212、待编码帧缓存214、待发送帧缓存216和/或其他软件组件(例如程序单元),以执行存储在存储器204中的用于执行例如编码、压缩、视频帧的传输等的各种操作的指令。
示例自适应解码系统
图3更详细地示出了包括自适应解码编码系统106的客户端设备112。在实施中,自适应解码系统106可以包括但不限于一个或更多个处理单元302、存储器304和程序数据306。另外,自适应解码系统106可以进一步包括接收帧缓存308、解码器310,参考帧缓存312和一个或更多个缩放器314。接收帧缓存308被配置为接收和存储表示要被解码的一个或更多个视频帧的比特流或编码数据,所述视频帧接收自客户端设备112、一个或更多个服务器110和/或自适应编码系统104。参考帧缓存308被配置为存储已经由解码器310重建的视频帧,并且用作用于解码后续视频帧的参考帧。在一些实施方式中,自适应解码系统106可以进一步包括网络接口316和输入/输出接口318。另外或替代地,可以使用ASIC(即,专用集成电路)、FPGA(即现场可编程门阵列)或自适应解码系统106中提供的其他硬件来实现自适应解码系统106的一些或全部功能。
在实施方式中,一个或更多个处理单元302被配置为执行从网络接口316接收的指令、从输入/输出接口318接收的指令和/或存储在存储器304中的指令。在实施中,一个或更多个处理单元302可以被实现为一个或更多个硬件处理器,包括例如微处理器、专用指令集处理器、图形处理单元、物理处理单元(PPU)、中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器等。另外或可替代地,本文描述的功能可以至少部分地由一个或更多个硬件逻辑组件执行。例如但不限于,可以使用的说明性类型的硬件逻辑组件包括现场可编程门阵列(FPGA)专用集成电路(ASIC),专用标准产品(ASSP),系统级片上系统(SOC),复杂的可编程逻辑设备(CPLD)等。
存储器304可以包括易失性存储器形式的计算机可读介质,例如随机存取存储器(RAM),和/或非易失性存储器,例如只读存储器(ROM)或闪存RAM。存储器304是如以上描述中所描述的计算机可读介质的示例。
示例方法
图4是描述自适应视频编码的示例方法的示意图。图5是描绘自适应视频解码的实例方法的示意图。可以但不是必须在图1的环境中并使用图2和/或图3的方法来实现图4和图5所示的方法。为了便于解释,参考图4至图5描述了方法400和500。然而,方法400和500可以可替代地在其他环境中和/或使用其他系统来实现。
所述方法400和500在计算机可执行指令的一般上下文中描述。通常,计算机可执行指令可以包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、过程、模块、功能等。此外,每个示例方法被示为表示可以以硬件、软件、固件或其组合来实现的操作序列的逻辑流程图中的框的集合。描述的方法的顺序不旨在被理解为限制,并且可以以任何顺序组合任意数量的所描述的方法框以实现该方法或替代方法。另外,在不脱离本文描述的主题的精神和范围的情况下,可以从方法中省略单个框。在软件的上下文中,框代表计算机指令,当由一个或更多个处理器执行时,计算机指令执行所列举的操作。在硬件的上下文中,一些或所有框可以表示执行所列举的操作的专用集成电路(ASIC)或其他物理组件。
返回参考图4,在框402,自适应编码系统104可以获得要发送的视频。在实施中,自适应编码系统104可以直接从客户端设备112接收对视频的请求,从一个或更多个服务器110获得视频,例如,与包括所请求的视频的一个或更多个服务器110相关联的视频集合。并将请求的视频放置在待编码帧缓存214中。在一些实施方式中,自适应视频编码系统104可以从客户端设备112直接接收对视频的请求,从一个或更多个服务器110(例如,与一个或更多个包含被请求视频的服务器相关联的视频集合)获取被请求视频,并将所请求视频放置于待编码帧缓存214中。在一些实现中,一个或更多个服务器110可以从客户端设备112接收视频请求,从视频集合获取所请求的视频,并将所请求的视频放入自适应编码系统104的待编码帧缓冲器214中。在实现中,所请求的视频可以被划分为一个或多个视频序列,其中每个视频包括用于传输的多个视频帧。
在框404处,自适应编码系统104可以从待编码帧缓存214获得视频序列,确定视频序列的分辨率,通过编码器212对视频序列的序列头进行编码,以及将视频序列的序列头发送给客户端设备112或自适应解码系统106。
在实现中,自适应编码系统104可以基于诸如网络带宽、业务量等的网络条件来确定视频序列的分辨率。在实施中,所确定的分辨率可以是视频序列中所有视频帧的最大分辨率。在实施中,序列头可以包括但不限于所确定的分辨率的信息、用于调整视频序列的帧的大小(如果需要调整大小)的调整大小(例如,上采样或下采样)滤波器系数等。
在框406处,自适应编码系统104可以使用视频帧(仅)的图像数据来对视频帧(例如,帧内编码的帧)进行编码,而无需使用视频序列的任何其他视频帧的图像数据,并将帧内编码帧的编码数据发送到例如客户端设备112或自适应解码系统106。
在实施中,自适应编码系统104可以例如使用常规的帧内编码方法通过编码器212对帧内编码的帧进行编码,并将帧内编码的帧的编码数据放置在待发送帧缓存216,该编码数据被发送到客户端设备112或自适应解码系统106。
在框408处,自适应编码系统104可使用视频序列的其他帧的信息(例如,图像数据、运动矢量等)对视频帧(例如,帧间编码的帧)进行编码。
在实施中,自适应编码系统104可以使用常规帧间编码方法通过编码器212对帧间编码的帧进行编码。
在框410中,自适应编码系统104可以检测网络条件的变化(例如,网络带宽的变化或业务量的变化等)。例如,自适应编码系统104可以检测到网络带宽减少或增加,或者业务量增加或减少。
在框412处,响应于检测到改变,自适应编码系统104可以确定将被编码和发送的视频序列的后续帧(例如,另一帧间编码的帧)的新分辨率。
在实施中,如果网络带宽减小或业务量增加,则自适应编码系统104可以确定需要降低将被编码和发送的视频序列的后续帧的分辨率。例如降低到多个预定分辨率之一。可替代地,如果网络带宽增加或业务量减少,则自适应编码系统104可以确定需要增加将被编码和发送的视频序列的后续帧的分辨率,例如,增加到多个预定分辨率中的一个,并且直到包括后续帧的视频序列的序列头中指示的最大分辨率。
在框414处,自适应编码系统104可使用常规帧间编码方法,基于一个或更多个先前帧通过编码器212对后续帧(例如,另一帧间编码帧)进行编码,以获得后续帧的编码数据。在实施中,编码的数据可以包括但不限于运动矢量、预测误差等。
在框416处,自适应编码系统104可以重新缩放编码数据的信息以将后续帧的大小(例如,如果要降低分辨率,则采用降采样,或者如果要提高分辨率,则升采样)从原始分辨率调整到新分辨率。
在实施中,自适应编码系统104可以根据后续帧的原始分辨率与新分辨率之间的关系来重新缩放例如包括在编码数据中的运动矢量和预测器。在实施中,自适应编码系统104可以进一步包括调整(例如,上采样或下采样)滤波器系数的大小,该滤波器系数用于将后续帧的分辨率改变至后续帧的帧头或编码数据的数据头。在这种情况下,用于对先前编码的帧进行大小调整或采样的滤波器可以用作滤波器预测器,并且当对当前帧的滤波器进行编码时可以应用预测编码。
在框418处,自适应编码系统104可以将调整大小的后续帧的编码数据放置到待发送帧缓存216中,然后将其发送到客户端设备112或自适应解码系统106。
在框420处,取决于下一视频帧是帧内编码帧还是帧间编码帧,自适应编码系统106可以根据上述某些方法框的操作继续处理待编码帧缓存214中的下一视频帧。
尽管上述方法框被描述为以特定顺序执行,但是在一些实施方式中,一些或所有方法框可以以其他顺序或并行地执行。例如,自适应编码系统104可以使用编码器212对当前视频帧进行编码,同时将放置在待发送帧缓存216中的先前视频帧的编码数据发送到客户端设备112或自适应解码系统106。
参照图5,在框502,自适应解码系统106在接收帧缓存308中接收一个或更多个帧的比特流或编码数据。
在实施中,自适应解码系统106可以从一个或更多个服务器110或自适应编码系统104接收一个或更多个帧的比特流或编码数据,并且将一个或更多个帧的比特流或编码数据放置在接收帧缓存308中。在一些实施中,客户端设备112可以在用户对视频的请求被发送到一个或更多个服务器110或自适应编码系统104之后,从一个或更多个服务器110或自适应编码系统104接收一个或更多个帧的比特流或编码数据。并将一个或更多个帧的比特流或编码数据放置在自适应解码系统106的接收帧缓存308中。
在框504处,自适应解码系统106可从接收帧缓存308获取或抓取表示第一帧的编码数据,并将表示第一帧的编码数据发送至解码器310以用于解码以重建第一帧。
取决于第一帧的类型,表示第一帧的编码数据可以包括但不限于编码图像数据、运动矢量、和/或预测误差。在实施中,表示第一帧的编码数据还可以包括其他相关数据,诸如头数据、过滤数据等。作为示例而非限制,视频帧的类型可以包括(仅)使用视频帧的图像数据编码的视频帧,而不使用在所述视频帧(例如,帧内编码帧)之前和/或之后的任何其他视频帧的图像数据,可以包括使用在所述视频帧(例如,帧间编码的帧)之前和/或之后的其它视频帧的信息(例如,图像数据、运动矢量)编码的视频帧。
在框506处,自适应解码系统106可基于第一帧的帧头(或代表第一帧编码数据的数据头)中指示的帧类型来确定第一帧是帧内编码帧还是帧间编码帧。
在框508处,响应于确定第一帧是帧内编码帧,自适应解码系统106可以根据用于视频序列的帧内编码方法,使用解码器310对表示第一帧的编码数据进行解码以重建第一帧。
在框510处,自适应解码系统106可将重建的第一帧存储在参考帧缓存312中,以被后续视频帧用作参考帧。
在框512处,自适应解码系统106可将重建的第一帧提供给客户端设备112的显示器以呈现给用户。
在框514,响应于确定第一帧是帧间编码的帧,自适应解码系统106可以获得或确定第一帧的第一分辨率的信息。
在实施方式中,自适应解码系统106可以基于在第一帧的头部(或代表第一帧的编码数据的数据头)中标识或指示的相对分辨率(例如,诸如1/2,1/4,1/2k,或n/m的比率,其中k,n和m为正整数),以及包括在第一帧视频序列的序列头中标识或指示的最大分辨率,获得或确定第一帧的第一分辨率的信息。
在框516处,自适应解码系统106可确定第一帧的第一分辨率是否与第二分辨率相同(例如,用作重建第一帧的参考帧的一个或更多个第二帧的分辨率)。
在实施中,一个或更多个第二帧在第一帧之前被接收并且当前被存储在参考帧缓存312中。在实施中,取决于自适应解码系统106采用的编码模式,参考帧缓存312可以包括或存储在接收第一帧的编码数据之前由自适应解码系统106接收的参考帧的不同类型或分辨率。
在实施方式中,自适应解码系统106可以被配置为三种不同编码模式中的一种或多种以支持自适应分辨率改变。根据第一编码模式,如果接收和重建的当前视频帧具有与先前视频帧不同的分辨率(例如,较低的分辨率),则始终对当前视频帧进行大小调整(例如,上采样),以便调整大小后的视频帧具有与先前视频帧相同的分辨率,并存储在参考帧缓存312中。
根据第二编码模式,将原始分辨率的当前视频帧直接存储在参考帧缓存312中。此外,如果当前视频帧的原始分辨率与后续或未来视频帧的分辨率不同,当前帧用作后续视频帧中任何一个的参考帧(例如,当前视频帧的原始分辨率低于后续视频帧的分辨率),调整当前视频帧的大小(例如,上采样)并且,调整大小后的视频帧也存储在参考帧缓存312中。在实施中,如果使用第二编码模式,则自适应解码系统106可以确定后续视频帧的分辨率,并调整当前视频帧的大小,以响应于确定当前视频帧的原始分辨率不同于(例如,低于)后续视频帧的分辨率,并且将当前帧用作后续视频帧中任何一个的参考帧。
根据第三编码模式,关于当前视频帧是否具有和先前视频帧相同的分辨率,将接收到并重建的当前视频帧存储在参考帧缓存312中,并且不调整当前视频帧的大小并将其存储在参考帧缓存中。
在框518处,响应于确定第一帧的第一分辨率与第二分辨率(例如,一个或更多个第二帧的分辨率)相同,自适应解码系统106可以基于一个或更多个第二帧中的至少一些数据,使用解码器310解码表示第一帧的编码数据,以重建第一帧。
在实现中,一个或更多个第二帧的至少一些数据可以包括但不限于帧间预测器(或运动预测器)、运动矢量、一个或更多个第二帧的图像数据。例如,自适应解码系统106可以调整帧间预测器的大小和/或缩放在一个或更多个第二帧的帧间预测中使用的运动矢量,并且基于调整后大小的预测器和/或缩放的运动矢量使用解码器310对表示第一帧的编码。另外或替代地,自适应解码系统106可基于一个或更多个第二帧的图像数据对表示第一帧的编码数据进行解码。在一些实施方案中,自适应解码系统106可基于经调整大小的预测器和/或经缩放的运动向量来解码经编码的数据,而无需使用一个或更多个第二帧的其他数据。
在框520处,响应于确定第一帧的第一分辨率不同于(例如,低于或高于)一个或更多个第二帧的第二分辨率,自适应解码系统106可以使用一个或更多个缩放器314中的第一缩放器调整(例如,上采样或下采样)一个或更多个第二帧的大小以从第二分辨率改变为第一分辨率,调整帧间预测器,和/或缩放与一个或更多个第二帧相关的运动矢量。
在框522处,自适应解码系统106可以基于一个或更多个调整大小的第二帧和/或缩放的运动矢量,使用解码器310对表示第一帧的编码数据进行解码以重建第一帧。在实施方式中,解码器310可以采用传统的解码和重建方法,以基于一个或更多个调整大小的第二帧和/或缩放后的运动矢量来解码和重建第一帧。
在框524处,自适应解码系统106可以确定使用哪种编码模式。
如在前面的描述中所描述的,自适应解码系统106可以被配置有三种不同编码模式中的一个或更多个以支持自适应分辨率改变。自适应解码系统106然后可以确定当前针对第一帧和/或包括第一帧的视频序列使用哪种编码模式。可替代地,自适应解码系统106可以被配置为具有三种不同的编码模式之一作为默认编码模式。在这种情况下,自适应解码系统106不需要执行使用哪种编码模式的确定步骤,即,可以跳过框524。
在框526处,取决于自适应解码系统106当前采用的编码模式,自适应解码系统106可以使用一个或更多个缩放器314中的第二缩放器,可选择调整第一分辨率的第一帧的大小,以从一个分辨率改变为一个或更多个第二帧的第二分辨率。
在实施中,视频序列的序列头和/或第一帧的帧头可包括用于调整大小的滤波器系数(例如,上采样或下采样滤波器系数),该滤波器系数用于将第一帧从原始分辨率(例如,第二分辨率或视频序列的序列头中指示的最大分辨率)调整到第一分辨率。在这种情况下,自适应解码系统106可以基于调整大小的滤波器系数将第一帧的大小从第一分辨率调整为第二分辨率或视频序列的序列头中指示的最大分辨率。
在框528处,自适应解码系统106可基于自适应解码系统的编码模式将第一分辨率的第一帧和调整大小的第二分辨率的第一帧中的一个或更多个存储到参考帧缓存312中。
在实施方式中,如果使用第一编码模式,则自适应解码系统106(总是)将调整后的第二分辨率的第一帧存储到参考帧缓存312中。在实施中,如果使用第二编码模式,则自适应解码系统106将第一分辨率的第一帧存储到参考帧缓存312中,并且如果第一帧的第一分辨率不同于(例如,低于)后续帧的分辨率,则存储调整大小的第一帧,并将所述第一帧用作后续视频帧的任何一帧的参考帧。在实施中,如果使用第二编码模式,则自适应解码系统106可以在确定是否调整第一帧的大小并存储调整后的第一帧时,确定第一帧的第一分辨率是否与后续帧的分辨率相同。在确定第一帧的第一分辨率不同于(例如,低于)后续帧的分辨率并且第一帧被用作后续视频帧中的任何一帧的参考帧时,自适应解码系统106可以调整第一帧的大小并将调整大小后的第一帧存储到参考帧缓冲区312中。在实施中,如果使用第三编码模式,则自适应解码系统106将(仅)第一分辨率的第一帧存储到参考帧中缓存312。
在框530处,自适应解码系统106可以将第一帧提供给客户端设备112以呈现在客户端设备112的显示器中。
在实施方式中,如果第一帧的第一分辨率小于视频序列的序列头中表明的最大分辨率或小于客户端设备112的显示器的期望分辨率或默认分辨率,则自适应解码系统106可以首先使用一个或更多个缩放器314的第三缩放器将第一帧的尺寸从第一分辨率调整为客户端设备112的显示器的最大分辨率或期望的或默认分辨率,然后将调整大小的第一帧提供给客户端设备112的显示器以呈现给用户。
在实施中,第三缩放器可以与第二缩放器相同或不同,即,可以使用或者可以不使用与第二缩放器不同的缩放或采样方法。例如,第三缩放器可以使用比第二缩放器更复杂的缩放或采样方法。在实施中,第二调整器可以使用简单的、零相位可分离的下采样和/或上采样滤波器,并且第三缩放器可以使用双边或更复杂的滤波器来将(例如,上采样)重建的第一帧的大小调整为最大分辨率,或客户端设备112的显示器默认或指定的分辨率。
在实施中,由在参考帧缓存312中的第二缩放器产生的缩放或采样结果的至少一子集可以与和第三缩放器相关联的显示缓存共享。具体地,例如,由于第二缩放器和第三缩放器使用的相似采样方法,第二缩放器和第三缩放器的一些结果可以相同。这有助于高效地存储结果,并加快第二缩放器和第三缩放器的采样过程。
替代地,如果第一帧的第一分辨率与视频序列的序列头中指示的最大分辨率或客户端设备112的显示器的期望的(或默认的)分辨率相同,则自适应解码系统106可以简单地将第一帧提供给客户端设备112的显示器以呈现给用户。
在框532处,自适应解码系统106可以从接收帧缓存308获得或抓取另一帧(例如第三帧)的编码数据,并且对相应的第三帧执行以上方法框的操作(例如框504-530)。
尽管上述方法块被描述为以特定顺序执行,但是在一些实施中,一些或所有方法框可以以其他顺序或并行地执行。作为示例而非限制,解码器310和一个或更多个缩放器314可以同时操作。例如,自适应解码系统106可以使用解码器310解码视频帧,同时从接收帧缓存308中获取另一视频帧并确定另一视频帧的类型。对于另一示例,自适应解码系统106可以执行由解码器310重建的视频帧的存储,同时将在其之前接收的另一重建的视频帧提供给客户端设备112以呈现给用户。
本文描述的任何方法的任何动作可至少部分地由处理器或其他电子设备基于存储在一个或更多个计算机可读介质上的指令来实现。作为示例而非限制,本文所描述的任何方法的任何动作可在配置有可执行指令的一个或多个处理器的控制下实现,该可执行指令可存储在一个或多个计算机可读介质上。
尽管已经以特定于结构特征和/或方法动作的语言描述了实施方式,但是应当理解,权利要求并非必须限于所描述的特定特征或动作。相反,所公开的特定特征和动作为实现所要求保护的主题的示例性形式。另外地或可替代地,操作中的一些或全部可以由一个或更多个ASICS,FPGA或其他硬件来实现。
使用以下条款可以进一步理解本公开。
条款1:由一个或更多个计算设备实现的方法,该方法包括:接收表示第一分辨率的第一帧的编码数据;解码所述编码数据以获得第一帧;将所述第一帧从第一分辨率调整为第二分辨率;将调整后的第二分辨率的第一帧的大小存储在参考帧缓存中。
条款2:根据条款1的方法,其中解码所述编码数据以获得第一帧是基于本地存储在参考帧缓存中的第二分辨率的第二帧。
条款3:根据条款2的方法,其中所述第二帧是紧接在第一帧之前接收的视频序列的帧。
条款4:根据条款1所述的方法,还包括调整第一帧的大小以进行显示。
条款5:根据条款1所述的方法,其中解码所述编码数据以获得第一帧是基于相对于在第一帧之前接收的第二帧的一个或更多个运动预测块。
条款6:根据条款1所述的方法,该方法还包括:接收表示第三分辨率的第三帧的其他编码数据;以及至少基于调整后的第二分辨率的第一帧,对所述其他编码数据进行解码以获得第三帧。
条款7:根据条款1所述的方法,还包括:至少部分地基于第一帧的帧头中的特定字段,获得第一帧的第一分辨率的信息。
条款8:根据条款7所述的方法,其中,获得第一帧的第一分辨率的信息还基于包括第一帧的视频序列的帧头中的另一字段。
条款9:一个或更多个计算机可读介质,其存储有可执行指令,该可执行指令在由一个或更多个处理器执行时使所述一个或更多个处理器执行包括如下的动作:通过网络接收表示第一帧的编码数据;解码所述编码数据以获得第一帧;将第一分辨率的所述第一帧存储在参考帧缓存中;确定所述第一帧的第一分辨率是否低于第二分辨率;响应于确定所述第一分辨率不等于所述第二分辨率,将第一帧从第一分辨率自适应地调整至第二分辨率,并将调整后的第二分辨率的第一帧存储到所述参考帧缓存中。
条款10:根据条款9所述的一个或更多个计算机可读介质,其中,解码所述编码数据以获得第一帧是基于相对于所述第一帧之前所接收的第二帧的一个或更多个运动预测块。
条款11:根据条款9的一个或更多个计算机可读介质,所述动作还包括调整第一帧的大小以进行显示。
条款12:条款9的一个或更多个计算机可读介质,所述动作还包括:接收表示第三分辨率的第三帧的其他编码数据;以及使用调整后的第二分辨率的第一帧或第一分辨率的第一帧中的一个对所述其他编码数据进行解码以获得第三帧。
条款13:根据条款9的一个或更多个计算机可读介质,所述动作还包括:至少部分地基于所述第一帧的头中的特定字段来获得第一帧的第一分辨率的信息。
条款14:根据条款13的一个或更多个计算机可读介质,其中,获得所述第一帧的第一分辨率的信息还基于包括第一帧的视频序列的头部中的另一个字段。
条款15:一种系统,包括:一个或更多个处理器;存储器,其存储可执行指令,当所述可执行指令由所述一个或更多个处理器执行时,使所述所述一个或更多个处理器执行包括如下的动作:接收表示第一分辨率的第一帧的编码数据;确定所述第一帧的第一分辨率是否等于第二帧的第二分辨率;响应于所述第一帧的第一分辨率不等于所述第二帧的第二分辨率,调整与所述第二帧相关联的预测器的大小和/或缩放与所述第二帧相关联的运动矢量;至少部分地基于调整大小的预测器和/或缩放后的运动矢量,对编码数据进行解码以获得第一帧;将第一分辨率的第一帧存储到参考帧缓存中。
条款16:条款15的系统,其中,所述动作还包括调整第一帧的大小以进行显示。
条款17:根据条款15的系统,其中所述第一帧通过网络远程接收,并且所述第二帧在所述参考帧缓存中本地存储。
条款18:根据条款15所述的系统,其中,所述动作还包括:接收表示第三分辨率的第三帧的其他编码数据;以及至少部分地基于所述第一帧,对所述其他编码数据进行解码以获得所述第三帧。
条款19:根据条款15所述的系统,其中,所述动作还包括:至少部分地基于所述第一帧的帧头中的特定字段来获得所述第一帧的第一分辨率的信息。
条款20:根据条款19所述的系统,其中,获得所述第一帧的第一分辨率的信息还基于包括所述第一帧的视频序列的头部中的另一字段。

Claims (20)

1.一种由一个或更多个计算设备实现的方法,该方法包括:
接收表示第一分辨率的第一帧的编码数据;
解码所述编码数据以获得所述第一帧;
将所述第一帧从第一分辨率调整为第二分辨率;和
将调整后的第二分辨率的第一帧存储在参考帧缓存中。
2.根据权利要求1所述的方法,其中,解码所述编码数据以获得所述第一帧是基于在所述参考帧缓存中本地存储的所述第二分辨率的第二帧。
3.根据权利要求2所述的方法,其中,所述第二帧是紧接在所述第一帧之前接收的视频序列的帧。
4.根据权利要求1所述的方法,其进一步包含调整所述第一帧的大小以供显示。
5.根据权利要求1所述的方法,其中,解码所述编码数据以获得所述第一帧是基于相对于在所述第一帧之前接收的第二帧的一个或更多个运动预测块。
6.根据权利要求1所述的方法,还包括:
接收表示第三分辨率的第三帧的其他编码数据;和
至少基于调整后的第二分辨率的第一帧,对所述其他编码数据进行解码以获得第三帧。
7.根据权利要求1所述的方法,其进一步包含至少部分基于所述第一帧的头部中的特定字段获得所述第一帧的所述第一分辨率的信息。
8.根据权利要求7所述的方法,其中,获得所述第一帧的第一分辨率的信息还基于包括所述第一帧的视频序列的头部中的另一个字段。
9.一个或更多个计算机可读介质,其存储有可执行指令,所述可执行指令由一个或更多个处理器执行时,使所述一个或更多个处理器执行以下动作:
接收表示第一帧的编码数据;
解码所述编码数据以获得第一帧;
将第一分辨率的所述第一帧存储在参考帧缓存中;
确定所述第一帧的第一分辨率是否等于第二分辨率;和
响应于确定所述第一分辨率不等于所述第二分辨率,将所述第一帧从所述第一分辨率自适应地调整为所述第二分辨率,并将调整后的第二分辨率的第一帧存储到参考帧缓存中。
10.根据权利要求9所述的一个或更多个计算机可读介质,其中,解码所述编码数据以获得第一帧基于相对于在所述第一帧之前接收的第二帧的一个或更多个运动预测块。
11.根据权利要求9所述的一个或更多个计算机可读介质,所述动作还包括调整所述第一帧的大小以进行显示。
12.根据权利要求9所述的一种或多种计算机可读介质,所述动作还包括:
接收表示第三分辨率的第三帧的其他编码数据;和
使用调整后的第二分辨率的第一帧或第一分辨率的第一帧中的一个对所述其它编码数据进行解码以获得第三帧。
13.根据权利要求9所述的一个或更多个计算机可读介质,所述动作还包括至少部分地基于所述第一帧的帧头中的特定字段来获得所述第一帧的第一分辨率的信息。
14.根据权利要求13所述的一个或更多个计算机可读介质,其中,获得所述第一帧的第一分辨率的信息还基于包括所述第一帧的视频序列的头部中的另一字段。
15.一种系统,包括:
一个或更多个处理器;
存储器,所述存储器存储有可执行指令,当所述可执行指令由所述一个或更多个处理器执行时,使所述一个或更多个处理器执行包括如下的动作:
接收表示第一分辨率的第一帧的编码数据;
确定所述第一帧的第一分辨率是否等于第二帧的第二分辨率;
响应于所述第一帧的第一分辨率不等于所述第二帧的第二分辨率,调整与所述第二帧相关联的预测器的大小和/或缩放与所述第二帧相关联的运动矢量;
至少部分地基于调整后的预测器和/或调整后的运动矢量,解码所述编码数据以获得第一帧;和
将第一分辨率的第一帧存储到参考帧缓存中。
16.根据权利要求15所述的系统,其中,所述动作还包括调整所述第一帧的大小以进行显示。
17.根据权利要求15所述的系统,其中,所述第一帧通过网络远程接收,并且所述第二帧在所述参考帧缓存中本地存储。
18.根据权利要求15所述的系统,其中,所述动作还包括:
接收表示第三分辨率的第三帧的其他编码数据;和
至少部分地基于所述第一帧对所述其他编码数据进行解码以获得第三帧。
19.根据权利要求15所述的系统,其中,所述动作还包括:至少部分地基于所述第一帧的帧头中的特定字段来获得所述第一帧的所述第一分辨率的信息。
20.根据权利要求19所述的系统,其中,获得所述第一帧的第一分辨率的信息还基于包括所述第一帧的视频序列的头部中的另一个字段。
CN201980007185.XA 2019-03-01 2019-03-01 分辨率自适应视频编码 Pending CN111886864A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/076701 WO2020177015A1 (en) 2019-03-01 2019-03-01 Adaptive resolution video coding

Publications (1)

Publication Number Publication Date
CN111886864A true CN111886864A (zh) 2020-11-03

Family

ID=72336882

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980007185.XA Pending CN111886864A (zh) 2019-03-01 2019-03-01 分辨率自适应视频编码

Country Status (5)

Country Link
US (1) US20210392349A1 (zh)
EP (1) EP3777170A4 (zh)
JP (1) JP7374137B2 (zh)
CN (1) CN111886864A (zh)
WO (1) WO2020177015A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115297291A (zh) * 2022-08-04 2022-11-04 阿波罗智联(北京)科技有限公司 数据处理方法、装置、电子设备、介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11863786B2 (en) * 2021-05-21 2024-01-02 Varjo Technologies Oy Method of transporting a framebuffer
CN113422983B (zh) * 2021-08-24 2021-11-23 腾讯科技(深圳)有限公司 数据处理方法、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1926873A (zh) * 2004-03-04 2007-03-07 三星电子株式会社 用于视频流传输业务的视频编码和解码方法及系统
US20170013233A1 (en) * 2015-07-08 2017-01-12 Google Inc. Single-stream transmission method for multi-user video conferencing
CN107493477A (zh) * 2016-06-10 2017-12-19 Arm有限公司 视频数据处理系统
CN108495130A (zh) * 2017-03-21 2018-09-04 腾讯科技(深圳)有限公司 视频编码、解码方法和装置、终端、服务器和存储介质
CN108781291A (zh) * 2016-01-25 2018-11-09 皇家Kpn公司 空间可缩放视频编码
CN108848376A (zh) * 2018-06-20 2018-11-20 腾讯科技(深圳)有限公司 视频编码、解码方法、装置和计算机设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3822821B2 (ja) * 2001-12-11 2006-09-20 株式会社日立製作所 画像再生表示装置
CN101990091B (zh) * 2009-08-05 2012-10-03 宏碁股份有限公司 视频图像传送方法、系统、视频编码装置及视频解码装置
US9237355B2 (en) * 2010-02-19 2016-01-12 Qualcomm Incorporated Adaptive motion resolution for video coding
US9451284B2 (en) * 2011-10-10 2016-09-20 Qualcomm Incorporated Efficient signaling of reference picture sets
MY201898A (en) * 2012-09-27 2024-03-22 Dolby Laboratories Licensing Corp Inter-layer reference picture processing for coding-standard scalability
US20160080771A1 (en) * 2014-09-17 2016-03-17 Mediatek Inc. Motion compensation apparatus having at least one processing circuit shared by normal mode and resized reference frame mode and related motion compensation method
US20160323600A1 (en) * 2015-04-30 2016-11-03 Zhan Ma Methods and Apparatus for Use of Adaptive Prediction Resolution in Video Coding
EP3185556A1 (en) * 2015-12-21 2017-06-28 Thomson Licensing Method and apparatus for combined adaptive resolution and internal bit-depth increase coding
US10652532B2 (en) * 2016-07-06 2020-05-12 Agora Lab, Inc. Method and apparatus for reference frame management for video communication
KR102393736B1 (ko) * 2017-04-04 2022-05-04 한국전자통신연구원 영상 부호화 및 복호화 장치
KR102295520B1 (ko) * 2017-08-22 2021-08-27 구글 엘엘씨 비디오 코딩에서 모션 보상 예측을 위한 광흐름 추정
CN108769681B (zh) * 2018-06-20 2022-06-10 腾讯科技(深圳)有限公司 视频编码、解码方法、装置、计算机设备和存储介质
US11290734B2 (en) * 2019-01-02 2022-03-29 Tencent America LLC Adaptive picture resolution rescaling for inter-prediction and display
EP3906677A4 (en) * 2019-01-02 2022-10-19 Nokia Technologies Oy DEVICE, METHOD AND COMPUTER PROGRAM FOR VIDEO ENCODING AND DECODING

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1926873A (zh) * 2004-03-04 2007-03-07 三星电子株式会社 用于视频流传输业务的视频编码和解码方法及系统
US20170013233A1 (en) * 2015-07-08 2017-01-12 Google Inc. Single-stream transmission method for multi-user video conferencing
CN108781291A (zh) * 2016-01-25 2018-11-09 皇家Kpn公司 空间可缩放视频编码
CN107493477A (zh) * 2016-06-10 2017-12-19 Arm有限公司 视频数据处理系统
CN108495130A (zh) * 2017-03-21 2018-09-04 腾讯科技(深圳)有限公司 视频编码、解码方法和装置、终端、服务器和存储介质
CN108848376A (zh) * 2018-06-20 2018-11-20 腾讯科技(深圳)有限公司 视频编码、解码方法、装置和计算机设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115297291A (zh) * 2022-08-04 2022-11-04 阿波罗智联(北京)科技有限公司 数据处理方法、装置、电子设备、介质

Also Published As

Publication number Publication date
EP3777170A4 (en) 2021-11-10
US20210392349A1 (en) 2021-12-16
EP3777170A1 (en) 2021-02-17
WO2020177015A1 (en) 2020-09-10
JP2022531032A (ja) 2022-07-06
JP7374137B2 (ja) 2023-11-06

Similar Documents

Publication Publication Date Title
CN108833916B (zh) 视频编码、解码方法、装置、存储介质和计算机设备
CN108495130B (zh) 视频编码、解码方法和装置、终端、服务器和存储介质
KR100664929B1 (ko) 다 계층 기반의 비디오 코더에서 모션 벡터를 효율적으로압축하는 방법 및 장치
WO2019242491A1 (zh) 视频编码、解码方法、装置、计算机设备和存储介质
CN108769681B (zh) 视频编码、解码方法、装置、计算机设备和存储介质
CN110049336B (zh) 视频编码方法和视频解码方法
CN111886864A (zh) 分辨率自适应视频编码
US10506249B2 (en) Segmentation-based parameterized motion models
CN112954398B (zh) 编码方法、解码方法、装置、存储介质及电子设备
WO2023000179A1 (zh) 视频超分辨网络及视频超分辨、编解码处理方法、装置
WO2018090367A1 (en) Method and system of video coding with reduced supporting data sideband buffer usage
US20220239939A1 (en) Temporal Prediction Shifting for Scalable Video Coding
AU2018250308B2 (en) Video compression using down-sampling patterns in two phases
CN116582685A (zh) 一种基于ai的分级残差编码方法、装置、设备和存储介质
CN111464812B (zh) 编码解码的方法、系统、装置、存储介质及处理器
CN116233453B (zh) 一种视频编码方法及装置
CN113747242B (zh) 图像处理方法、装置、电子设备及存储介质
WO2021072694A1 (en) Adaptive resolution coding based on machine learning model
JP2024512914A (ja) マシンビジョンのためのビデオ符号化のための方法および装置
KR20060069227A (ko) 영상신호의 엔코딩/디코딩시에 영상블록을 위한 모션벡터를베이스 레이어 픽처의 모션벡터로부터 유도하는 방법 및장치
US11436699B1 (en) Predicting encoding parameters for convex hull video encoding
KR20060059770A (ko) 영상신호의 엔코딩/디코딩시에 영상블록을 위한 모션벡터를베이스 레이어 픽처의 모션벡터로부터 유도하는 방법 및장치
CN116708793B (zh) 视频的传输方法、装置、设备及存储介质
CN117119190A (zh) 视频处理方法、装置、电子设备和存储介质
WO2023187388A1 (en) Frame buffer usage during a decoding process

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