CN102461169B - 基于运动的动态分辨率多比特率视频编码 - Google Patents

基于运动的动态分辨率多比特率视频编码 Download PDF

Info

Publication number
CN102461169B
CN102461169B CN201080026388.2A CN201080026388A CN102461169B CN 102461169 B CN102461169 B CN 102461169B CN 201080026388 A CN201080026388 A CN 201080026388A CN 102461169 B CN102461169 B CN 102461169B
Authority
CN
China
Prior art keywords
video
resolution
quantization step
motion vector
coding
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
Application number
CN201080026388.2A
Other languages
English (en)
Other versions
CN102461169A (zh
Inventor
陈淳中
詹钧维
S·斯皮尔斯
何亚明
F·福尔塔
顾创
K·W·霍
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN102461169A publication Critical patent/CN102461169A/zh
Application granted granted Critical
Publication of CN102461169B publication Critical patent/CN102461169B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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/124Quantisation
    • 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/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/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/142Detection of scene cut or scene change
    • 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/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • 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/177Methods 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 group of pictures [GOP]
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • H04N19/194Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive involving only two passes
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/57Motion estimation characterised by a search window with variable size or shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/164Feedback from the receiver or from the transmission channel
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种视频编码***使用准许已编码的分辨率至少部分地基于运动复杂性而变化的方法来编码用于多比特率视频流传输的视频流。视频编码***动态地决定多比特率视频流的段的编码分辨率,该编码分辨率随着视频复杂性变化而变化,以便实现用于多比特率流传输的更好的可视体验。在作出分辨率决定时,可以与空间复杂性分开地或与空间复杂性一起考虑运动复杂性。

Description

基于运动的动态分辨率多比特率视频编码
背景
随着通过诸如因特网之类的网络播放流传输音频和视频越来越流行,需要优化从服务器传输到客户机的数据,以使得即使回放期间的网络条件不一致,也能最大化客户机的体验。优化客户机的体验涉及选择用于编码视频回放的音频和视频部分的质量级别,以使得视频可以被不中断地传输和重构,而同时维持视频内容的质量。
质量级别一般是由为输入流的已编码的音频或视频部分指定的比特率规定的。较高的比特率一般指示编码和保留了关于原始音频或视频的较大信息量,因此,在视频回放期间将呈现原始输入音频或视频的更准确的再现。相反,较低的比特率指示编码和保留了关于原始输入音频或视频的较少信息,如此,在视频回放期间将呈现原始音频或视频的较不准确的再现。
一般而言,基于若干因素,指定用于编码音频和视频中的每一个的比特率。第一因素是服务器和客户机之间的网络条件。可以传输大量数据的网络连接指示可以为随后通过该网络连接传输的输入视频指定较高的比特率。第二因素是期望的启动等待时间。启动等待时间是由于必须接收、处理和缓冲的大量数据而首次启动时视频回放工具体验的延迟。第三因素是对假信号的容差。假信号是由于数据丢失而导致视频回放必须停止的情况。在大多数情况下,任何量的启动等待时间或假信号都是无法忍受的,因此,期望优化指定的比特率,以便最小化或消除启动等待时间和假信号。
当前可用的商业流传输媒体***依赖于多比特率(MBR)编码来执行编码速率控制。在MBR编码中,源视频内容以不同的编码速率被编码为替换的比特流,并通常存储在服务器处的同一媒体文件中。这允许根据变化的网络条件通常使用段之间的比特流切换且以对应于不同的编码速率的变化的质量级别,来以段或块对内容进行流传输。
当前可用的多比特率视频流传输***使用恒定比特率方法来编码每一个替换的视频流。然而,典型的视频一般将包括具有各种可视复杂性的场景。然而,恒定比特率方法不能以不同的质量来有效地编码视频段。恒定比特率方法不必要地花费太多的比特用于编码低复杂性视频段,相反,高复杂性场景被分配太少的比特。因此,编码替换的流的恒定比特率方法导致不期望且不一致的用于因特网流传输的视频质量。
当前可用的多比特率视频流传输***还具有使最终显示分辨率被固定的进一步的要求。通过维持固定的显示分辨率,多比特率的视频流可以全部被解码,并被缩放到此同一最终显示分辨率,以便实现无假信号的视频呈现。利用固定显示分辨率,各种替换的视频流可以具有从每秒几兆比特到每秒几千比特的范围广泛的比特率。一个问题是将适当的视频分辨率与每一个视频流比特率匹配。当前可用的多比特率视频流传输***使用预先定义的编码分辨率,该分辨率可能也不非常适合于视频场景的变化的复杂性(例如,细节和/或运动)。
概述
下面的具体实施方式涉及用于基于运动的动态分辨率多比特率视频编码的技术(通过方法、设备、和***实现),这些技术旨在更好地使用对每一个比特率可用的比特,以便实现一般而言较高质量的视频。
根据此处所描述的一种技术,基于运动的动态分辨率多比特率视频编码器动态地改变已编码的视频的视频分辨率。视频编码器在分辨率调整大小的决定中考虑视频内容的运动复杂性(例如,在每组图像(GOP)的基础上)。为带有较少(较慢)运动的视频内容选择较高分辨率,而为带有较多(较快)运动的视频内容选择较低的分辨率。通过在视频编码期间分析运动矢量(例如,运动矢量幅度),来确定运动复杂性。
根据此处所描述的另一种技术,基于运动的动态分辨率多比特率视频编码器基于运动复杂性和纹理复杂性来动态地改变已编码的视频的视频分辨率。多比特率视频编码器为具有较少纹理复杂性和较少运动复杂性的图像组选择较高视频分辨率,而为具有较高纹理复杂性和较高运动复杂性的图像组分配较低的分辨率。此动态分辨率方法可允许多比特率视频编码器为给定比特率取得一般而言更好的视频质量。
对于每一个比特率,视频编码器基于场景的视频内容(可以包括一组或多组图像)来动态地决定分辨率,以便取得更好的可视质量。
提供本概述以便以简化形式介绍将在以下的具体实施方式中进一步描述的一些概念。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。通过下面的结合附图对本发明的各实施例进行的详细描述,本发明的附加特征和优点将变得更加显而易见。
附图简述
图1是以可变比特率提供视频的分段的流传输的视频流传输***的框图。
图2是图1的视频流传输***的用于以变化的比特率对流进行编码的视频编码器的一般化实现的框图。
图3是多比特率视频编码***的处理流程图,该***使用图2的通过图1的***进行流传输的视频编码器,来对编码视频应用可变比特率方法和动态分辨率方法。
图4是供动态分辨率选择的三点采样法中使用的、示例流的分辨率、量化步长和编码长度之间的关系图。
图5是由多比特率视频编码***进行动态分辨率决定的处理流程图。
图6描绘了由多比特率视频编码***作出的运动复杂性分辨率决定的示例处理流程图。
图7描绘了示例运动调整大小的比例图。
图8是由多比特率视频编码***使用基于运动的动态分辨率来编码的视频段的可视表示。
图9是可以用来实现各种所描述的实施例的一般化操作环境的框图。
具体实施方式
下面的具体实施方式涉及用于使用基于运动的动态分辨率进行视频编码以便以多比特率产生用于流传输的视频流的各种技术和***。虽然是在应用到多比特率流传输应用的上下文中来描述这些技术的,但是,这些技术也可以更广泛地应用于其他视频编码应用。
此处所描述的各种技术和工具可以独立地使用。一些技术和工具可以组合地使用。下面将参考处理动作的流程图来描述各种技术。流程图所示出的各种处理动作可以被合并为较少的动作或分离成更多的动作。为简单起见,特定流程图所示出的动作与在别处所描述的动作的关系常常未示出。在很多情况下,流程图中的动作可以被重新排序。
I.多比特率视频流传输
图1描绘了用于对索引的视频流文件中所包含的多媒体内容的分段流传输的***100的一般化框图。索引的文件一般将多媒体节目的视频分割为多个流传输段,并包含表示各种比特率的视频段的许多已压缩的比特流。虽然MBR视频流被描述为分开的编码的流,但是,替换实现可以使MBR视频流的某些或全部作为带有多个编码层的一个经编码的压缩视频流来编码。在***100中,服务器110(例如,诸如标准HTTP服务器之类的服务器计算机***)通过网络130(例如,因特网)将多媒体内容提供到客户机120(例如,诸如膝上型计算机或台式计算机之类的客户机计算机***,或诸如PDA或移动电话之类的另一种类型的计算设备)。在***100中,服务器110将节目存储在索引的文件中。客户机120包括客户机侧的速率控制软件和/或硬件。
在一个具体示例实现中,服务器110是没有除为文件服务的能力以外的任何专用流传输功能的标准HTTP服务器。由于服务器110不支持任何专用比特率选择功能,因此,客户机120必须执行所有比特率选择活动。在此实现中,客户机120执行所有比特率选择活动。例如,客户机120可以使用从服务器110获得的索引信息(例如,单独或与诸如客户机缓冲信息、网络带宽等等之类的其他信息相结合)来执行速率控制。然而,在其他实现中,可以在服务器处发生速率控制功能中的某些或全部。
一般而言,用于多比特率流传输的索引的文件可以被标准HTTP服务器用来以多比特率服务于多媒体内容,比特率选择(速率控制)在客户机侧执行(例如,排他地在客户机侧)。客户机可以通过首先从服务器获得描述可用于流传输节目的段的各种比特率的索引信息来执行速率控制。基于索引信息,可能,还有其他信息(例如,网络带宽、缓冲信息等等),客户机可以决定要从服务器下载哪些比特率流传输段,以提供期望的用户体验(例如,基于可用的比特率和当前网络条件,可能的最佳用户体验)。
其他类型的计算设备(例如,除传统的HTTP服务器以外)可以使用索引的文件来提供文件。例如,计算设备(例如,个人计算机、服务器计算机或专用的流传输媒体服务器)可以使用索引的文件布局,使用各种文件服务协议(例如,文件传输协议(FTP)、超文本传输协议(HTTP)、实时流传输协议(RTSP)、MMS(Microsoft媒体服务)等等),来服务于多媒体内容。
为了支持比特率切换,节目被分成称为“流传输段”的时间块(自包含的单元)。服务器以一种或多种比特率存储每一个流传输段(例如,每一个流传输段—比特率组合是分开的流传输段编码)。每一个流传输段对于一个节目的特定轨道(例如,诸如英语音轨之类的特定音轨,或特定视频轨)都包括一个或多个可用的比特率编码。然后,客户机从可用的比特率(例如,从可用的流传输段编码)确定要为每一个流传输段下载哪个比特率。例如,客户机可以获取以250Kb/sec(千比特每秒)编码的视频轨的第一流传输段(从第一流传输段的一个或多个可用的流传输段编码),以500Kb/sec编码的视频轨的第二流传输段(从第二流传输段的一个或多个可用的流传输段编码),以及以1Mb/sec(兆比特每秒)编码的视频轨的第三流传输段(从第三流传输段的一个或多个可用流传输段编码)。在所示出的流传输***100中,索引的文件中所包含的每一个流传输段被视频编码器以可变比特率(VBR)和可变分辨率来编码,如下面所描述的。
II.视频编码器概览
图2描绘了可以用于对视频编码用于多比特率视频流传输的视频编码器200的一个示例。视频编码器200具有用于接收视频内容的“原始”(未经压缩的)帧以及该视频内容的先前计算出的运动信息的输入端210,220。然后,视频编码器对视频内容的参考帧执行帧内编码,并使用运动信息来对该视频内容的预测的帧执行帧间编码。可以根据诸如Windows媒体视频格式、SMPTE 421-M格式、MPEG-x格式(例如,MPEG-1、MPEG-2或MPEG-4)、H.26x格式(例如,H.261、H.262、H.263或H.264),或其他格式之类的已知视频编码标准来执行编码。然而,在帧间编码的情况下,视频编码器可以选择使用用于对预测的帧的帧间编码的预先计算出的运动信息,而并非对于帧执行其自己的运动估计。视频编码器将视频内容编码为作为输出230提供的压缩比特流。视频编码器也可以输出运动信息,它将该运动信息用于将输入视频内容帧间压缩为运动信息输出240(诸如用于对较低比特率的视频流编码用于多比特率视频流传输)。
图2是示出了用于使用可变比特率和可变分辨率编码来为多比特率视频流传输***100产生多比特率视频流的视频编码器200的一个示例的合适实现的一般化框图。视频编码器200接收视频图像(帧)序列作为其原始视频内容输入210,并产生压缩比特流230作为输出。
视频编码器200处理视频图像。术语“图像”一般是指源、编码的或重构的图像数据。对于逐行扫描视频,图像是逐行扫描视频帧。对于隔行扫描视频,取决于上下文,图像可以是指隔行扫描视频帧、上半帧、或下半帧。
视频编码器200压缩输入视频的帧间编码的、预测的图像和输入视频的帧内编码的图像。为了演示,图2示出了用于通过编码器200的帧内编码的帧的路径和用于帧间编码的预测的帧的路径。许多视频编码器200的组件被用于压缩帧内编码的内容和帧间编码的预测的内容。通过那些组件执行的确切操作可以取决于正在被压缩的信息的类型而变化。
一般而言,在视频编码器200内,帧间编码的预测的帧(作为图像)根据先前重构的内容(作为一个或多个其他图像,这些图像通常被称为参考图像或锚)的预测来表示。例如,在一给定时间的内容被编码为逐行扫描的P帧或B帧、隔行扫描P半帧或B半帧、或隔行扫描的P帧或B帧。在视频编码器200内,预测残余是预测的信息和对应的帧内编码的帧之间的差异。
基于运动信息,路径间(inter-path)上的输入视频110内容被编码为预测的图像。如果满足某些条件,则视频编码器100使用来自输入120的预先计算出的运动信息(如选择开关256所示),该信息可以对于宏块的运动矢量的集合或序列、或相对于一个或多个参考图像的路径间视频图像的其他样本集。一般而言,使用预先计算出的运动信息的选择可以基于:首先,预先计算出的运动信息的可用性;其次,哪些编码参数从运动信息的先前计算中改变且编码参数是否从运动信息的先前计算中改变、以及这些参数是否用于对视频内容的当前编码。在一个示例中,如果先前计算出的运动信息是为利用与视频编码器当前正在编码所采用的不同的视频分辨率来编码视频内容而计算的,则视频编码器将选择不使用来自输入130的该先前计算出的运动信息。
然而,视频编码器100可以改为选择(同样由选择开关256示出)利用运动估计器258来对于路径间视频内容110执行新运动估计。运动估计器258估计宏块或视频图像的其他样本集相对于一个或多个参考图像的运动,参考图像表示先前编码的视频内容帧的重构。图像存储264缓存此重构的视频内容266作为一个或多个参考图像。当使用多个参考图像时,这多个参考图像可以来自于不同的时间方向或相同的时间方向。运动估计器258输出诸如运动矢量信息之类的运动信息260。
当形成经运动补偿的当前图像268时,运动补偿器262将运动矢量应用到某些重构的视频内容266(存为参考图像)。在经运动补偿的图像268的块和原始路径间视频图像的对应的块之间的差异(如果有的话)是该块的预测残余270。在稍后对路径间视频帧的重构过程中(例如,在视频解码器处),重构的预测残余被添加到经运动补偿的残余视频268,以获得更接近于原始路径间视频256的重构的内容。然而,在有损压缩中,一些信息仍会从原始路径间视频中丢失。可另选地,运动估计器和运动补偿器应用另一种类型的运动估计/补偿。
频率变换器280将空间域视频信息转换为频率域(即频谱变换)数据。对于基于块的视频内容,频率变换器280对样本块或预测残余数据应用DCT、DCT的变体、或其他前向块变换,从而产生频率变换系数块。频率变换器280可以应用8×8,8×4,4×8,4×4或其他大小的频率变换。
然后,量化器282然后量化变换系数块。量化器282以逐图像地、逐宏块地或其他方式空间变化的步长对频谱数据应用非均匀的标量量化。另外,在某些情况下,量化器在层间残余视频图像的颜色通道之间改变量化。量化器282还可以应用另一种类型的量化,例如,对于至少某些频谱数据系数应用均匀或自适应量化,或在不使用频率变换的编码器***中直接量化空间域数据。
当需要重构的视频内容用于随后的对路径间视频图像的运动估计/补偿时,逆量化器290对已量化的频谱数据系数执行逆量化。逆频率变换器292执行逆频率转换,从而产生重构的预测残余的块(对于预测的路径间残余视频内容)或样本(对于路径内(intra-path)残余视频内容)。如果残余视频内容256是经运动补偿预测的,则将重构的预测残余添加到经运动补偿的预测器268,以形成重构的残余视频。图像存储264缓存重构的残余视频,用于随后的经运动补偿的预测。
熵编码器284压缩量化器282的输出以及某些辅助信息(例如,量化参数值)。典型的熵编码技术包括算术编码、差分编码、霍夫曼编码、行程长度编码、LZ编码、字典式编码,和以上的组合。熵编码器284通常针对不同种类的信息使用不同的编码技术,并可以从特定编码技术内的多个代码表中选择。
当视频编码器240对路径内视频内容执行帧内压缩时,编码器把它帧内压缩为帧内编码的图像,没有运动补偿。视频256被直接提供到频率变换器280、量化器282以及熵编码器284,并作为编码视频输出。帧内编码的视频的重构版本可以被缓存,以用于随后的对其他路径间视频的运动补偿。
控制器294接收来自诸如运动估计器258、频率变换器280、量化器282、逆量化器290和熵编码器284之类的各种模块的输入。控制器294评估编码过程中的中间结果,例如,设置量化步长和执行速率—失真分析。控制器294与其他模块一起协作,以设置和改变编码过程中的编码参数。当控制器294评估不同的编码参数选择时,控制器294可以反复执行某些阶段以评估不同的参数设置,或者控制器294可以联合地评估不同的编码参数。要评估的编码参数判决的树以及对应的编码的定时取决于实现。在某些实施例中,控制器294还从编码会话向导界面、其他编码器应用接口、或其他源接收输入,以使用特定规则来指定要编码的视频。
III.对MBR流的可变比特率编码
对于多比特率视频流传输***100(图1),多比特率视频编码***使用依次递减的总比特率单独地将输入视频编码为经压缩视频流的组。虽然此处是作为编码单独的各MBR视频流来描述的,但是,MBR视频流传输***和编码***的替换实现可以将MBR视频流中的一个或多个编码为具有多个可分开的编码层的压缩比特流。多比特率视频编码***包括MBR编码引擎(未示出),该引擎驱动视频编码器200(图2),以根据多比特率编码过程(如图3所示)利用变化的编码参数来编码输入视频,编码过程实现可变比特率和在本部分以及下面的部分所描述的基于运动的动态分辨率方法。MBR编码引擎可以提供用户界面或控制台,用于接收用户输入以配置用于MBR视频流编码的参数(或者可另选地,提供应用程序编程接口以从调用应用程序接收这样的输入),诸如流的数量,及下文所提及的其他参数。
与其他当前可用的多比特率视频流传输***(使用恒定比特率方法来编码多个视频流)不同,多比特率视频流传输***100的MBR编码***旨在为每一个视频流提供恒定的或一致的质量。对于顶部MBR视频流(一般而言,具有最高的总比特率),视频编码器200利用被约束低于指定的高峰比特率而同时满足指定的平均比特率的变化比特率来编码视频流。对于底部MBR流(一般而言,具有集合的最低的比特率),视频编码器使用恒定块速率方法。在多比特率视频流传输***的上下文中,术语“块”是指视频流被分段的一组图像(GOP),并定义视频流传输***可以在视频流之间切换播放各个段的粒度级。恒定块速率方法使视频流传输***能够保证流传输的可预测性,因为当最低比特率或质量视频流被流传输时,客户机将以恒定速率接收图像的块量,以便保持最小的连续播放视频的质量。
在最低和最高总比特率流之间,视频编码器还在旨在保持恒定视频质量的高峰比特率和平均比特率的约束内使用编码的可变比特率来编码一个或多个中间视频流。可以指定中间视频流的高峰和平均比特率约束,以便以成比例的、对数或其他缩小方式逐渐地缩小。例如,中间流的平均比特率可以成比例地缩小到最高比特率视频流的平均比特率约束的3/4、1/2和1/4。以此方式,视频流传输***100能够提供从保证的低恒定块速率切换到最高质量可变速率比特流的瞬时开始和快速视频。高峰和平均比特率以及恒定块速率是可以由用户来配置的编码参数。这些参数可以由用户显式地配置,或者由MBR编码***引擎基于由用户输入的更一般化的参数来计算。例如,MBR编码引擎可以具有自动模式,在该模式下,用户(或调用应用程序)只是指定最小和最大目标比特率和多个视频流或层。然后,此自动模式下的引擎计算均匀、对数或其他分布空间的所有中间比特率约束(高峰和平均)。
现在参考图3,MBR编码***利用使用两遍编码方法的过程300来编码MBR视频流的组。此过程包括分析遍和编码遍。分析遍的目标是基于编码配置以及输入视频源材料本身来发现视频内容的场景复杂性(空间和/或运动复杂性)。一旦在分析遍提取了此信息,下面的编码遍就生成MBR视频流的组。
MBR编码过程300从初始化步骤310开始。在此步骤中,MBR编码过程从用户输入确定用于编码的参数,包括MBR视频流的数量、流的高峰和平均比特率约束,以及最低质量MBR视频流的恒定块速率,运动搜索范围参数,以及段参数,等等。
MBR编码过程300的分析遍包括动作311-314。在分析遍,MBR编码引擎逐帧来分析输入源视频帧。分析包括多个不同的任务,包括场景变化检测,将场景变化边界之间的视频序列分段为图像段的组,以及视频帧复杂性测量(例如,空间和/或运动复杂性)。基于场景变化检测,MBR编码引擎标记在视频中发生场景变化的边界。在视频序列的被标记的边界之间(序列标记内和序列标记外位置),MBR编码过程300进一步确定在用户指定的约束内划分视频序列的图像段的组的总数(如指定的平均GOP长度和场景内的最大允许的GOP长度),并设置每一组图像的边界。一旦定义了GOP边界,由MBR编码引擎来计算每一GOP内的帧的总数。MBR编码引擎计算用于下一节中所描述的可变分辨率编码的每一组图像的每一帧的一组三个纹理测量。三个纹理测量包括帧全局纹理、帧水平纹理和帧垂直纹理测量。MBR编码引擎还计算用于下一节中所描述的可变分辨率编码的每一组图像的每一帧的运动矢量的幅度的中值。在特定实现中,运动矢量的幅度是运动矢量的x和y分量的绝对值的总和。同样,在特定实现中,为GOP中的每一预测的(例如,P和/或B)帧来计算中值。
MBR引擎将这些分析遍结果(场景和GOP边界、纹理测量以及运动矢量测量)写入到日志文件中,如动作314所示出的。在特定实现中,MBR引擎计算每一GOP的平均中值运动矢量值(从GOP的帧的中值运动矢量幅度值),并将平均中值运动矢量值存储在日志文件中。
对于编码遍(动作315-324),MBR引擎应用分析遍的结果,以使用视频编码器200来编码MBR视频流(图2)。MBR引擎导致视频编码器200编码所有MBR流(动作318)的每一段(动作317)。对于MBR视频流的每一段,MBR编码引擎控制视频编码器200的编码参数,以尝试达到用户指定的平均比特率的目标。如果源视频内容太复杂而难以以目标比特率编码,则MBR编码引擎开始提高量化步长,以便实现更好的可视质量。顶部或最好质量视频流是服从满足用户指定的MBR编码参数的最大高峰比特率约束下编码的。对于底部或最低质量视频流,MBR引擎控制视频编码器以产生满足恒定块速率约束的对视频流的编码,这有助于用于播放流传播视频的客户机侧的可预测性。在中间视频流中,MBR引擎导致视频编码器利用编码参数来编码源视频,以产生落入相应的中间流的最大高峰和平均比特率约束内的可变比特率的视频流。
作为编码遍的结果,MBR引擎然后输出使用视频编码器所产生的MBR流组的压缩视频比特流,以及日志文件。利用此MBR编码过程300的可变比特率方法,MBR引擎产生对于每一GOP从顶部到底部质量流均匀地降低的一组MBR视频流。利用此组MBR视频流,MBR***100(图1)可以根据可用的连接带宽,为视频序列提供期望的恒定或一致的可视质量。
IV.对MBR流的可变分辨率编码
MBR编码引擎还应用动态地改变对于MBR视频流中的每一个进行编码的分辨率的技术。对于从MBR视频流中的顶部到底部的每一个视频流,MBR编码引擎动态地决定用于编码每一视频GOP的分辨率以产生更好的可视质量。对于每一个视频流,MBR编码引擎给低空间复杂性GOP(或段)分配较高分辨率,而给在空间上更复杂的GOP(或段)分配低的编码分辨率。除空间复杂性之外或代替空间复杂性,当动态地改变分辨率时,可以考虑运动复杂性。具体而言,对于带有显著的运动的GOP(或段),可以降低分辨率。
编码带有快速运动场景的视频内容对于视频编码器可能是有挑战的。例如,在某些情况下,运动估计例程不能跟踪快速运动场景,因为在决定运动搜索范围时的限制和/或试探。如果运动搜索范围太小(或先退出),则运动估计例程可以生成不准确的运动矢量。不准确的运动矢量进而生成大的错误信号。为了满足目标比特率,编码器可以通过提高量化参数来补偿大的错误信号。最终结果是带有高的区块效应(blockiness)的帧。另一方面,如果运动搜索范围太大,则运动估计例程可以消耗高百分比的编码时间。这会导致长编码而增益很少(因为快速运动场景通常在屏幕上模糊地飞过)。另外,不准确运动矢量可以导致对象的不连贯的运动。属于对象的宏块可以被分配不连贯的运动矢量。这导致在帧中相同对象的块在看起来随机的方向移动。
MBR编码引擎可以利用视频内容中的运动复杂性来调谐速率控制机制。此方法可使MBR编码引擎在带有运动的场景中调整分辨率的大小。例如,可以通过计算视频图像(例如,在预测的图像中,如P和/或B图像)中的运动矢量的幅度的中值,来确定视频内容的运动复杂性。然后,可以对一段或GOP中的图像(例如,帧)求中值的平均值(例如,对GOP中的所有P帧求平均值)。平均中值是段或GOP中的运动的量的函数,其中,较高平均中值暗示该段或GOP中的更快的感觉到的运动。
运动补偿的准确性部分地取决于运动搜索范围,其中,较大的搜索范围给出更准确的运动矢量组。在使用SMPTE 421-M视频编解码器的MBR编码引擎的特定实现中,使用自适应运动搜索范围。自适应运动搜索范围在逐帧的基础上变化,取决于内容中的运动量,从0适应到3。可另选地,运动搜索范围可以被设置为固定值(例如,用户可设置的选项)。在使用SMPTE 421-M编解码器的编码引擎的特定实现中,根据经验找出了2或更大的运动搜索范围,以得到能够指示已编码的视频内容是否包含显著的运动(例如,足以确定视频内容中存在的运动范围,从几乎没有或没有运动到快速运动)的运动矢量。
对于带有显著的运动的视频内容,降低分辨率可以提供多个编码效率/改进。例如,降低的分辨率会降低运动搜索范围,从而提高运动估计例程得出准确的运动矢量的机率,而降低的分辨率会导致编码速度提高。另外,更准确的运动矢量会产生较小的错误信号,这会导致已编码的视频流中的较小的量化参数和较少的区块效应。最后,更准确的运动矢量可允许属于同一个对象的在空间上相邻的区块以连贯的方式移动。
图8描绘了由多比特率视频编码***使用基于运动的动态分辨率编码来编码的视频段的可视表示800。在可视表示800中,描绘了两种情况:其中,以三种不同的比特率编码三个GOP(比特率1表示较高比特率,比特率3表示较低比特率)。GOP 1表示慢运动视频内容,GOP 2表示中值运动视频内容,而GOP 3表示高运动视频内容。
在810,编码三个GOP,而无需动态分辨率(即,它们全部以同样的分辨率来编码)。
在820,至少部分地使用基于运动的动态分辨率、以三种不同的比特率来编码三个GOP。在820可以看出,对于所有三个比特率,以一种分辨率编码慢运动GOP(GOP 1)(可另选地,在某些编码情况下,较低比特率编码可以按降低的分辨率)。以与GOP 1的比特率1同样的分辨率来编码比特率1的中值运动GOP(GOP 2),而以较低的(降低的)分辨率编码比特率2和比特率3。类似地,以(与对于GOP 1和2的比特率1)同样的分辨率来编码比特率1的高运动GOP(GOP 3),而以甚至更低(更为降低的)的分辨率来编码比特率2和3。在可视表示800中,通过相对应的框的大小来反映每一GOP编码的相对分辨率。
取决于特定编码情况和/或特定视频内容,与在可视表示800中所描绘的相比,可以对分辨率执行更多或更小的调整大小。
在一示例实现中,MBR编码引擎应用决定以动态地调整视频的场景边界处的每一GOP的分辨率的大小。这避免了产生在视频场景中调整视频分辨率的大小可能产生的任何不希望有的视觉效果。例如,在以“讲话头部”为特征的场景中,改变视频分辨率中场景会引入明显的凸出或脉冲,因为场景中的细节边缘和特征随着分辨率变化而锐化或软化。因此,MBR编码引擎对于场景的一个或多个GOP执行下面所描述的过程(例如,对于上文所描述的分析阶段中已标识的场景变化边界之后的第一GOP)。
在动态分辨率编码的一个示例实现中,MBR编码引擎使用三点采样法来作出动态分辨率决定。每一采样点都表示使用视频分辨率和量化步长的三个不同的对来对GOP进行编码的结果(按照实际编码的比特率或大小来表示)。利用这三个采样点结果,MBR引擎建立分辨率、量化步长和编码长度之间的关系的模型,该关系在图4中用图形方式示出。从视频序列的该动态地提取的模型,MBR编码引擎可以随后决定MBR视频流的每一个目标比特率的分辨率。在替换实现中,MBR编码引擎可以使用更多采样点来建立模型。然而,发现三采样点方法足以建立该模型,而出于编码速度目的仍是最切实可行的。
图5示出了由MBR视频编码引擎为对于每一视频流的GOP作出动态分辨率决定所执行的过程500。过程500从获取编码结果的三个样本点开始(动作510)。MBR编码引擎控制视频编码器200,以利用分辨率和量化步长的三个参数组合来对段或GOP进行编码。可以基于对于视频的期望的显示分辨率,来选择初始样本分辨率。可以根据视频编码器所使用的特定编解码器标准,来选择初始样本量化步长。例如,在SMPTE 421-M视频编解码器的情况下,可以将初始样本量化步长选为4。在视频编码器使用H.264标准的情况下,适当的初始样本量化步长可以是28。然而,可以改为选择其他初始样本量化步长和分辨率。
在所示出的模型中,MBR视频编码引擎对于初始样本分辨率和量化步长参数对(R,Qp)以及以初始样本分辨率的四分之一(即,(R/4,Qp))且以初始样本量化步长的两倍(即,(R,Qp*2))来执行编码。可另选地,可以使用对于样本点的其他参数对,如二分之一分辨率,四倍量化步长等等。MBR视频编码引擎观察通过利用三个分辨率和量化步长参数对来对视频流的GOP进行编码所得到的已编码比特大小(S1、S2,以及S3)。
在下一动作511中,MBR引擎建立两个线性模型:一个是针对量化步长和已编码大小之间的关系(在图4的图中,被标记为GraphQpS),一个是针对分辨率和已编码的大小之间的关系(GraphRS)。量化步长和已编码大小之间的关系是由已编码大小确定的,已编码大小是从两个样本点所得到的,其中,量化步长是变化的,而分辨率保持恒定,相反,分辨率和已编码大小之间的关系是从两个样本点确定的,其中,分辨率是变化的,而量化步长保持恒定。
在动作512,MBR引擎使用已编码大小与量化步长的关系来得出产生对应于期望的比特率的已编码大小的量化步长。这是应该产生对于视频流的GOP的目标比特率的、以全采样分辨率R来建模的结果量化步长(被标记为Qp′)。
然后,MBR引擎将建模的结果量化步长与根据经验确定的阈值进行比较(在很宽的视频内容范围内,从测量视频纹理的实验确定)。如果建模的结果量化步长小于阈值,那么,在动作514中,MBR引擎决定使用全采样分辨率和建模的结果量化步长,即,(R,Qp′)。
更具体而言,MBR引擎基于在输入视频内容的分析阶段(上文所讨论的)作出的每一帧纹理测量,来确定适当的量化步长阈值。MBR引擎通过对GOP中的所有帧的帧纹理测量进行平均,来计算GOP的纹理测量。这产生了GOP全局纹理、GOP水平纹理和GOP垂直纹理测量。在这些测量中,GOP全局纹理测量确定控制何时调整视频分辨率大小的量化步长阈值。从对较大范围的视频内容的实验结果(包括体育、电视、电影等等),已经确定等于12的Qp的量化步长阈值(对于利用SMPTE 421M标准来编码的视频)适用于带有典型的GOP全局纹理测量的视频。换言之,如果建模的结果量化步长Qp′超过12,则MBR编码器应该调整大小到较低的视频分辨率,以便以较低的Qp进行编码。然而,在一示例实现中,MBR编码器还可以取决于视频的总全局纹理测量来改变用于调整大小的量化步长阈值。MBR编码器已经建立了全局纹理和用于调整大小的量化步长阈值之间的线性关系。对于具有低总全局纹理的视频,预期较低的量化步长阈值。这可允许MBR编码器更积极地调低具有大量平稳区域(调整大小到较低的分辨率将不会产生伪像)的视频内容的视频分辨率。而对于带有高全局纹理的视频,MBR编码器预期较高的用于调整大小的量化步长阈值。这样的较高的阈值使得MBR编码器在调低具有大量细节的帧的视频分辨率时更小心,以便避免对那些帧的详细区域的平滑化处理。在替换实现中,可以以其他量化步长确定量化步长阈值,诸如,与其他视频编码标准一起使用,或在调整视频分辨率的大小时实现期望的积极性/警告。
另一方面,在动作515中,如果建模的结果(在上面的512中确定的建模的结果量化步长Qp′)大于由视频纹理所定义的阈值,则MBR引擎改为使用已编码的大小和分辨率之间的关系(GraphRS)来发现产生对应于视频流的目标比特率的已编码的大小的建模的结果分辨率(R′)。在特定实现中,动作515的结果是从GraphRS确定的纹理缩放因子。示例纹理缩放因子是0.8(其中,1.0是全分辨率R),指示分辨率降低为0.8*R。
另外,在516,如果建模的结果大于由视频纹理所定义的阈值(上面的动作515),那么,在分辨率调整大小的计算中还考虑运动复杂性。一般而言,对于带有高运动的视频内容(通常是模糊的),可以进一步降低分辨率,而不会显著影响质量。在特定实现中,如在图6中所描绘的,执行运动复杂性计算。
图6描绘了由多比特率视频编码***作出的基于运动的分辨率决定的示例处理流程图。在610,将平均中值运动矢量值(例如,如上文参考图3所讨论地计算出的每一GOP平均中值运动矢量值)与运动调整大小阈值“N”(平均中值运动矢量阈值)进行比较。在一些实现中,平均中值运动矢量值和阈值是归一化值(例如,从0到1)。例如,可以基于视频分辨率和运动搜索范围,线性地归一化平均中值运动矢量值。在特定实现中,通过检查一组代表性的视频剪辑来确定阈值N,并选择该阈值来区分带有很少(或没有显著的)运动的剪辑和带有低或高运动的剪辑。
在620,如果平均中值运动矢量值大于运动阈值,那么,运动调整大小比例值被确定。在特定实现中,使用运动调整大小比例映射函数来确定运动调整大小比例值。在图7中描绘了示例运动调整大小比例图700。在图7中,比例图700的x轴表示归一化(从0到1)平均中值运动矢量值(基于视频分辨率和运动搜索范围来线性地归一化),而y轴表示运动调整大小比例值(从0到1归一化)。图7中所描绘的运动调整大小比例映射函数是两块式线性函数。从归一化平均中值运动矢量值0到阈值N的视频段或GOP被视为没有显著的运动(或不是保证分辨率降低的足够的运动)。对于从阈值N和向上(到值1.0)的归一化平均中值运动矢量值,运动调整大小比例值被应用,指示分辨率的调整大小。例如,使用比例图700,大致0.9的平均中值运动矢量值指示大致0.6的运动调整大小比例值。代替分段式线性运动调整大小比例映射函数,也可以使用其他函数(例如,带有更多段的分段式线性函数、非线性函数、或对于不同类型的视频内容的不同函数)。
在特定实现中,比例图是带有五段的线性函数,第一段是从归一化平均中值运动矢量值0到阈值N的无运动段。在该特定实现中,通过确定一组代表性的视频剪辑中的最佳调整大小来获取五段式线性函数。例如,以不同的分辨率来查看剪辑,以取得区块效应对平滑化(或模糊化)。在该特定实现中,相对于块状的图像,优选稍微模糊的图像。然后,选择最佳分辨率,以便在变化运动剪辑中有很少或没有区块效应。
在630,可以通过利用运动调整大小比例值来调整纹理缩放因子(从上面的动作515所产生的),来计算最后的调整大小比例值。在特定实现中,将纹理缩放因子乘以运动调整大小缩放因子,以确定最后的调整大小比例值。例如,如果纹理缩放因子是0.8,而运动调整大小比例值是0.6(例如,从运动调整大小比例图700确定,其中,归一化平均中值MV值是0.9),那么,最后的调整大小比例值将是:0.8*0.6=0.48(大约原始分辨率的像素区域的一半)。
另一方面,在640,如果平均中值MV值不大于运动阈值,那么,不应用运动调整大小的比例值,而应用纹理缩放因子,而无需对运动复杂性的补偿。
可另选地,可以以其他方式来计算最后的调整大小比例值。例如,可以通过取纹理缩放因子和运动调整大小比例值两者中的最小,来计算最后的调整大小比例值。
在某些编码情况下,可能需要阻止过度缩放分辨率。在特定实现中,使用下限值来限制由运动复杂性计算所执行的缩放量。例如,可以限制运动调整大小比例值,或者也可以限制经调整大小的像素分辨率。可以对纹理缩放因子和/或运动调整大小比例值独立地应用最低值。另外,还可以应用最小最后的调整大小分辨率(例如,64像素的最小调整大小分辨率,水平地和/或垂直地)。
返回到图5,MBR引擎可以决定均匀地(即,相同水平和垂直分辨率缩放)或非均匀地调整分辨率的大小。在特定实现中,使用GOP平均水平和垂直纹理测量值来控制在每一个方向上对视频分辨率调整多少大小。MBR引擎计算GOP水平和垂直纹理测量的比率。一旦确定调整分辨率的大小(动作515和516),并且MBR引擎已计算出最后的调整大小比例值,则MBR引擎基于GOP水平和垂直纹理测量的比率来确定如何在垂直和水平方向上分布调整大小的量。具体而言,如果在水平和垂直纹理测量之间有大的差异或增量(即,比率是不统一),则MBR引擎如此分布该调整大小,以在较低的细节方向比在较高细节方向施加更多的调整大小。例如,当比率是2时,MBR引擎将在垂直方向上是比水平方向上调整大小的两倍。否则,如果GOP的水平和垂直纹理测量之间的增量是低的(比率接近统一),那么,MBR引擎在两个方向之间相等地调整分辨率的大小。
然后,MBR引擎在动作517中使用量化步长和已编码的大小之间的关系(GraphQpS)及分辨率和已编码的大小之间的关系(Graph RS)以及相应的视频流的目标比特率,来为特定目标比特率建立分辨率和量化步长之间的关系(图4的左上位置示出的GraphQpR)。
在动作518中,MBR引擎使用在动作517中建立的关系(GraphQpR)来查找在动作516中决定的建模的结果分辨率R′的量化步长(Qp′)的建模的结果。MBR引擎决定以建模的结果量化步长和分辨率(R′,Qp′)来编码此视频流的此GOP。
在特定实现中,使用最后的调整大小比例值来调整较低层的最后的调整大小比例值。具体而言,为顶层(最高比特率流)计算最后的调整大小比例值。然后,当为下一较低层(下一较低的比特率流)计算最后的调整大小比例值时,将它乘以顶层的最后的调整大小比例值,依次类推。例如,如果顶层GOP最后的调整大小比例值是0.9,而下一较低层GOP最后的调整大小比例值是0.8,那么,下一较低层GOP最后的调整大小比例值将被调整为:0.9*0.8=0.72。然后,将0.72值用作下一较低层的乘数,依次类推,直到计算出了最低层。在一些实现中,为每一层计算纹理比例值,而只计算一次运动比例值,并用于所有层。
可另选地,可以独立地为每一层计算最后的调整大小比例值。
通过使用此动态分辨率方法,MBR编码***能够给不太复杂的视频和/或较低的运动段(或GOP)指定较大的编码分辨率,这会维持更多的可视细节。另一方面,给比较复杂的和/或和/或较高的运动视频段(或GOP)指定降低可视伪像的较小的分辨率。此方法可以提供用于多比特率流传输的更好的可视体验。
V.代表性的计算环境
图9示出了其中可以实现所描述的实施例、技术,以及技术的合适的计算环境900的一般化示例。操作环境900不旨在对技术的使用范围或功能提出任何限制,因为技术可以在各种通用或专用计算环境中实现。例如,所公开的技术可以使用包括处理单元、存储器,以及存储了实现此处所描述的视频编码技术的计算机可执行指令的存储的计算设备(例如,计算机、手持式设备、移动设备、PDA等等)来实现。还可以利用其他计算机***配置来实现所公开的技术,包括手持式设备、多处理器***,基于微处理器的或可编程消费电子产品、网络PC、小型计算机、大型计算机,等等。所公开的技术也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
参考图9,计算环境900包括至少一个处理单元910和存储器920。对于上文所讨论的多核运动信息预计算,计算机包括具有多个CPU核的多核CPU。在图9中,此最基本配置930包括在虚线内。中央处理单元910执行计算机可执行指令,并可以是现实的或虚拟的处理器。在多处理***中,多个处理单元执行计算机可执行指令以提高处理能力,如此,多个处理器可以同时运行。存储器920可以是易失性存储器(例如,寄存器、高速缓存、RAM)、非易失性存储器(例如,ROM、EEPROM、闪存等等),或两者的某种组合。存储器920存储可以例如实现此处所描述的技术的软件980。计算环境可以具有附加特征。例如,计算环境900包括存储器940、一个或多个输入设备950、一个或多个输出设备960,以及一个或多个通信连接970。诸如总线、控制器或网络之类的互连机制(未示出)将计算环境900的组件互连在一起。通常,操作***软件(未示出)为在计算环境900中执行的其他软件提供操作环境,并协调计算环境900的各组件的活动。
存储设备940可以是可移动或不可移动的,并包括磁盘、磁带或磁带盒、CD-ROM、CD-RW、DVD,或能用于存储信息且可以在计算环境900内被访问的任何其他介质。存储设备940存储可以实现此处所描述的技术的软件980的指令。
输入设备950可以是诸如键盘、键区、鼠标、笔或轨迹球之类的触摸输入设备、语音输入设备、扫描设备、或向计算环境900提供输入的另一设备。对于音频,输入设备950可以是声卡、接受模拟或数字形式的音频输入的类似的设备,或将音频采样读取到计算环境900中的CD-ROM读取器。输出设备960可以是显示器、打印机、扬声器、CD-写入器,或从计算环境900提供输出的另一设备。
通信连接970允许通过通信介质(连接网络)与另一个计算实体进行通信。通信介质在已调数据信号中传送诸如计算机可执行指令、压缩图形信息之类的信息或其他数据。
计算机可读介质是可以在计算环境900内被访问的任何可用介质。作为示例而非限制,对于计算环境900,计算机可读介质包括存储器920和/或存储940。如应该轻松地理解的,术语“计算机可读存储介质”包括诸如存储器920和存储940之类的数据存储的介质,而不是诸如已调制数据信号之类的传输介质。
此处所描述的方法中的任何一个都可以通过包括(例如,具有或存储)用于执行(例如,导致计算设备、音频和/或视频处理设备,或计算机执行)这样的方法的计算机可执行指令的一个或多个计算机可读介质(例如,存储器或其他有形的介质)来执行。操作可以是全自动的、半自动的,或涉及人工干预。
已经在详细描述和各附图中描述和示出了本发明的原理,应认识到,在不偏离这些原理的情况下可以在安排和细节方面修改各实施例。应该理解,此处所描述的程序、进程或方法未涉及或仅限于任何特定类型的计算环境,除非另外特别声明。根据此处所描述的原理,可以使用各种类型的的通用或专门的计算环境,或执行操作。可以以硬件实现以软件示出的实施例的元件,反之亦然。
鉴于可以应用本发明的原理的许多可能的实施例,作为本发明我们声明所有这样的实施例都在下面的权利要求书以及又等效内容的范围和精神内。

Claims (14)

1.一种使用计算设备来处理用于多比特率视频流传输的分段的压缩视频流的基于运动的动态分辨率编码的输入视频的方法,所述计算设备包括处理单元和存储器,所述方法包括:
利用所述计算设备:
对一个或多个段中的输入视频内容进行编码,每一个段都包括一组或多组图像,其中,所述编码包括:
对于所述一组或多组图像中的一组图像,获取对于变化的分辨率和量化步长的至少三个编码样本(510);
为所述图像组,基于所述编码样本建立与分辨率、量化步长以及所产生的编码大小有关的模型(511);
基于所述图像组中每一帧的运动矢量的幅度的中值来为所述图像组计算平均中值运动矢量值(610);
至少部分地基于所述平均中值运动矢量值、运动阈值以及所述模型,决定视频分辨率(516)和量化步长(518);以及
利用所述已决定的视频分辨率和量化步长,对所述图像组进行编码(500)。
2.如权利要求1所述的方法,其特征在于,还包括:
对于所述图像组中的每一个P图像:
从所述P图像的所述运动矢量中,计算运动矢量幅度的中值;
其中,所述平均中值运动矢量值是所述图像组中的每一P图像的中值的平均值。
3.如权利要求1所述的方法,其特征在于,所述决定所述视频分辨率和量化步长包括:
将所述平均中值运动矢量值与所述运动阈值进行比较;
当所述平均中值运动矢量值超出所述运动阈值时,使用运动调整大小比例映射函数确定用于对所述图像组的分辨率进行调整大小的运动调整大小比例值;以及
在决定所述视频分辨率和量化步长时,使用所述运动调整大小比例值。
4.如权利要求3所述的方法,其特征在于,所述运动调整大小比例映射函数是分段式线性运动调整大小比例映射函数。
5.如权利要求1所述的方法,其特征在于,所述决定所述视频分辨率和量化步长包括:
将所述平均中值运动矢量值与所述运动阈值进行比较;
如果所述比较指示所述平均中值运动矢量值大于所述运动阈值,则基于运动复杂性来决定降低所述图像组的分辨率;以及
否则,基于运动复杂性来决定不降低所述图像组的分辨率。
6.如权利要求1所述的方法,其特征在于,还包括:
对所述图像组执行纹理测量;
基于所述纹理测量确定用于对分辨率进行调整大小的量化阈值;
确定产生对应于所述图像组的期望的比特率的已编码的大小的量化步长;
将所述已确定的量化步长与用于对分辨率进行调整大小的所述量化阈值进行比较;以及
如果所述比较指示调整分辨率的大小,则计算所述图像组的纹理缩放因子,其中,所述决定视频分辨率和量化步长进一步基于所述纹理缩放因子。
7.如权利要求6所述的方法,其特征在于,还包括:
将所述平均中值运动矢量值与所述运动阈值进行比较;以及
基于所述平均中值运动矢量值与所述运动阈值的比较,使用运动调整大小比例映射函数确定运动调整大小比例值;
其中,所述确定所述视频分辨率包括将所述运动调整大小比例值乘以所述纹理缩放因子。
8.如权利要求1所述的方法,其特征在于,还包括:
检测所述输入视频内容中的场景变化;以及
其中,所述决定视频分辨率包括在图像组之间的场景变化边界处动态地调整视频分辨率。
9.如权利要求1所述的方法,其特征在于,所述建立所述模型包括:
基于所述图像组的所述至少三个编码样本中的至少两个,建立量化步长与给定的视频分辨率的已编码大小的关系的线性模型,其中,所述已编码的大小是以给定视频分辨率和变化的量化步长来采样的。
10.一种使用计算设备来处理用于多比特率视频流传输的分段的压缩视频流的基于运动的动态分辨率编码的输入视频的***,所述计算设备包括处理单元和存储器,所述***包括:
用于利用所述计算设备对一个或多个段中的输入视频内容进行编码的装置,每一个段都包括一组或多组图像,其中所述编码包括:
对于所述一组或多组图像中的一组图像,获取对于变化的分辨率和量化步长的至少三个编码样本(510);
为所述图像组,基于所述编码样本建立与分辨率、量化步长以及所产生的编码大小有关的模型(511);
基于所述图像组中每一帧的运动矢量的幅度的中值来为所述图像组计算平均中值运动矢量值(610);
至少部分地基于所述平均中值运动矢量值、运动阈值以及所述模型,决定视频分辨率(516)和量化步长(518);以及
利用所述已决定的视频分辨率和量化步长,对所述图像组进行编码(500)。
11.一种用于对用于多比特率视频流传输的分段的压缩视频流的基于运动的动态分辨率编码的视频处理***,所述***包括:
用于存储要编码的原始视频内容的存储器(920);
用于在包括图像组的段中使用可变比特率和基于运动的动态分辨率方法来将所述原始视频内容编码为多个压缩视频流的计算机处理装置(910),其中,所述由所述计算机处理装置进行的编码包括:
对于所述一组或多组图像中的一组图像,获取对于变化的分辨率和量化步长的至少三个编码样本(510);
为所述图像组,基于所述编码样本建立与分辨率、量化步长以及所产生的编码大小有关的模型(511);
基于所述图像组中每一帧的运动矢量的幅度的中值来为所述图像组计算平均中值运动矢量值(610);
至少部分地基于所述平均中值运动矢量值、运动阈值以及所述模型,决定视频分辨率(516)和量化步长(518);以及
利用所述已确定的视频分辨率和量化步长,对所述图像组进行编码(500)。
12.如权利要求11所述的视频处理***,其特征在于,还包括:
对于所述图像组中的每一个P图像:
从所述P图像的所述运动矢量中,计算运动矢量幅度的中值;
其中,所述平均中值运动矢量值是所述图像组中的每一P图像的中值的平均值。
13.如权利要求11所述的视频处理***,其特征在于,所述决定所述视频分辨率和量化步长包括:
将所述平均中值运动矢量值与所述运动阈值进行比较;
当所述平均中值运动矢量值超出所述运动阈值时,使用运动调整大小比例映射函数确定用于对所述图像组的分辨率进行调整大小的运动调整大小比例值;以及
在决定所述视频分辨率和量化步长时,使用所述运动调整大小比例值。
14.如权利要求11所述的视频处理***,其特征在于,所述确定所述视频分辨率和量化步长包括:
将所述平均中值运动矢量值与所述运动阈值进行比较;
如果所述比较指示所述平均中值运动矢量值大于所述运动阈值,则基于运动复杂性来决定降低所述图像组的分辨率;以及
否则,基于所述运动复杂性来决定不降低所述图像组的分辨率。
CN201080026388.2A 2009-06-12 2010-06-09 基于运动的动态分辨率多比特率视频编码 Active CN102461169B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/483,577 US8270473B2 (en) 2009-06-12 2009-06-12 Motion based dynamic resolution multiple bit rate video encoding
US12/483,577 2009-06-12
PCT/US2010/037889 WO2010144521A2 (en) 2009-06-12 2010-06-09 Motion based dynamic resolution multiple bit rate video encoding

Publications (2)

Publication Number Publication Date
CN102461169A CN102461169A (zh) 2012-05-16
CN102461169B true CN102461169B (zh) 2014-10-01

Family

ID=43306431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080026388.2A Active CN102461169B (zh) 2009-06-12 2010-06-09 基于运动的动态分辨率多比特率视频编码

Country Status (6)

Country Link
US (1) US8270473B2 (zh)
EP (1) EP2441265B1 (zh)
JP (1) JP5643300B2 (zh)
KR (1) KR101744654B1 (zh)
CN (1) CN102461169B (zh)
WO (1) WO2010144521A2 (zh)

Families Citing this family (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US7515710B2 (en) 2006-03-14 2009-04-07 Divx, Inc. Federated digital rights management scheme including trusted systems
EP2223232A4 (en) 2007-11-16 2015-02-25 Sonic Ip Inc Hierarchical and reduced index structures for multimedia files
US8997161B2 (en) 2008-01-02 2015-03-31 Sonic Ip, Inc. Application enhancement tracks
WO2010080911A1 (en) 2009-01-07 2010-07-15 Divx, Inc. Singular, collective and automated creation of a media guide for online content
US8396114B2 (en) 2009-01-29 2013-03-12 Microsoft Corporation Multiple bit rate video encoding using variable bit rate and dynamic resolution for adaptive video streaming
CA2759880C (en) * 2009-03-23 2013-09-24 Azuki Systems, Inc. Method and system for efficient streaming video dynamic rate adaptation
US8781122B2 (en) 2009-12-04 2014-07-15 Sonic Ip, Inc. Elementary bitstream cryptographic material transport systems and methods
US8705616B2 (en) 2010-06-11 2014-04-22 Microsoft Corporation Parallel multiple bitrate video encoding to reduce latency and dependences between groups of pictures
US20120069895A1 (en) * 2010-09-17 2012-03-22 David Frederique Blum High Quality Video Encoder
US8997160B2 (en) * 2010-12-06 2015-03-31 Netflix, Inc. Variable bit video streams for adaptive streaming
US9247312B2 (en) 2011-01-05 2016-01-26 Sonic Ip, Inc. Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol
MX2013008755A (es) 2011-01-28 2014-01-31 Eye Io Llc Codificacion de secuencias de video basada en el tipo de escena.
CN103493481A (zh) * 2011-01-28 2014-01-01 艾艾欧有限公司 基于场景的适应性比特率控制
US9665646B1 (en) * 2011-04-13 2017-05-30 Flash Networks, Ltd Method and system for providing bit rate adaptaion to video files having metadata
US9578354B2 (en) * 2011-04-18 2017-02-21 Verizon Patent And Licensing Inc. Decoupled slicing and encoding of media content
GB2492163B (en) 2011-06-24 2018-05-02 Skype Video coding
GB2492329B (en) 2011-06-24 2018-02-28 Skype Video coding
GB2492330B (en) 2011-06-24 2017-10-18 Skype Rate-Distortion Optimization with Encoding Mode Selection
US9319453B2 (en) * 2011-07-15 2016-04-19 Shmuel Ur User-controlled download duration time
GB2493777A (en) 2011-08-19 2013-02-20 Skype Image encoding mode selection based on error propagation distortion map
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8818171B2 (en) 2011-08-30 2014-08-26 Kourosh Soroushian Systems and methods for encoding alternative streams of video for playback on playback devices having predetermined display aspect ratios and network connection maximum data rates
KR102074148B1 (ko) 2011-08-30 2020-03-17 엔엘디 엘엘씨 복수의 최대 비트레이트 레벨들을 사용하여 인코딩된 비디오를 인코딩하고 스트리밍하기 위한 시스템들 및 방법들
US9578336B2 (en) 2011-08-31 2017-02-21 Texas Instruments Incorporated Hybrid video and graphics system with automatic content detection process, and other circuits, processes, and systems
US8964977B2 (en) 2011-09-01 2015-02-24 Sonic Ip, Inc. Systems and methods for saving encoded media streamed using adaptive bitrate streaming
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
GB2495468B (en) 2011-09-02 2017-12-13 Skype Video coding
GB2495469B (en) 2011-09-02 2017-12-13 Skype Video coding
GB2495467B (en) * 2011-09-02 2017-12-13 Skype Video coding
US20150249829A1 (en) * 2011-09-15 2015-09-03 Libre Communications Inc. Method, Apparatus and Computer Program Product for Video Compression
US9591318B2 (en) 2011-09-16 2017-03-07 Microsoft Technology Licensing, Llc Multi-layer encoding and decoding
US10085023B2 (en) * 2011-10-05 2018-09-25 Texas Instruments Incorporated Systems and methods for quantization of video content
US8934538B2 (en) * 2011-10-17 2015-01-13 Google Inc. Rate-distortion-complexity optimization of video encoding
US8885702B2 (en) 2011-10-17 2014-11-11 Google Inc. Rate-distortion-complexity optimization of video encoding guided by video description length
JP5988577B2 (ja) * 2011-12-28 2016-09-07 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム
US20130179199A1 (en) 2012-01-06 2013-07-11 Rovi Corp. Systems and methods for granting access to digital content using electronic tickets and ticket tokens
US11089343B2 (en) 2012-01-11 2021-08-10 Microsoft Technology Licensing, Llc Capability advertisement, configuration and control for video coding and decoding
US9532080B2 (en) 2012-05-31 2016-12-27 Sonic Ip, Inc. Systems and methods for the reuse of encoding information in encoding alternative streams of video data
US9197685B2 (en) 2012-06-28 2015-11-24 Sonic Ip, Inc. Systems and methods for fast video startup using trick play streams
US9143812B2 (en) 2012-06-29 2015-09-22 Sonic Ip, Inc. Adaptive streaming of multimedia
US10452715B2 (en) 2012-06-30 2019-10-22 Divx, Llc Systems and methods for compressing geotagged video
US9294531B2 (en) * 2012-07-12 2016-03-22 Futurewei Technologies, Inc. Signaling and processing content with variable bitrates for adaptive streaming
WO2014015110A1 (en) 2012-07-18 2014-01-23 Verimatrix, Inc. Systems and methods for rapid content switching to provide a linear tv experience using streaming content distribution
US10536703B2 (en) * 2012-08-27 2020-01-14 Interdigital Ce Patent Holdings Method and apparatus for video quality assessment based on content complexity
US9560392B2 (en) * 2012-09-07 2017-01-31 Google Inc. Dynamic bit rate encoding
US8997254B2 (en) 2012-09-28 2015-03-31 Sonic Ip, Inc. Systems and methods for fast startup streaming of encrypted multimedia content
US8914836B2 (en) 2012-09-28 2014-12-16 Sonic Ip, Inc. Systems, methods, and computer program products for load adaptive streaming
US9967302B2 (en) * 2012-11-14 2018-05-08 Samsung Electronics Co., Ltd. Method and system for complexity adaptive streaming
US9264475B2 (en) 2012-12-31 2016-02-16 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
CN103914805A (zh) * 2013-01-04 2014-07-09 贝伦企业股份有限公司 指纹图像降阶处理装置及方法
US9357210B2 (en) 2013-02-28 2016-05-31 Sonic Ip, Inc. Systems and methods of encoding multiple video streams for adaptive bitrate streaming
US9350990B2 (en) 2013-02-28 2016-05-24 Sonic Ip, Inc. Systems and methods of encoding multiple video streams with adaptive quantization for adaptive bitrate streaming
US9906785B2 (en) 2013-03-15 2018-02-27 Sonic Ip, Inc. Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata
US10397292B2 (en) 2013-03-15 2019-08-27 Divx, Llc Systems, methods, and media for delivery of content
US10110647B2 (en) * 2013-03-28 2018-10-23 Qualcomm Incorporated Method and apparatus for altering bandwidth consumption
US9344517B2 (en) 2013-03-28 2016-05-17 Sonic Ip, Inc. Downloading and adaptive streaming of multimedia content to a device with cache assist
US9247317B2 (en) 2013-05-30 2016-01-26 Sonic Ip, Inc. Content streaming with client device trick play index
US9094737B2 (en) 2013-05-30 2015-07-28 Sonic Ip, Inc. Network video streaming with trick play based on separate trick play files
US9967305B2 (en) 2013-06-28 2018-05-08 Divx, Llc Systems, methods, and media for streaming media content
KR102085270B1 (ko) * 2013-08-12 2020-03-05 삼성전자 주식회사 가장 작은 왜곡 값을 갖는 해상도를 선택하는 이미지 처리 방법과 상기 방법을 수행하는 장치들
EP3860130A1 (en) * 2013-08-16 2021-08-04 bitmovin GmbH Apparatus and method for constant quality optimization for adaptive streaming
CN105519117A (zh) * 2013-09-06 2016-04-20 三菱电机株式会社 动态图像编码装置、动态图像转码装置、动态图像编码方法、动态图像转码方法以及动态图像流传输***
CN104519239A (zh) * 2013-09-29 2015-04-15 诺基亚公司 用于视频防抖的方法和装置
GB201318658D0 (en) 2013-10-22 2013-12-04 Microsoft Corp Controlling resolution of encoded video
US9609338B2 (en) 2013-10-25 2017-03-28 Microsoft Technology Licensing, Llc Layered video encoding and decoding
US9343112B2 (en) 2013-10-31 2016-05-17 Sonic Ip, Inc. Systems and methods for supplementing content from a server
US20150172680A1 (en) * 2013-12-16 2015-06-18 Arris Enterprises, Inc. Producing an Output Need Parameter for an Encoder
US20150189222A1 (en) * 2013-12-30 2015-07-02 Google Inc. Content-adaptive chunking for distributed transcoding
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
US10313675B1 (en) 2015-01-30 2019-06-04 Google Llc Adaptive multi-pass video encoder control
US10271112B2 (en) * 2015-03-26 2019-04-23 Carnegie Mellon University System and method for dynamic adaptive video streaming using model predictive control
KR102391680B1 (ko) * 2015-06-15 2022-04-28 엘지전자 주식회사 프레임 간 변화량을 이용한 가변 해상도 처리 장치 및 그 제어 방법
US10332534B2 (en) 2016-01-07 2019-06-25 Microsoft Technology Licensing, Llc Encoding an audio stream
US10356406B2 (en) * 2016-01-19 2019-07-16 Google Llc Real-time video encoder rate control using dynamic resolution switching
US10334224B2 (en) * 2016-02-19 2019-06-25 Alcacruz Inc. Systems and method for GPU based virtual reality video streaming server
US10075292B2 (en) 2016-03-30 2018-09-11 Divx, Llc Systems and methods for quick start-up of playback
CN105959700B (zh) * 2016-05-31 2020-04-14 腾讯科技(深圳)有限公司 视频图像编码的方法、装置、存储介质和终端设备
US10148989B2 (en) 2016-06-15 2018-12-04 Divx, Llc Systems and methods for encoding video content
US20180063549A1 (en) * 2016-08-24 2018-03-01 Ati Technologies Ulc System and method for dynamically changing resolution based on content
AU2017331736B2 (en) 2016-09-21 2022-10-27 Kakadu R & D Pty Ltd Base anchored models and inference for the compression and upsampling of video and multiview imagery
US10362241B2 (en) 2016-12-30 2019-07-23 Microsoft Technology Licensing, Llc Video stream delimiter for combined frame
US10498795B2 (en) 2017-02-17 2019-12-03 Divx, Llc Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
US10601946B2 (en) * 2017-02-23 2020-03-24 The Directv Group, Inc. Edge cache segment prefetching
WO2018216929A1 (en) 2017-05-25 2018-11-29 Samsung Electronics Co., Ltd. Methods and systems for saving data while streaming video
CN109151470B (zh) * 2017-06-28 2021-03-16 腾讯科技(深圳)有限公司 编码分辨率控制方法及终端
KR102383117B1 (ko) * 2017-07-21 2022-04-06 삼성전자주식회사 디스플레이 장치, 디스플레이 방법 및 디스플레이 시스템
CN108391127B (zh) * 2018-04-27 2021-08-10 腾讯科技(深圳)有限公司 视频编码方法、装置、存储介质及设备
CN110166781B (zh) * 2018-06-22 2022-09-13 腾讯科技(深圳)有限公司 一种视频编码方法、装置、可读介质和电子设备
US10863179B1 (en) * 2018-09-05 2020-12-08 Amazon Technologies, Inc. Overlapped rate control for high-quality segmented video encoding
CN111819846B (zh) * 2018-11-26 2024-04-16 谷歌有限责任公司 安全和跨设备一致的视频压缩的方法、***及计算机可读介质
CN110139113B (zh) * 2019-04-30 2021-05-14 腾讯科技(深圳)有限公司 视频资源的传输参数分发方法及装置
CN110677721B (zh) * 2019-09-27 2022-09-13 腾讯科技(深圳)有限公司 视频编解码方法和装置及存储介质
CN110677653B (zh) 2019-09-27 2024-01-09 腾讯科技(深圳)有限公司 视频编解码方法和装置及存储介质
CN110636312B (zh) * 2019-09-27 2023-10-24 腾讯科技(深圳)有限公司 视频编解码方法和装置及存储介质
CN110572654B (zh) * 2019-09-27 2024-03-15 腾讯科技(深圳)有限公司 视频编码、解码方法和装置、存储介质及电子装置
CN111263243B (zh) * 2020-02-17 2022-03-22 网易(杭州)网络有限公司 视频编码方法、装置、计算机可读介质及电子设备
US11445200B2 (en) * 2020-05-12 2022-09-13 Alibaba Group Holding Limited Method and system for processing video content
US11803237B2 (en) 2020-11-14 2023-10-31 Facense Ltd. Controlling an eye tracking camera according to eye movement velocity

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906949A (zh) * 2004-01-29 2007-01-31 国际商业机器公司 动态改变视频编码的分辨率的***和方法

Family Cites Families (134)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2389277A1 (fr) * 1977-04-29 1978-11-24 Ibm France Procede de quantification a allocation dynamique du taux de bits disponible, et dispositif de mise en oeuvre dudit procede
FR2412987A1 (fr) * 1977-12-23 1979-07-20 Ibm France Procede de compression de donnees relatives au signal vocal et dispositif mettant en oeuvre ledit procede
EP0064119B1 (fr) * 1981-04-30 1985-08-28 International Business Machines Corporation Perfectionnement aux procédés de codage de la voix et dispositif de mise en oeuvre du procédé perfectionné
JPH0556275A (ja) * 1990-08-30 1993-03-05 Sharp Corp 画像符号化装置及び画像復号装置
EP0631444B1 (en) * 1992-03-03 1998-12-23 Kabushiki Kaisha Toshiba Time-varying image encoder
US5436665A (en) * 1992-03-03 1995-07-25 Kabushiki Kaisha Toshiba Motion picture coding apparatus
JP3032088B2 (ja) * 1992-03-03 2000-04-10 株式会社東芝 動画像符号化装置
DE4211945C1 (zh) * 1992-04-09 1993-05-19 Institut Fuer Rundfunktechnik Gmbh, 8000 Muenchen, De
JP3508146B2 (ja) * 1992-09-11 2004-03-22 ソニー株式会社 ディジタル信号符号化復号化装置、ディジタル信号符号化装置及びディジタル信号復号化装置
JP3185413B2 (ja) * 1992-11-25 2001-07-09 ソニー株式会社 直交変換演算並びに逆直交変換演算方法及びその装置、ディジタル信号符号化及び/又は復号化装置
US5463424A (en) * 1993-08-03 1995-10-31 Dolby Laboratories Licensing Corporation Multi-channel transmitter/receiver system providing matrix-decoding compatible signals
NL9301358A (nl) * 1993-08-04 1995-03-01 Nederland Ptt Transcodeerinrichting.
JPH0795566A (ja) * 1993-09-21 1995-04-07 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法および装置
US5537440A (en) * 1994-01-07 1996-07-16 Motorola, Inc. Efficient transcoding device and method
US5515107A (en) * 1994-03-30 1996-05-07 Sigma Designs, Incorporated Method of encoding a stream of motion picture data
US5541852A (en) * 1994-04-14 1996-07-30 Motorola, Inc. Device, method and system for variable bit-rate packet video communications
JPH08102940A (ja) * 1994-09-29 1996-04-16 Sanyo Electric Co Ltd 動画像処理装置及び方法
US5617142A (en) * 1994-11-08 1997-04-01 General Instrument Corporation Of Delaware Method and apparatus for changing the compression level of a compressed digital signal
US5623424A (en) * 1995-05-08 1997-04-22 Kabushiki Kaisha Toshiba Rate-controlled digital video editing method and system which controls bit allocation of a video encoder by varying quantization levels
JPH0998427A (ja) * 1995-09-29 1997-04-08 Toshiba Corp 動画像符号化装置
US5796855A (en) * 1995-10-05 1998-08-18 Microsoft Corporation Polygon block matching method
US5835495A (en) 1995-10-11 1998-11-10 Microsoft Corporation System and method for scaleable streamed audio transmission over a network
US6957350B1 (en) * 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
JP3317327B2 (ja) * 1996-02-07 2002-08-26 日本電信電話株式会社 動画像符号化方法および装置
US5996022A (en) 1996-06-03 1999-11-30 Webtv Networks, Inc. Transcoding data in a proxy computer prior to transmitting the audio data to a client
SE515535C2 (sv) * 1996-10-25 2001-08-27 Ericsson Telefon Ab L M En transkoder
JPH10229420A (ja) * 1997-02-17 1998-08-25 Matsushita Electric Ind Co Ltd 通信システム
DE69841897D1 (de) * 1997-07-25 2010-10-28 Sony Corp Bearbeitungsanlage, bearbeitungsverfahren, spleissungsanlage, spleissungsverfahren, kodieranlage und kodierverfahren
US6192075B1 (en) * 1997-08-21 2001-02-20 Stream Machine Company Single-pass variable bit-rate control for digital video coding
EP0909094A1 (en) 1997-10-07 1999-04-14 CANAL+ Société Anonyme Multithread data processor
JPH11275592A (ja) * 1998-01-22 1999-10-08 Victor Co Of Japan Ltd 動画像符号列変換装置及びその方法
US6192154B1 (en) * 1998-01-26 2001-02-20 International Business Machines Corporation Two-pass encoding method of digital motion video sequences for constant-or variable bit rate
JPH11234668A (ja) * 1998-02-13 1999-08-27 Sony Corp 映像符号化装置
US7092441B1 (en) * 1998-03-20 2006-08-15 Stmicroelectronics Asia Pacific Pte Limited Moving pictures encoding with constant overall bit rate
US6466623B1 (en) * 1998-03-27 2002-10-15 Industrial Technology Research Institute Method and apparatus for motion estimation for high performance transcoding
JP4123567B2 (ja) * 1998-04-30 2008-07-23 ソニー株式会社 画像信号処理装置及び方法
US6859496B1 (en) * 1998-05-29 2005-02-22 International Business Machines Corporation Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel
US6249288B1 (en) * 1998-12-14 2001-06-19 Ati International Srl Multi thread display controller
US6434197B1 (en) * 1999-01-07 2002-08-13 General Instrument Corporation Multi-functional transcoder for compressed bit streams
US6259741B1 (en) * 1999-02-18 2001-07-10 General Instrument Corporation Method of architecture for converting MPEG-2 4:2:2-profile bitstreams into main-profile bitstreams
US6463414B1 (en) * 1999-04-12 2002-10-08 Conexant Systems, Inc. Conference bridge processing of speech in a packet network environment
US6370502B1 (en) * 1999-05-27 2002-04-09 America Online, Inc. Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec
US6426977B1 (en) * 1999-06-04 2002-07-30 Atlantic Aerospace Electronics Corporation System and method for applying and removing Gaussian covering functions
US7315815B1 (en) * 1999-09-22 2008-01-01 Microsoft Corporation LPC-harmonic vocoder with superframe structure
US6300973B1 (en) 2000-01-13 2001-10-09 Meir Feder Method and system for multimedia communication control
US6574279B1 (en) 2000-02-02 2003-06-03 Mitsubishi Electric Research Laboratories, Inc. Video transcoding using syntactic and semantic clues
US6522693B1 (en) * 2000-02-23 2003-02-18 International Business Machines Corporation System and method for reencoding segments of buffer constrained video streams
US6404814B1 (en) * 2000-04-28 2002-06-11 Hewlett-Packard Company Transcoding method and transcoder for transcoding a predictively-coded object-based picture signal to a predictively-coded block-based picture signal
US7206016B2 (en) * 2000-05-01 2007-04-17 Polycom, Inc. Filtering artifacts from multi-threaded video
US6650705B1 (en) 2000-05-26 2003-11-18 Mitsubishi Electric Research Laboratories Inc. Method for encoding and transcoding multiple video objects with variable temporal resolution
US6647061B1 (en) 2000-06-09 2003-11-11 General Instrument Corporation Video size conversion and transcoding from MPEG-2 to MPEG-4
KR100341063B1 (ko) * 2000-06-28 2002-06-20 송문섭 실시간 영상 통신을 위한 율제어 장치 및 그 방법
US20040125877A1 (en) * 2000-07-17 2004-07-01 Shin-Fu Chang Method and system for indexing and content-based adaptive streaming of digital video content
US6963347B1 (en) 2000-08-04 2005-11-08 Ati International, Srl Vertex data processing with multiple threads of execution
GB2366464A (en) 2000-08-14 2002-03-06 Nokia Mobile Phones Ltd Video coding using intra and inter coding on the same data
US6934334B2 (en) * 2000-10-02 2005-08-23 Kabushiki Kaisha Toshiba Method of transcoding encoded video data and apparatus which transcodes encoded video data
US7039116B1 (en) * 2000-11-07 2006-05-02 Cisco Technology, Inc. Methods and apparatus for embedding and format conversion of compressed video data
US6741648B2 (en) * 2000-11-10 2004-05-25 Nokia Corporation Apparatus, and associated method, for selecting an encoding rate by which to encode video frames of a video sequence
JP2002152752A (ja) 2000-11-13 2002-05-24 Sony Corp 画像情報変換装置及び方法
US7058127B2 (en) * 2000-12-27 2006-06-06 International Business Machines Corporation Method and system for video transcoding
US20020136298A1 (en) * 2001-01-18 2002-09-26 Chandrashekhara Anantharamu System and method for adaptive streaming of predictive coded video data
JP4203707B2 (ja) * 2001-01-31 2009-01-07 日本電気株式会社 事前解析を用いた動画像符号化装置、動画像符号化方法、及びそのプログラム。
US20040117427A1 (en) * 2001-03-16 2004-06-17 Anystream, Inc. System and method for distributing streaming media
US20030028386A1 (en) * 2001-04-02 2003-02-06 Zinser Richard L. Compressed domain universal transcoder
US6925501B2 (en) * 2001-04-17 2005-08-02 General Instrument Corporation Multi-rate transcoder for digital streams
JP4038996B2 (ja) 2001-04-27 2008-01-30 松下電器産業株式会社 信号処理装置および信号処理方法
US6757648B2 (en) * 2001-06-28 2004-06-29 Microsoft Corporation Techniques for quantization of spectral data in transcoding
JP4574090B2 (ja) * 2001-09-21 2010-11-04 三菱電機株式会社 動画データ変換装置および動画データ変換プログラム
US6504494B1 (en) * 2001-11-06 2003-01-07 Motorola, Inc. Software, method and apparatus for rate controlled image compression
US7027982B2 (en) * 2001-12-14 2006-04-11 Microsoft Corporation Quality and rate control strategy for digital audio
US7319720B2 (en) * 2002-01-28 2008-01-15 Microsoft Corporation Stereoscopic video
US7034897B2 (en) 2002-04-01 2006-04-25 Broadcom Corporation Method of operating a video decoding system
JP4193406B2 (ja) * 2002-04-16 2008-12-10 三菱電機株式会社 映像データ変換装置および映像データ変換方法
US20030206597A1 (en) 2002-04-19 2003-11-06 Droplet Technology, Inc. System, method and computer program product for image and video transcoding
JP4275358B2 (ja) 2002-06-11 2009-06-10 株式会社日立製作所 画像情報変換装置およびビットストリーム変換機ならびに画像情報変換送信方法
US7936818B2 (en) * 2002-07-01 2011-05-03 Arris Group, Inc. Efficient compression and transport of video over a network
KR100484148B1 (ko) * 2002-07-27 2005-04-18 삼성전자주식회사 개선된 비트율 제어 방법과 그 장치
US6944224B2 (en) * 2002-08-14 2005-09-13 Intervideo, Inc. Systems and methods for selecting a macroblock mode in a video encoder
US7292634B2 (en) 2002-09-24 2007-11-06 Matsushita Electric Industrial Co., Ltd. Image coding method and apparatus
US7336720B2 (en) * 2002-09-27 2008-02-26 Vanguard Software Solutions, Inc. Real-time video coding/decoding
WO2004038921A2 (en) * 2002-10-23 2004-05-06 Divxnetworks, Inc. Method and system for supercompression of compressed digital video
US6961377B2 (en) 2002-10-28 2005-11-01 Scopus Network Technologies Ltd. Transcoder system for compressed digital video bitstreams
US7318027B2 (en) * 2003-02-06 2008-01-08 Dolby Laboratories Licensing Corporation Conversion of synthesized spectral components for encoding and low-complexity transcoding
US7142601B2 (en) 2003-04-14 2006-11-28 Mitsubishi Electric Research Laboratories, Inc. Transcoding compressed videos to reducing resolution videos
JP4196726B2 (ja) * 2003-05-14 2008-12-17 ソニー株式会社 画像処理装置および画像処理方法、記録媒体、並びに、プログラム
US7391717B2 (en) 2003-06-30 2008-06-24 Microsoft Corporation Streaming of variable bit rate multimedia content
US7343291B2 (en) * 2003-07-18 2008-03-11 Microsoft Corporation Multi-pass variable bitrate media encoding
US7627039B2 (en) * 2003-09-05 2009-12-01 Realnetworks, Inc. Parallel video decoding
US7295612B2 (en) 2003-09-09 2007-11-13 Apple Inc. Determining the number of unidirectional and bidirectional motion compensated frames to be encoded for a video sequence and detecting scene cuts in the video sequence
US7535959B2 (en) * 2003-10-16 2009-05-19 Nvidia Corporation Apparatus, system, and method for video encoder rate control
US7460990B2 (en) * 2004-01-23 2008-12-02 Microsoft Corporation Efficient coding of digital media spectral data using wide-sense perceptual similarity
US7869503B2 (en) * 2004-02-06 2011-01-11 Apple Inc. Rate and quality controller for H.264/AVC video coder and scene analyzer therefor
JP4095559B2 (ja) * 2004-02-13 2008-06-04 株式会社東芝 H.264コーデックic、dvd再生装置、h.264コーデック方法
JP4072859B2 (ja) 2004-03-03 2008-04-09 Kddi株式会社 ビデオ情報再符号化装置
KR100586883B1 (ko) * 2004-03-04 2006-06-08 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩방법, 프리디코딩방법, 비디오 디코딩방법, 및 이를 위한 장치와, 이미지 필터링방법
EP1730649A2 (en) 2004-03-05 2006-12-13 Vanu, Inc. Controlling jitter effects
US20050232497A1 (en) 2004-04-15 2005-10-20 Microsoft Corporation High-fidelity transcoding
JP4729563B2 (ja) * 2004-05-12 2011-07-20 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ブロードキャスト用のスケーラブルビデオコーディング
US20060002479A1 (en) * 2004-06-22 2006-01-05 Fernandes Felix C A Decoder for H.264/AVC video
US20060114995A1 (en) * 2004-12-01 2006-06-01 Joshua Robey Method and system for high speed video encoding using parallel encoders
US7440626B2 (en) * 2004-12-02 2008-10-21 Mitsubishi Electric Research Laboratories, Inc. Image transcoding
US20060126726A1 (en) * 2004-12-10 2006-06-15 Lin Teng C Digital signal processing structure for decoding multiple video standards
US20060126744A1 (en) * 2004-12-10 2006-06-15 Liang Peng Two pass architecture for H.264 CABAC decoding process
BRPI0606627A2 (pt) * 2005-01-19 2009-07-07 Thomson Licensing método e aparelho para codificação paralela em tempo real
US7694075B1 (en) * 2005-03-09 2010-04-06 Globalfoundries Inc. System for enabling and disabling cache and a method thereof
RU2402885C2 (ru) * 2005-03-10 2010-10-27 Квэлкомм Инкорпорейтед Классификация контента для обработки мультимедийных данных
US20060215754A1 (en) * 2005-03-24 2006-09-28 Intel Corporation Method and apparatus for performing video decoding in a multi-thread environment
US7920633B2 (en) 2005-04-22 2011-04-05 Broadcom Corporation Method and system for parallel processing video data
US8902989B2 (en) 2005-04-27 2014-12-02 Broadcom Corporation Decoder system for decoding multi-standard encoded video
US20060245491A1 (en) 2005-04-28 2006-11-02 Mehrban Jam Method and circuit for transcoding transform data
US7974341B2 (en) * 2005-05-03 2011-07-05 Qualcomm, Incorporated Rate control for multi-layer video design
JP2007036666A (ja) 2005-07-27 2007-02-08 Onkyo Corp コンテンツ配信システム、クライアント及びクライアントプログラム
US8447121B2 (en) * 2005-09-14 2013-05-21 Microsoft Corporation Efficient integrated digital video transcoding
US8446954B2 (en) * 2005-09-27 2013-05-21 Qualcomm Incorporated Mode selection techniques for multimedia coding
US8654848B2 (en) * 2005-10-17 2014-02-18 Qualcomm Incorporated Method and apparatus for shot detection in video streaming
US7843995B2 (en) * 2005-12-19 2010-11-30 Seiko Epson Corporation Temporal and spatial analysis of a video macroblock
US8130841B2 (en) * 2005-12-29 2012-03-06 Harris Corporation Method and apparatus for compression of a video signal
US7643422B1 (en) * 2006-03-24 2010-01-05 Hewlett-Packard Development Company, L.P. Dynamic trans-framing and trans-rating for interactive playback control
US9131164B2 (en) * 2006-04-04 2015-09-08 Qualcomm Incorporated Preprocessor method and apparatus
US8130828B2 (en) * 2006-04-07 2012-03-06 Microsoft Corporation Adjusting quantization to preserve non-zero AC coefficients
US7773672B2 (en) 2006-05-30 2010-08-10 Freescale Semiconductor, Inc. Scalable rate control system for a video encoder
US8311102B2 (en) * 2006-07-26 2012-11-13 Microsoft Corporation Bitstream switching in multiple bit-rate video streaming environments
US8265157B2 (en) * 2007-02-07 2012-09-11 Lsi Corporation Motion vector refinement for MPEG-2 to H.264 video transcoding
US8571027B2 (en) 2007-04-18 2013-10-29 At&T Intellectual Property I, L.P. System and method for multi-rate video delivery using multicast stream
US20090003452A1 (en) * 2007-06-29 2009-01-01 The Hong Kong University Of Science And Technology Wyner-ziv successive refinement video compression
US7756817B2 (en) * 2007-07-05 2010-07-13 Yahoo! Inc. System and method for enabling parallel access to serially compressed files
US20090110060A1 (en) * 2007-10-30 2009-04-30 Mauricio Cortes Method and apparatus for performing lower complexity multiple bit rate video encoding using metadata
US8121187B2 (en) * 2007-12-05 2012-02-21 Alcatel Lucent Method and apparatus for performing multiple bit rate video encoding and video stream switching
US8417187B2 (en) * 2008-01-07 2013-04-09 Apple Inc. Methods and apparatus for wireless device coexistence
US8165204B2 (en) * 2008-02-29 2012-04-24 Michael Bronstein Resource allocation for frame-based controller
CN101534436B (zh) * 2008-03-11 2011-02-02 深圳市融创天下科技发展有限公司 一种视频图像宏块级自适应码率分配方法
US20090244633A1 (en) 2008-03-31 2009-10-01 Konica Minolta Systems Laboratory, Inc. Systems and Methods for Color Data Compression
KR20120081022A (ko) * 2009-05-01 2012-07-18 톰슨 라이센싱 3d 비디오 코딩 포맷
US9762898B2 (en) * 2010-02-01 2017-09-12 Kelly Y Kishore Method and system for parallelizing video compression

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906949A (zh) * 2004-01-29 2007-01-31 国际商业机器公司 动态改变视频编码的分辨率的***和方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
JP特开平5-308631A 1993.11.19
JP特开平9-214965A 1997.08.15
Optimal Rate and Input Format Control for Content and Context Adaptive Streaming of Sports Videos;OZCELEBI T et al;《2004 IEEE 6th workshop on multimedia signal processing》;20040929;502-505 *
optimal rate and input format control for content and context adaptive video streaming;OZCELEBI T et al;《2004 International Conference on Image Processing》;20041024;2043-2046 *
OZCELEBI T et al.Optimal Rate and Input Format Control for Content and Context Adaptive Streaming of Sports Videos.《2004 IEEE 6th workshop on multimedia signal processing》.2004,502-505.
OZCELEBI T et al.optimal rate and input format control for content and context adaptive video streaming.《2004 International Conference on Image Processing》.2004,2043-2046.

Also Published As

Publication number Publication date
WO2010144521A2 (en) 2010-12-16
US8270473B2 (en) 2012-09-18
JP5643300B2 (ja) 2014-12-17
KR20120036309A (ko) 2012-04-17
CN102461169A (zh) 2012-05-16
KR101744654B1 (ko) 2017-06-09
JP2012529865A (ja) 2012-11-22
EP2441265A2 (en) 2012-04-18
WO2010144521A3 (en) 2011-03-03
US20100316126A1 (en) 2010-12-16
EP2441265A4 (en) 2012-07-04
EP2441265B1 (en) 2013-07-24

Similar Documents

Publication Publication Date Title
CN102461169B (zh) 基于运动的动态分辨率多比特率视频编码
CN102301710B (zh) 使用用于自适应视频流传输的可变比特率和动态分辨率的多比特率视频编码
JP6019189B2 (ja) ビデオ記述長によって導かれるビデオ符号化のレート−歪み−複雑性の最適化
KR101644208B1 (ko) 이전에 계산된 모션 정보를 이용하는 비디오 인코딩
CN1251511C (zh) 用于生成具有恒定质量的可缩放编码视频比特流的方法
TW390099B (en) Real-time encoding of video sequence employing two encoders and statistical analysis
US8767825B1 (en) Content-based adaptive video transcoding framework
CN101102495B (zh) 一种基于区域的视频图像编解码方法和装置
EP2769553B1 (en) Rate-distortion-complexity optimization of video encoding
US20080152008A1 (en) Offline Motion Description for Video Generation
CN104539948A (zh) 视频处理***和视频处理方法
Yang et al. Sur-driven video coding rate control for jointly optimizing perceptual quality and buffer control
KR20230053243A (ko) 분산형 병렬 인코딩 방법 및 장치
KR20130086294A (ko) 변환 계수의 히스토그램에 기초한 비디오 레이트 제어
KR20040097028A (ko) 다차원 비트율 조절에 따른 비디오 트랜스코딩 방법 및 그장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150505

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150505

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.