CN104168479B - 用于视频成码的切片级比特率控制 - Google Patents

用于视频成码的切片级比特率控制 Download PDF

Info

Publication number
CN104168479B
CN104168479B CN201410203500.5A CN201410203500A CN104168479B CN 104168479 B CN104168479 B CN 104168479B CN 201410203500 A CN201410203500 A CN 201410203500A CN 104168479 B CN104168479 B CN 104168479B
Authority
CN
China
Prior art keywords
coefficient
slice
discrete cosine
cosine transform
bit rate
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.)
Expired - Fee Related
Application number
CN201410203500.5A
Other languages
English (en)
Other versions
CN104168479A (zh
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of CN104168479A publication Critical patent/CN104168479A/zh
Application granted granted Critical
Publication of CN104168479B publication Critical patent/CN104168479B/zh
Expired - Fee Related 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/146Data rate or code amount at the encoder output
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

公开一种用于视频成码的切片级比特率控制技术。所描述的系统、制品和方法包括对视频成码的切片级比特率控制的操作。

Description

用于视频成码的切片级比特率控制
背景技术
视频编码器压缩视频信息以使更多信息能在给定带宽上发送。压缩的信号随后可被发送至接收机,该接收机将信号在显示之前解码或解压缩。对于来自诸如紧凑盘(CD)、数字视频盘(DVD)和蓝光DVD之类的光学计算机存储介质的视频比特流的传统回放,经编码的比特流以及经编码的比特率被存储在介质上,并且播放机内的解码过程一般需要遵循假想参考解码器(HDR)规范。这些规范可包括比特缓冲容量、初始延迟时间以及恒定数据移除速率。由此,视频编码器必须产生经编码的比特流,该经编码的比特流将以能够避免上溢或下溢的速率被馈送到缓冲器中,上溢使成码过程延迟或导致帧数据丢失,下溢会由于无法使用解码器的全部容量而使过程减慢。
一种控制经编码比特率的传统方式是通过预测未来的使用来调整量子化参数(quantization parameter)(QP)。QP值可在帧、切片(slice)或宏块(MB)基础上调整。
随着视频会议和在线视频流应用的出现,编码器也需要向经编码的比特流提供切片,每个切片小于特定的最大比特尺寸。需要复杂算法在这一点调整QP以符合切片比特尺寸要求以及HDR要求,并同时避免画质的可察觉下降。
在替代方案中,可通过在切片间重新分配宏块以符合尺寸要求来改变切片的几何形状或结构形状。这可能需要对形成帧并依据所请求切片比特尺寸的所有切片改变分配,因此需要大量计算工作。这一过程也会使画质降级,因为切片边界之间的数据冗余无法被使用。换句话说,如果这些宏块被分成不同的切片,宏块无法再从相邻的宏块获得预测信息。这种预测信息可包括关于运动矢量(MV)预测器、MB模式、内编码情况下的像素值等的数据。另外,再分配过程将一般需要第二次通过解块滤波器(以清除切片边界)、DCT变换和量子化,以重新定义切片,这造成延迟并使性能降低。
附图简述
本文中所描述的素材通过示例而非限制地在附图中示出。为说明的简单和清楚起见,在附图中示出的元件不一定按比例绘制。例如,为清楚起见,某些元件的尺寸可能相对于其它元件被放大。此外,在认为合适的地方,在附图中重复附图标记以指示相应或相似的元件。在附图中:
图1是示例性视频成码系统的示图;
图2是图1的示例性视频成码系统的一部分的示图;
图3是根据图1的示例性视频成码系统的DCT系数配置和切片的示图;
图4是根据图1的示例性视频成码系统的另一DCT系数配置和切片的示图;
图5是示出示例性视频成码过程的流程图;
图6是操作中的示例性视频成码过程的示图;
图7是示例性视频成码系统的示图;
图8是运行示例性视频成码系统的示例性系统的示图;以及
图9是全部根据本公开的至少一些实施方式配置的示例性系统的示图。
具体实施方式
现在参照附图描述一种或多种实现。尽管讨论了特定配置和构造,然而应当理解这样做只是为了解说目的。相关领域内技术人员将理解,可使用其它配置和构造而不脱离本说明书的精神和范围。对相关领域内技术人员很明显的是,本文描述的技术和/或配置也可在本文描述以外的多种其它系统和应用中采用。
尽管下面的描述陈述了可表现在诸如芯片上系统(SoC)架构的架构中的多种实现,然而本文描述的技术和/或配置的实现不仅限于这些特殊架构和/或计算系统,并可通过任何架构和/或计算系统实现以实现相同目的。例如,采用例如多个集成电路(IC)芯片和/或封装件和/或诸如机顶盒、智能电话等各种计算设备和/或消费者电子(CE)设备的各种架构可实现本文描述的技术和/或配置。此外,尽管下面的描述陈述了许多具体细节,例如系统组件的逻辑实现、类型和相互关系,逻辑划分/整合选择等等,然而要求保护的主题没有这些具体细节也可投入实践。在其它情况下,一些素材——例如控制结构和完整软件指令序列——可不予以详细示出以不使本文披露的素材变得晦涩。
本文披露的素材可实现在硬件、固件、软件或它们的组合中。本文披露的素材也可实现为机器可读介质上存储的指令,这些指令可由一个或多个处理器读取和执行。一种机器可读介质可包括用于以机器(例如,计算设备)可读的形式存储或发送信息的任何介质和/或机构。例如,机器可读介质可包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光存储介质;闪存设备;电、光、声或其它形式的传播信号(例如载波、红外信号、数字信号等)及其它。以另一形式,非瞬态制品——例如非瞬态计算机可读介质——可与前面提到的任何例子或其它例子(除却不包含瞬态信号本身的例子)一起使用。它包括除信号本身以外的那些元件,这些元件可以“瞬态”方式暂时地保持数据,例如RAM诸如此类。
在说明书中对“一个实施方式”、“实施方式”、“示例性实施方式”等的引用表示所描述的实施方式可包括特定特征、结构或特性,但不一定每个实施方式均包括该特定特征、结构或特性。而且,这些短语不一定指代同一实施方式。此外,当结合实施方式描述特定特征、结构或特性时,认为本领域技术人员知道结合无论是否明确描述的其它实施方式实现这些特征、结构或特性。
下面描述包括对视频成码的切片级比特率控制的操作的系统、制品和方法。
经编码的比特流一般与其它传输的数据共享从编码器至解码器的传输路径。由此,经编码比特流的可用带宽或比特率经常是动态的。解码器也对比特率设定其它限制,例如假想参考解码器(HDR)规范。这些规范可包括比特缓冲容量、初始延迟时间以及恒定数据移除速率。由此,视频编码器必须产生经编码的比特流,该经编码的比特流将以避免上溢和下溢的速率被送入缓冲器。用于视频会议和在线视频流送的解码器现在也可具有最大切片比特尺寸限制。就动态可用的比特率而言,切片尺寸可被发送至编码器以适应用于形成经编码的比特流。
如前面提到的,在控制经编码比特流的比特率方面的一些尝试包括通过预测未来的使用来调整量子化参数(QP)。然而,对于在线视频流送,计算变得过于复杂,尤其是当被添加至HDR需求时。
为了解决视频流送的比特率限制,可使用宏块再分配从一个几何切片至另一几何切片改变宏块的分配,由此改变切片的几何形状。几何切片经常被分配给图像或图片上的对象,由此切片的边缘与图像上的对象的边缘对准。这种宏块的再分配将比特率的优先级定为优于对准,并可造成切片边界处的重叠,这可能降低画质。宏块的再分配也可造成性能降低和延迟,因为重定义几何切片可能需要第二次通过DCT变换、量子化和解块滤波器以及繁重的计算负载。
两种用于校正比特率的方法被认为是提供相当粗略的比特率校正(这对于较低画质视频是可接受的),并对于较高画质的视频图像(例如通过可伸缩视频成码(SVC)而设有增强层的视频图像)可能导致可察觉的图像降级。
本系统提供视频比特流的比特率的细调,这种细调可用于高画质图像显示。系统的成码标准可以是具有先进视频编解码(AVC)和SVC扩展(例如H.264/MPEG-4AVC–SVC)等(例如MPEG-2、VC1)的H.264等等,但是许多其它版本或标准可适当地与所披露的视频成码系统一起工作。可使用这些标准,只要它提供通过预测流比特率消除高频系数并且在这样操做时不需要改变量子化参数值的方法,如下文中更详细解释的那样。高效率视频成码(HEVC)也可与本系统中的SVC一起使用。其它可使用的标准包括来自Google的VP8/WebM等等。
SVC是用于应对现代视频服务环境中的网络和设备的异质性的重要工具。SVC比特流包含可被独立解码的若干子集比特流,并且这些子流表示具有不同分辨率、帧速率、画质、比特深度等的源视频内容。通过使用多层成码结构来取得缩放性。一般来说,通常存在一个基层,该基层可首先被编码,然后是SVC系统中的若干增强层。本公开提供对比特率的细调,并因此更适于增强层之一,但可用于包括基层的任何层。本系统可设置在单层、全部层或仅特定的层处,例如提供某些最低画质图像的那些层。
参见图1,根据本公开的至少一些实施方式来配置示例性视频成码系统100。在各实现中,视频成码系统100可被配置成根据前面提到的一种或多种标准承担视频成码和/或实现视频编解码。此外,以多种形式,视频成码系统100可被实现为图像处理器、视频处理器和/或媒体处理器的一部分,并可承担相互间预测、内部预测、预测性成码和/或残余预测。
如本文中使用的,术语“成码器(coder)”可指编码器和/或解码器。同样,如本文中使用的,术语“成码(coding)”可指经由编码器编码和/或经由解码器解码。成码器、编码器或解码器可具有编码器和解码器两者的组件。
在一些例子中,为清楚起见,视频成码系统100可包括图1未示出的附加项。例如,视频成码系统100可包括处理器、射频类(RF)收发机、显示器和/或天线。此外,视频成码系统100可包括附加项,例如扬声器、麦克风、加速度计、存储器、路由器、网络接口逻辑等,为清楚起见未在图1中示出。
在一些例子中,视频成码系统100可执行SVC操作。例如,两个空间分辨率层(例如基层101’和增强层101)被示出;然而,除了基层101’外还可利用任何数量的增强层。基层101’可经由H.264/AVC(和/或HEVC)兼容的编码器来处理。与基层关联的信息(例如预测模式、重构像素等等)可用于增强层101的成码。
例如,在视频成码系统100在增强层101上的操作期间,当前视频信息可以以视频数据帧的形式被提供给内部比特深度增加模块102并通过变换和量子化模块108经历视频变换和量子化处理。变换和量子化模块108的输出可被提供给熵成码模块109和解量子化和逆变换模块110。解量子化和逆变换模块110可实现由变换和量子化模块108承担的操作的逆过程。本领域内技术人员将认识到,本文描述的变换和量子化模块以及解量子化和逆变换模块可采用缩放技术。解量子化和逆变换模块110的输出可被提供给环路,该环路包括解块滤波器114、样本自适应偏移滤波器116、自适应环滤波器118、缓冲器120、运动估计模块122、运动补偿模块124以及帧内预测模块126。如图1所示,运动补偿模块124或者帧内预测模块126的输出与解量子化和逆变换模块110的输出组合,作为解块滤波器114的输入。
例如,在视频成码系统100中,可将当前视频帧提供给运动估计模块122。系统100可以以光栅扫描顺序来处理图像宏块单位(下面描述)中的当前帧。当视频成码系统100以相互间预测模式工作时,运动估计模块122可响应于当前视频帧和参考视频帧产生残余信号。运动补偿模块124则可使用参考视频帧和由运动估计模块122提供的残余信号来产生预测帧。
可随后从当前帧减去预测帧并将结果提供给成码划分器107。成码划分器107可通过分割成一个或多个几何切片和/或块来划分预测帧用于压缩(下文中将进一步描述)并可将结果提供给变换和量子化模块108。该块可随后被变换(使用块变换)和量子化以产生一组经量子化的变换系数,这些变换系数可被重新排序并通过熵成码模块109进行熵成码,以产生由视频成码系统100提供压缩比特流(例如网络摘要层(NAL)比特流)的一部分。在各实施方式中,由视频成码系统100提供的比特流除了用于对每个块解码的边信息外可包括熵编码系数(例如预测模式、量子化参数、运动向量信息等等),并可被提供给如本文描述的其它系统和/或设备以供传输或存储。
变换和量子化模块108的输出也可被提供给解量子化和逆变换模块110。解量子化和逆变换模块110可实现由变换和量子化模块108承担的操作的逆操作,并且解量子化和逆变换模块110的输出可与预测帧组合以产生重构的帧。当视频成码系统100工作在内部预测模式时,帧内预测模块126可使用重构帧以承担内部预测机制,这在本文中将不会更详细地予以描述。
在一种形式中,对于H.264/AVC标准等,帧或图像通过成码划分器107被分割成切片,并且这些切片一般被分配给图像或帧内的对象,如前面提到的。成码划分器107也将每个帧分割成与许多像素关联的宏块(MB),一般为16×16,并将这些宏块分配给切片。这些宏块可被进一步分割成4×4或8×8块用于压缩。
当使用HEVC标准时,尽管仍然使用切片,然而宏块已用成码单元(CU)(也称为大成码单元(LCU))来取代。对于这种标准,当前帧可由成码划分器107通过分割成成码树块的一个或多个切片(例如具有对应色度样本的64×64luma样本)来划分用于压缩。每个成码树块也可以以四叉树分割机制被分成成码单元(CU)。此外,四叉树的每个叶CU可被分成多个划分单元(PU)以用于运动补偿的预测。在根据本公开的各种实现中,CU可具有多种尺寸,包括但不限于64×64、32×32、16×16和8×8,而对于2N×2N的CU,对应的PU也可具有多种尺寸,包括但不限于2N×2N,2N×N,N×2N,N×N,2N×0.5N,2N×1.5N,0.5N×2N和1.5N×2N。然而,应当注意,前面仅仅是示例性CU划分和PU划分形状和尺寸,本公开不限于任何具体的CU划分和PU划分形状和/或尺寸。
如本文中使用的,术语“块”可指HEVC等的视频数据的CU或PU,或者是4×4或8×8或者其它形状的块作为对H.264/AVC等的视频或像素数据的宏块的分割,除非另有定义。
在各实施方式中,并对于前述两种标准,可将切片指示为I(内)、P(预测的)、B(双预测的)、SP(切换P)、SI(切换I)类切片,等等。一般来说,帧可包括不同的切片类型。此外,帧可被指定为非参考帧或参考帧,所述参考帧可用作相互间帧预测的参考。在I切片中,使用空间预测,并在一种形式中,仅来自帧本身中的数据。在P切片中,可通过估计帧间的运动来进行时间(而不是空间)预测。在B切片中,表示每PU的两个运动估计的两个运动向量可用于时间预测或运动估计。换句话说,例如B切片可从相对于B切片来自过去、未来或这两者的帧上的切片来预测。另外,可从就显示顺序而言在过去或未来出现的多个图像估计运动。在各实施方式中,可在与前述尺寸对应的多个CU或PU级估计运动。
类似地,在视频成码系统100在基层101’上操作期间,可将当前视频信息以视频数据帧的形式提供给空间抽取或比特深度减少模块103,并随后将其传至成码划分器107’。成码划分器107’通过分割成一个或多个切片、宏块和/或块来执行帧划分以用于压缩,并可将结果提供给变换和量子化模块108’。变换和量子化模块108’可执行视频变换和量子化过程。变换和量子化模块108’的输出可被提供给解量子化和逆变换模块110’。解量子化和逆变换模块110’可实现由变换和量子化模块108’承担的操作的逆操作,以将输出提供给环路,该环路包括解块滤波器114’、样本自适应偏移滤波器116’、自适应环滤波器118’、缓冲器120’、运动估计模块122’、运动补偿模块124’以及帧内预测模块126’。本领域内技术人员可认识到,本文描述的变换和量子化模块以及解量子化和逆变换模块可采用缩放技术。如图1所示,运动补偿模块124’或者帧内预测模块126’的输出均与解量子化和逆变换模块110’的输出组合,作为解块滤波器114’的输入。
在操作中,在解码期间,两层SVC比特流可被解复用成两个单独比特流(例如基层101’比特流和增强层101比特流)以供解码。基层101’比特流可被独立地解码以重构基层输出视频。对基于HEVC的SVC,基层101’比特流可被独立地解码,而增强层101比特流无法被独立地解码以重构输出视频。增强层101比特流可与基层重构视频一起被解码,因为层间预测可用于对一些增强层块的编码。基层101’重构的视频可在应用于层间预测之前被处理。可选择地执行对为空间可缩放性而上采样的图片的附加操作、对于比特深度可缩放性的图片色调映射、对于交织演进可缩放性的解交织或一些其它类型处理。
如下文中更详细描述的,视频速率控制器150可连接至成码划分器107、107’以及变换和量子化模块108、108’。尽管视频速率控制器150被图示为改变基层101’和增强层101两者的比特率,然而视频速率控制器150可仅在一个层上、在至少一个层上、多个特定层或全部层上操作。视频速率控制器150改变被编码的视频数据的比特率,并为了至少部分地基于可用比特率提供遵循比特率数据或带宽限制的结果编码比特流的比特率。可用比特率可从一个或多个解码器接收,并基于特而定应用或计算机程序可以是或不是标准比特率限制的因素。对于一个例子,其中数个接收机客户端存在于视频会议,每个接收机均联系服务器(MCU/多点控制单元)并提供它们优选的视频格式(分辨率或编解码等)以及接收机和服务器之间的带宽。服务器将聚集所有这些请求并产生适应多数客户端的最小带宽和分辨率集,同时取得可能的最佳质量。这种带宽和分辨率集将被传至编码器,并且编码器将确定如何产生层并在接收机之间分配带宽。可用比特率是以Bp(比特/秒)为单位计算的。
一般来说,视频速率控制器150具有相对于比特尺寸从大切片向小切片再分配离散余弦变换(DCT)系数的能力,从而改变切片中的比特数并因此提供经编码比特流中的更均匀切片尺寸。这将提供比特率的细调。附加地,视频速率控制器150也可提供切片之间的宏块再分配以及定量参数调整以提供粗略比特率调整。在一种形式中,DCT系数再分配则可补充粗略调整。
关联于这些方法和视频成码系统100的其它方面的附加和/或替代细节可在下面参照图2-4更详细描述的一个或多个示例性实施方式中示出。如下面更详细描述的,视频成码系统100可用于执行下面结合图5和图6讨论的多种功能中的一些或全部。
参见图2,在一个示例形式中,视频成码系统100的层101、101’中的两者或任一个可具有逻辑模块200。这些逻辑模块中的一些可包括在视频速率控制器150中。视频速率控制器150可具有DCT系数模块254、可选的宏块再分配模块252和/或可选的定量参数(QP)控制模块256。宏块再分配模块252、DCT系数再分布模块254和QP控制256可分别连接或通信或操作地耦合至划分成码模块107、变换模块208和量子化模块209。变换模块208和量子化模块209可协作地形成前述的变换和量子化模块108、108’的至少一部分。
更详细地,划分成码模块107或107’接收图像数据,不管是初始接收还是包括来自量子化模块并经过滤波、运动和/或预测环204以例如添加对预测帧的编码的环路数据。对于H.264/AVC例子,图像数据被几何地分割或划分成切片、宏块和图像或像素数据的更小块,以用于压缩。由此,几何切片、宏块和更小的块(例如4x4或8x8像素块)被认为是图像(在这里也被称为帧或图片)上的区域的几何表示,该几何表示包括每个像素的亮度和颜色的细节。
定义的划分然后被转移至变换模块208或由变换模块208获得。在一种形式中,然后执行DCT计算,但是可由视频成码系统100使用其它类型的系数计算。在一种形式中,这可包括4x4或8x8矩阵乘法。矩阵算子(每个矩阵的元)可以是八位整数,并且结果可限于16位整数。该DCT计算的结果则可以是在频域中的4x4或8x8系数矩阵。
在一种形式中,每个系数关联于图片的至少一个像素。与几何块相反,DCT计算导致系数块或值的矩阵(或简单的系数块),它们表示每个像素的加权强度或能量。系数也可被安排在系数切片中,这些系数切片包括或关联于数个DCT系数。系数切片可对应于或不对应于几何切片的形状。系数切片也可具有边界(在本文中也称为系数划界),这些边界可以不与系数块的边缘对应。由此,系数切片可延伸通过系数块的中间,以使块中的一些系数可属于一个系数切片,而相同系数块中的其它系数属于不同的相邻系数切片。例如,对于4x4DCT变换,结果可以是16个系数的4x4矩阵。对系数按行从0至15编号,可通过将系数安置到切片中(这里为解释目的是随机选择的)来划分系数,例如对于三系数划分的情况,系数0-3在一组或系数切片中,系数4-8在另一切片中,而系数9-15在第三切片中。这在下面图3-4中更详细地描述。
系数块或矩阵然后被转移至量子化模块209或由量子化模块209获得。量子化模块可使用计算来简化系数(例如将所有系数转化成特定范围内的实数)。通过一个例子,通常可形成任何图像的重要部分的零系数序列可随后被丢弃(或更准确地简单地被计数)以针对经编码比特流压缩数据。在一种示例性形式中,令A/Qp=B,其中A是系数,而Qp是量子化参数且B是具有相对小范围的整数。然后可将B编码到比特流中。接收B的解码器然后可执行例如A’=Qp*B的计算,其中A’不一定等于A但可以是相对接近的。Qp的值确定准确性。
一旦量子化模块209以系数切片结束,熵编码器模块109执行熵成码,并且经编码的比特流可在解码器704(参见图7)被发送至缓冲器210,该解码器704具有前面提到的比特率限制。
参见图3,DCT系数再分布模块254至少部分地基于比特率限制将来自一个系数切片的至少一个DCT系数再分配给不同的系数切片。这可包括对特定系数切片可能具有的比特数的限制(在这里也被称为切片尺寸)。例如,图示出一组300的八个系数块302,每个系数块302具有16个系数,从左至右并逐行地编号为0-15(例如光栅扫描顺序)。在其它例子中,系数块可以是任何其它合适的尺寸,例如具有编号为0-63的系数的8x8块。这些数是系数的位置号,并且它们不是系数的实际值,两者可以是迥然不同的。在一种形式,系数可以例如在0-255的规模上。在图示例子中,每个块具有相同数量的系数和相同的配置。在一种形式中,系数块302可具有相同数量的系数,以使切片将每个系数块划分成相同的系数组。例如,每个系数块的系数1-5被置于同一切片内,以此类推。由此在一种形式中,系数数量和系数位置(或位置号)两者可位于每个系数块的同一切片内。
系数切片306(切片1)、308(切片2)被图示为穿过每个块302切割。一个切片306以灰色表示,而第二相邻切片308以白色或非灰色表示。在一种形式中,切片306、308是通过在编号为0的系数开始形成的并以系数号的顺序沿行延伸,并可同样以如图所示的光栅扫描顺序方式延伸到之后行的部分。相邻切片306、308之间的边界310(也被称为边缘或系数切片划分)是系数方形的边界,在那里颜色从灰色改变至白色。成码工具(或切片结构)被称为中等粒度可缩放性(MGS)。
为了从一个系数切片向另一系数切片再分配DCT系数,在一种形式中,系数划界310可在一个或多个系数块302中移位,以使系数方形或位置304在其所位于的边界或划界310的边上改变。这将系数的分配从一个相邻切片改变至另一相邻切片。通过一种方法,切片划界310对于每个系数块302以相同方式改变并因此对于每个系数块302移动相同的对应系数(或系数号或位置)。因此,例如将图3与图4比较,可确定具有80个系数的切片308(切片2)是具有过多比特的尺寸过大切片。通过调整切片划界310以在每个系数块302中在系数6之下而不是在系数6之上延伸,系数6从每个系数块302内的切片308运动到切片306。通过这种操作,切片306(切片1)从图3中的48个系数增加至图4中的56个系数,同时切片308(切片2)从图3中的80个系数减小至图4中的72个系数,由此导致减少的系数分布,进而对于尺寸过大的切片308(切片2)导致减小的比特尺寸。在该例子中,该操作可使切片2遵循至少部分基于可用比特率的比特率数据限制。
尽管在每个块中再分配单个系数,然而要理解不一定总是如此,并且DCT系数再分布模块254可再分配至少一个DCT系数。因此,单个系数块中的多个DCT系数可被再分配。同样,系数号或位置不一定总是沿系数切片划界310的下一个或多个系数。因此,选择再分配哪些DCT系数的基础可基于关联于系数的号或位置(例如在系数块302角落中)的其它标准,或可基于与位置无关的计算,并可例如关联于系数的值。可以构想许多例子。
另外,系数切片的形状不一定总是遵循系数块302的行,并且可以是被认为有效的不同形状或配置,并在一种形式下可以是任何形状,只要系数块以光栅顺序被扫描。
还要理解,尽管前面提到的一般DCT系数再分配过程是针对H.264/AVC-SVC标准描述的,然而还可使用许多其它标准,包括HEVC,其中分析系数PU而不是系数块,并可基于修正的DCT过程使用其它有损变换和量子化技术以获得这些系数。不管使用的变换方法如何,系数的编号和选择可至少保持与前述相同或相似。
DCT系数再分配是相当有优势的,因为它不改变几何切片边界(它们可迥然不同于系数切片边界)。因此,它省去了编码器执行切片边界解块滤波的附加步骤的需要。另外,在通过移动系数切片的边界而再划分之后无需再重做量子化。最后,由于该过程在逐系数的过程上(或换句话说,在一些情形下通过逐像素过程)移动系数,因此调整是在非常细的粒度水平上,这是用传统的基于QP的速率控制非常难以达成的。
回到图2,在一些例子中,宏块再分配模块252可从切片至切片地移动相对大的像素块。如前面提到的,图片关联于多个宏块。每个宏块由宏块号表示并关联于构成图片的多个像素。宏块再分配模块252通过将至少一个宏块号再分配给不同的几何切片并至少部分地基于可用比特率的限制调整至少一个几何切片的几何尺寸。这形成新的或不同的切片,这些切片可被封装到网络摘要层(NAL)。用于调整几何切片的几何尺寸的该过程是与用于再分配离散余弦变换系数的过程独立和分离地执行的。换句话说,单单由宏块从切片至切片的移动造成的系数从切片至切片的移动不提供DCT系数再分布模块252能提供的精细比特再分配。宏块再分配原本会如何影响DCT系数再分配的描述将在下面参照图6而给出。
在一些例子中,QP控制模块256可调节至少一个量子化参数(QP)以调整至少一个切片的压缩,并至少部分地基于对可用比特率的限制。更具体地,通过对DCT进行近似的整数变换来将残余变换到空间频域中。QP确定步长大小以将经变换的系数关联于有限的步长集。QP的大值代表粗糙地对空间变换进行近似的大步长,由此大多数信号可仅通过一些系数来捕捉。QP的小值更准确地近似块的空间频率谱,但以更多比特为代价。为了达成这个目的,使用影响预测误差和可用比特率两者的算法。在H.264中,QP的每单位增加使步长加长12%并使比特率大致降低12%。
如下面更详细描述的,可使用视频成码系统100来执行下面结合图5和/或图6描述的各种功能中的一些或全部。
参见图5,根据本公开的至少一些实施方式来配置示例性视频成码过程500。在图示实施方式中,过程500可包括由一个或多个框502、504和/或506所示的一个或多个操作、功能或动作。作为非限定示例,在本文中将参照图1、图2和/或图7的示例性视频成码系统100描述过程500。
过程500可用作对于视频成码的切片级比特率控制的计算机实现方法。过程500可开始于操作502“接收用于视频编码器和一个或多个视频解码器之间数据传递的可用比特率”,其中接收用于视频编码器和一个或多个视频解码器之间数据传递的可用比特率。在一个例子中,可经由视频编码器接收用于视频编码器和一个或多个视频解码器之间数据传递的可用比特率。
处理可从操作502继续至操作504,“至少部分地基于可用比特率确定比特率数据限制”,其中至少部分地基于可用比特率确定比特率数据限制。例如,可经由视频编码器至少部分地基于可用比特率确定比特率数据限制。
处理然后继续从操作504至操作506,“至少部分地基于比特率数据限制从一个切片向不同的切片重分配至少一个离散余弦变换(DCT)系数”,其中至少一个离散余弦变换(DCT)系数可至少部分地基于比特率数据限制从一个切片再分配至不同的切片。例如,可经由视频编码器至少部分地基于比特率数据限制从一个切片向不同切片分配至少一个离散余弦变换(DCT)系数。这种再分配的切片可关联于数个离散余弦变换系数,并且其中每个离散余弦变换系数可关联于图片的至少一个像素。
在操作中,DCT系数的再分配可包括:首先确定是否存在超过最大比特数的至少一个尺寸过大的切片;并随后从该尺寸过大切片向另一切片移走至少一个DCT系数。可从一个切片向相邻切片移动DCT系数,但是可以理解存在许多替代形式。
与过程500关联的一些附加和/或替代细节可在下面参照图6更详细地讨论的实施方式的一个或多个例子中给出。具体地说,例如DCT系数再分配可单独地执行,或替代地,可通过宏块再分配和QP调整以特定顺序执行。
参见图6,示例性视频成码系统100运行根据本公开的至少一些实施方式的视频成码过程600。使用DCT系数再分配模块254的过程用实线表示,并且一些可选择、可替代的方法用虚线表示。更详细地并且在图示实施方式中,过程600可包括一个或多个操作、功能或动作,如偶数编号的一个或多个动作602-642所示。作为非限定例子,参照图1-2和图7的示例性视频成码系统100在本文中描述过程600。
在图示实施方式中,视频成码系统100可包括逻辑模块200等等和/或其组合。例如,逻辑模块200可包括形成视频速率控制150的那些逻辑模块,例如DCT系数再分布模块254,并可选择地具有宏块再分配模块252、QP控制模块256等,和/或它们的组合。这些逻辑模块也协作或可通信地耦合至前述的变换模块208和量子化模块209,并且它可被视为或不被视为逻辑模块200的一部分。DCT系数再分布模块254可被配置成至少部分地基于比特率数据限制从一个切片向不同切片再分配至少一个离散余弦变换(DCT)系数。不同的切片关联于数个离散余弦变换系数,并且每个离散余弦变换系数关联于图片的至少一个像素。宏块再分配模块252被配置成通过将至少一个宏块号再分配给不同的切片并至少部分地基于可用比特率的限制调整至少一个切片的几何尺寸。离散余弦变换系数的再分配可与如前所述调整几何尺寸分离地执行。另外,QP控制模块256被配置成调整至少一个量子化参数以调整至少一个切片的压缩,并如前所述地至少部分地基于对可用比特率的限制。如图6所示,尽管视频成码系统100可包括与特定模块关联的一组特定的操作或动作,然而这些操作或动作可关联于与这里展示的特定模块不同的模块。
过程600可用作对于视频成码的切片级比特控制的计算机实现方法。过程600可首先包括来自划分成码模块的操作“接收图像数据和残余预测”602以及“接收MB切片分配数据”604,以例如映射初始系数分配。变换模块可随后“计算DCT系数”606并通过DCT系数再分布模块254使这些初始系数可用于操作608。
通过一种替代实施方式,编码器,然后是DCT系数再分布模块254,执行操作“接收可用比特率数据”610,其中数据关联于视频编码器和一个或多个视频解码器之间的数据传递。下一操作是“至少部分地基于可用比特率确定比特率数据限制”612。该比特率数据限制可包括最大比特、系数切片尺寸,并在前面详细地描述过。
通过一种替代方法,也可通过宏块再分配模块252和/或QP控制模块256使比特率数据限制可用于操作622、624,如下文中更详细描述的。否则,过程600继续DCT系数的再分配。具体地说,现在DCT系数模块254具有比特率数据限制和初始DCT系数分配,DCT系数再分布模块254可“至少部分地基于比特率数据限制再分配DCT系数”614。更具体地,这可包括至少部分地基于比特率数据限制从一个切片向不同切片再分配至少一个离散余弦变换(DCT)系数,其中所述不同切片关联于数个离散余弦变换系数,并且每个离散余弦变换系数关联于图像的至少一个像素。
一旦DCT系数被再分配,可通过量子化模块209提供新定义的切片用于操作616以完成618量子化,并随后将量子化的数据传送620至熵编码器以进一步压缩和传输经编码的比特流。
通过替代的方法,DCT系数再分布模块254与宏块再分配模块252和QP控制模块256结合使用,虽然每个模块可单独地工作。然而,在一种形式中,当使用所有三个模块时,可建立特定逻辑顺序以使每个后继模块建立在由之前模块作出的调整之上。因此,在一种形式中,操作622在宏块再分配模块252继续,该宏块再分配模块252使用比特数据限制。尽管图6示出DCT系数再分布模块254在将操作传递至其它模块之前接收比特率数据,然而要理解,这是指编码器接收和存储数据并使数据可供一个或多个模块使用以获得该数据。
接着,宏块再分配模块将“至少部分地基于可用带宽再分配MB号”626,并更具体地,这包括通过将至少一个宏块号再分配给不同切片并至少部分地基于可用比特率的限制来调整至少一个切片的几何尺寸。这种离散余弦变换系数的再分配包括与这种对几何尺寸的调整分离地再分配离散余弦变换系数。对于这种操作,图片与多个宏块关联,并且每个宏块由宏块号表示并关联于构成图片的多个像素。一旦对几何切片的修改完成,操作628通过DCT系数再分布模块254继续(并至少部分地基于经再分配的宏块和经由变换模块208的经调整切片,尽管为了清楚起见,图6未示出这个路径)。
DCT系数再分布模块254基于如前所述的操作614中调整的切片再分配系数,并且过程600随后在QP控制继续操作630。QP控制将随后“至少部分地基于可用带宽调整QP”632,它包括调整至少一个量子化参数(QP)来调整至少一个切片的压缩。该调整至少部分地基于对可用比特率的限制,或换句话说,至少部分地基于可用带宽。一旦量子化参数调整结束,操作634可通过如前面提到的量子化模块209继续。通过这种操作,QP是至少部分地基于至少两次之前的比特率调整来调整的:对几何切片的MB再分配和对系数切片的DCT系数再分配提供用于通过多种方法的切片级比特率控制。
在其它替代形式中,比特率数据限制、可用比特率数据以及初始预测数据和DCT系数可被提供给QP控制256,并且操作624、642可通过QP控制256继续以在操作632调整用于至少一些数据的参数,并且无需系数或宏块的再分配。类似地,宏块再分配的结果可直接被提供给变换模块208和量子化模块,而跳过DCT系数再分布模块254。作为另一替代方案,操作636可以不切换至宏块再分配模块252,直到DCT系数再分配操作614之后为止,以执行638MB再分配。在这种情形下,操作640随后可通过变换模块208和量子化模块209继续以继续压缩。
另外,图5和图6的任何一个或多个操作可响应于由一个或多个计算机程序产品提供的指令来执行。这些程序产品可包括信号承载介质,该介质提供当由处理器执行时可提供本文描述的功能的指令。计算机程序产品可以以任何形式的计算机可读介质提供。因此,例如包括一个或多个处理器核的处理器可响应于由计算机可读介质传递至处理器的指令执行图5和图6所示的一个或多个框。
如本文中任何实施方式中使用的,术语“模块”是指被配置成提供本文所述功能的软件、固件和/或硬件的任何组合。软件可被具体化为软件包,代码和/或指令集或指令,而在本文描述的任何实施方式中使用的“硬件”可单独或组合地包括例如硬线电路、可编程电路、状态机电路和/或存储由可编程电路执行的指令的固件。这些模块可一并或单独地具体化为形成较大系统的一部分的电路,所述较大系统例如为集成电路(IC)、芯片上系统(SoC)等等。
参见图7,根据本公开的至少一些实施方式来配置示例性视频成码系统100。在图示实现中,视频成码系统100可包括成像设备701、视频编码器702、天线703、视频解码器704、一个或多个处理器706、一个或多个存储器存储708、显示器710和/或逻辑模块200。逻辑模块200可包括带DCT系数再分布模块254的视频速率控制器150。可选择地,视频速率控制器150也可包括宏块再分配模块252和/或量子化参数控制256等等,和/或它们的组合。
如图所示,成像设备701、编码器702、处理器706和/或存储器存储708能够彼此通信和/或与逻辑模块200的部分通信。类似地,天线703、视频解码器704和/或显示器710能够彼此通信和/或与逻辑模块200的部分通信。因此,视频编码器702可包括逻辑模块200的全部或一些部分,而视频解码器704可包括类似的逻辑模块。如图7所示,尽管视频成码系统100可包括与特定模块关联的一组特定的操作、组件或动作,然而这些操作、组件或动作可关联于与这里展示的特定模块不同的模块。
在一些例子中,视频编码器702可被配置成通过从一个系数切片向不同的系数切片再分配至少一个离散余弦变换(DCT)系数并至少部分地基于比特率数据限制(比特率数据限制本身至少部分地基于可变比特率),来控制经编码比特流的比特率。视频编码系统100也可包括天线703、视频解码器704等和/或其组合。天线703可被配置成通信视频数据的经编码比特流,并具体地说例如从编码器702接收经编码的比特流并将经编码的比特流传输至解码器704。视频解码器704可通信地耦合至天线703并可配置成对经编码的比特流进行解码。
在其它例子中,视频成码系统100可包括显示设备710、一个或多个处理器706、一个或多个存储器存储708、DCT再分布模块254、宏块再分配模块252和/或QP控制模块256等,和/或它们的组合。显示器710可被配置成呈现视频数据。处理器706可通信地耦合至显示器710。存储器存储708可通信地耦合至一个或多个处理器706。视频编码器702(或在其它例子中视频解码器704)的DCT再分布模块254可通信地耦合至一个或多个处理器706并可被配置成从一个系数切片向不同的系数切片再分配至少一个离散余弦变换(DCT)系数。
通过多种方法,包括视频速率控制器150的宏块再分配模块252、DCT系数再分布模块254和/或QP控制模块256的逻辑模块可用硬件实现,而软件可实现其它逻辑模块。例如,在一些形式中,宏块再分配模块252和QP控制模块256可通过专用集成电路(ASIC)逻辑实现,而DCT系数再分布模块254可通过由例如处理器706的逻辑执行的软件指令来提供。然而,本公开不仅限于这个方面,并且视频速率控制器150模块中的任一模块可通过硬件、固件和/或软件的任意组合来实现。另外,存储器存储708可以是任何类型的存储器,例如易失性存储器(例如静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等)或者非易失性存储器(例如闪存等),诸如此类。在非限定例子中,存储器存储708可通过高速缓冲存储器来实现。
参见图8,根据本公开的示例性系统800运行本文描述的视频成码系统的一个或多个方面。从下面描述的系统组件的性质可以理解,这些组件可关联于或用来运行前述视频成码系统的某一部分或一些部分。在各实施方式中,系统800可以是媒体系统,尽管系统800不仅限于该背景。例如,系统800可被纳入到个人计算机(PC)、膝上计算机、超级膝上计算机、平板计算机、触摸板、便携式计算机、手持式计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合式蜂窝电话/PDA、电视机、智能设备(例如智能电话、智能平板计算机或智能电视机)、移动互联网设备(MID)、消息收发设备、数据通信设备等中。
在各种实施方式中,系统800包括耦合至显示器820的平台802。平台802可从诸如内容服务设备830或内容传递设备840的内容设备或其它类似的内容源接收内容。包括一个或多个导航特征的导航控制器850可用来与例如平台802和/或显示器820交互。这些组件中的每一个将在下文中更详细地描述。
在各实施方式中,平台802可包括芯片集805、处理器810、存储器812、存储814、图形子系统815、应用816和/或无线电818的任意组合。芯片集805可提供处理器810、存储器812、存储814、图形子系统815、应用816和/或无线电818间的相互通信。例如,芯片集805可包括存储适配器(未示出),它能提供与存储814的相互通信。
处理器810可实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、x86指令集可兼容处理器、多核或任何其它微处理器或中央处理单元(CPU)。在各实施方式中,处理器810可以是双核处理器、双核移动处理器等等。
存储器812可实现为易失性存储设备,例如但不限于,随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。
存储814可实现为非易失性存储设备,例如但不限于,磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附属存储设备、闪存、电池应急SDRAM(同步DRAM)和/或网络可访问存储设备。在各实施方式中,存储814可包括当例如包括多个硬盘驱动器时增加对有价值数字媒体的存储性能增强保护的技术。
图形子系统815可执行对例如静止图像或视频的图像的处理以供显示。图形子系统815可以例如是图形处理单元(GPU)或视觉处理单元(VPU)。模拟或数字接口可用来可通信地耦合图形子系统815和显示器820。例如,该接口可以是高清多媒体接口、显示端口、无线HDMI和/或无线HD适应技术中的任何一个。图形子系统815可被集成到处理器810或芯片集805中。在一些实施方式中,图形子系统815可以是可通信地耦合至芯片集805的独立卡。
本文中所描述的图形和/或视频处理技术可在各种硬件架构中实现。例如,图形和/或视频功能可被集成在芯片集中。替代地,可使用分立的图形和/或视频处理器。作为又一实施方式,图形和/或视频功能可由包括多核处理器的通用处理器提供。在又一些实施例中,这些功能可实现在消费者电子设备中。
无线电818可包括能够使用多种适当的无线通信技术发送和接收信号的一个或多个无线电。这些技术可涉及跨一个或多个无线网络的通信。示例性无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络以及卫星网络。在跨这些网络的通信中,无线电818可根据任何版本中的一个或多个可适用标准来操作。
在各实施方式中,显示器820可包括任何电视机类监视器或显示器。显示器820可包括例如计算机显示屏、触摸屏显示器、视频监视器、电视机类设备和/或电视机。显示器820可以是数字的和/或模拟的。在各实施方式中,显示器820可以是全息显示器。另外,显示器820可以是透明表面,该透明表面可接受视觉投影。这些投影可传达多种形式的信息、图像和/或对象。例如,这些投影可以是移动增强现实感(MAR)应用的视觉覆盖。在一个或多个软件应用816的控制下,平台802可在显示器820上显示用户界面822。
在各种实施方式中,内容服务设备830可由任何国家、国际和/或独立服务主持,并因此可经由例如因特网对平台802访问。内容服务设备830可耦合至平台802和/或耦合至显示器820。平台802和/或内容服务设备830可耦合至网络860以向/自网络860通信(例如发送和/或接收)媒体信息。内容传递设备840也可耦合至平台802和/或显示器820。
在各实施方式中,内容服务设备830可包括有线电视机顶盒、个人计算机、网络、电话、启用互联网的设备或能够传递数字信息和/或内容的设施,以及能够经由网络860或直接地在内容提供者与平台802和/或显示器820之间单向或双向地传递内容的任何其它设备。要理解,可经由网络860单向和/或双向地向/自系统800和内容提供者中的任一组件传递内容。内容的例子可包括媒体信息,所述媒体信息例如包括视频、音乐、医疗和游戏信息等等。
内容服务设备830可接收内容,例如包括媒体信息、数字信息和/或其它内容的有线电视节目。内容提供者的例子可包括任何有线或卫星电视或无线电,或者互联网内容提供者。所给出的例子无论如何不旨在对根据本公开的实施方式构成限制。
在各种实现中,平台802可从具有一个或多个导航特征的导航控制器850接收控制信号。例如,可使用控制器850的导航特征来与用户界面822交互。在一些实施例中,导航控制器850可以是定点设备,它可以是允许用户将空间(例如连续和多维)数据输入到计算机中的计算机硬件组件(具体地说是人机接口设备)。许多系统——例如图形用户接口(GUI)以及电视机和监视器——允许用户使用物理姿态控制并将数据提供给计算机或电视机。
控制器850的导航特征的移动可通过显示器上显示的指针、光标、聚焦环或其它视觉指示器的移动在显示器(例如显示器820)上再现。例如,在软件应用816的控制下,位于导航控制器850上的导航特征可例如被映射至显示在用户界面822上的视觉导航特征。在一些实施例中,控制器850可以不是单独组件,但可以被整合到平台802和/或显示器820中。然而,本公开不限于本文所示或描述的元件或背景。
在各实施方式中,驱动器(未示出)可包括,例如,当被启用时允许用户在初始启动之后通过触摸按钮即时打开和关闭平台802(类似电视机)的技术。程序逻辑可允许平台802将内容流送至媒体适配器或其它内容服务设备830或内容传递设备840,即使当平台被“关闭”时。另外,芯片集805可包括对例如8.1环绕声音频和/或高清(7.1)环绕声音频的硬件和/或软件支持。驱动器可包括用于集成的图形平台的图形驱动器。在一些实施例中,图形驱动器可包括外围组件互连(PCI)快速图形卡。
在各实施方式中,系统800中所示组件中的任意一个或多个可被集成。例如,平台802和内容服务设备830可被集成,或者平台802和内容传递设备840可被集成,或者平台802、内容服务设备830和内容传递设备840可被集成。在各实施例中,平台802和显示器820可以是集成单元。例如,显示器820和内容服务设备830可被集成,或者显示器820和内容传递设备840可被集成。这些例子不旨在对本公开构成限制。
在各实施例中,系统800可实现为无线系统、有线系统或两者的组合。当实现为无线系统时,系统800可包括适于在无线共享介质上通信的组件和接口,例如一个或多个天线、发射机、接收机、收发机、放大器、滤波器、控制逻辑等等。无线共享介质的一个例子可包括无线频谱的一些部分,例如RF频谱等。当实现为有线系统时,系统800可包括适于在有线通信介质上通信的组件和接口,例如输入/输出(I/O)适配器、将I/O适配器与相应的有线通信介质连接的物理连接器、网络接口卡(NIC)、盘控制器、视频控制器、音频控制器等。有线通信介质的例子可包括导线、电缆、金属引线、印刷电路板(PCB)、基架(backplane)、交换结构、半导体材料、双绞线、同轴电缆、光纤等。
平台802可建立一个或多个逻辑或物理信道以传递信息。该信息可包括媒体信息和控制信息。媒体信息可指表示针对用户的内容的任何数据。内容的例子可包括例如来自语音转换、视频会议、流视频、电子邮件(email)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等的数据。来自语音转换的数据可以是例如讲话信息、沉默时段、背景噪声、舒适噪声、音调等等。控制信息可指表示针对自动化系统的命令、指令或控制字的任何数据。例如,控制信息可用于使媒体信息路由通过系统,或指示节点以预定方式处理该媒体信息。然而,这些实施方式不限于图8中示出或描述的元件或背景。
参见图9,小形状因数设备900是其中可实现系统800的可变物理式样或形状因数的一个例子。通过这种方法,设备900可实现为具有无线能力的移动计算设备。移动计算设备可指具有处理系统和诸如一个或多个电池的移动功率源或电源的任何设备。
如前所述,移动计算设备的例子可包括个人计算机(PC)、膝上计算机、超级膝上计算机、平板、触摸板、便携式计算机、手持式计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合式蜂窝电话/PDA、电视机、智能设备(例如智能电话、智能平板或智能电视机)、移动互联网设备(MID)、消息收发设备、数据通信设备等。
移动计算设备的例子也可包括被配置成由人们穿戴的计算机,例如手腕式计算机、手指式计算机、戒指式计算机、眼镜式计算机、皮带夹计算机、臂带式计算机、鞋式计算机、服饰式计算机以及其它可穿戴计算机。在各实施例中,例如移动计算设备可被实现为能够执行计算机应用以及语音通信和/或数据通信的智能电话。尽管已经以实现为智能电话的移动计算设备为例描述了一些实施例,但可理解其他实施例也可利用其他无线移动计算设备来实现。这些实施例不限于这种背景。
如图9所示,设备900可包括外壳902、显示器904、输入/输出(I/O)设备906、天线908。设备900也可包括导航特征912。显示器904可包括显示适于移动计算设备的信息的任何适当显示单元。I/O设备906可包括任何适当I/O设备,用以将信息输入到移动计算设备中。I/O设备906的例子可包括字母数字键盘、数字键区、触摸垫、输入键、按钮、开关、摇臂开关、麦克风、扬声器、语音识别设备和软件等。信息也可借助麦克风(未示出)被输入到设备900中。该信息可通过语音识别设备(未示出)数字化。这些实施例不限于这种背景。
本文描述的设备和过程的各种形式可使用硬件部件、软件部件或两者的组合来实现。硬件部件的例子可包括处理器、微处理器、电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片集等等。软件的示例可包括软件组件、程序、应用程序、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、程序、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或它们的任意组合。确定实施例是利用硬件部件和/或软件部件来实现可根据任意数量的因素而不同,这些因素比如所需计算速率、功率电平、热容限、处理循环预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其他设计或性能约束。
至少一个实施例的一个或多个方面可以由存储在机器可读介质上的代表性指令来实现,该介质表示处理器中的各种逻辑,在被机器读取时该指令使得该机器制造用于执行此处所描述的技术的逻辑。被称为“IP核”的这些表示可以被存储在有形的、机器可读的介质上,并被提供给各个消费者或生产设施以加载到实际制造该逻辑或处理器的制造机中。
尽管这里阐述的某些特征已参照各种实施方式予以了描述,然而这种描述不旨在以限定方式解释。因此,对本公开所属领域内技术人员而言显而易见的本文描述的实施方式的多种改型以及其它实施方式被认为落在本公开的精神和范围内。
下面的例子关系到进一步的实施方式。
在一个例子中,用于视频成码的计算机实现方法可包括通过视频编码器接收用于在视频编码器和一个或多个视频解码器之间数据传递的可用比特率。该方法也包括通过视频编码器至少部分地基于可用比特率确定比特率数据限制,以及通过视频编码器从一个切片向不同切片再分配至少一个离散余弦变换(DCT)系数。这种确定是至少部分地基于比特率数据限制作出的。该不同切片关联于数个离散余弦变换系数,并且每个离散余弦变换系数关联于图片的至少一个像素。
在另一例子中,对于计算机实现方法,再分配包括:确定是否存在超过最大比特数的至少一个尺寸过大切片;并从该尺寸过大切片向另一切片移走至少一个DCT系数。再分配也可包括从一个切片向相邻切片移动至少一个DCT系数。离散余弦系数被分组到多个系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且再分配包括将在多个系数块中具有相应位置的多个系数移动到不同的切片。再分配可包括将至少一个切片系数划界移位,所述至少一个切片系数划界延伸通过至少一个块并限定两个相邻切片的边缘,以从一个相邻切片向另一相邻切片移动至少一个系数。图片与多个宏块关联,每个宏块由宏块号表示并关联于构成图片的多个像素。方法包括通过将至少一个宏块号再分配给不同的切片并至少部分地对可用比特率的限制调整至少一个切片的几何尺寸,并且再分配离散余弦变换系数包括与调整几何尺寸分离地再分配离散余弦变换系数。该方法可进一步包括至少部分地基于对可用比特率的限制调整至少一个量子化参数(QP)以调整至少一个切片的压缩。经编码的可缩放视频成码(SVC)比特流也可提供有基层和至少一个增强层,并且再分配关联于至少一个层并且不关联于至少一个其它层。
在其它例子中,用于在计算机上进行视频成码的系统可包括至少一个处理器和通信地耦合至处理器的至少一个存储器。切片数据提供至少两个切片,每个切片具有数个离散余弦变换系数,并且每个离散余弦变换系数关联于图片的至少一个像素。离散余弦变换系数再分布模块可通信地耦合至处理器并被配置成接收用于视频编码器和至少一个视频解码器之间数据传递的可用比特率。也至少部分地基于可用比特率确定比特率数据限制,并至少部分地基于比特率数据限制从一个切片向不同切片再分配至少一个离散余弦变换系数。
在又一例子中,用于在计算机上进行视频成码的系统可进一步包括配置离散余弦变换再分布模式,以确定是否存在具有超过最大比特数的至少一个尺寸过大切片,并从该尺寸过大切片向另一切片移走至少一个离散余弦变换系数。离散余弦变换再分布模块被配置成从一个切片向相邻切片移动至少一个离散余弦变换系数。离散余弦变换系数被分组到系数块中,每个系数块具有相同数量的系数并具有相同配置。在这种情形下,离散余弦变换系数再分布模块被配置成将在多个系数块中具有相应位置的多个系数移动到不同的切片。另外,离散余弦变换系数再分布模块被配置成移位切片系数划界,该切片系数划界延伸通过至少一个块并限定两个相邻切片的边缘以从一个相邻切片向另一相邻切片移动至少一个系数。图片与多个宏块关联,每个宏块由宏块号表示并关联于构成图片的多个像素。系统包括宏块再分配模块,其被配置成通过将至少一个宏块号再分配给不同切片并至少部分地基于可用比特率限制调整至少一个切片的几何尺寸。离散系数变换再分布模块与通过宏块再分配模块移动宏块以调整几何尺寸分离地在切片间移动离散余弦变换系数。系统包括量子化参数(QP)控制模块,其被配置成至少部分地基于对可用比特率的限制调整至少一个量子化参数以调整至少一个切片的压缩。另外,系统包括具有基层和至少一个增强层的经编码可缩放视频成码(SVC)比特流,并且其中离散余弦变换系数再分布模块被配置成对至少一个层并且不是所有层再分配系数。
在又一例子中,其中存储带指令的计算机程序的用于视频成码的至少一个非瞬态制品或其它机器可读介质,当指令被执行时,导致通过视频编码器接收用于视频编码器和一个或多个视频解码器之间数据传递的可用比特率。制品也包括通过视频编码器至少部分地基于可用比特率确定比特率数据限制,以及通过视频编码器从一个切片向不同切片再分配至少一个离散余弦变换(DCT)系数。这种确定是至少部分地基于比特率数据限制作出的。该不同切片关联于数个离散余弦变换系数,并且每个离散余弦变换系数关联于图片的至少一个像素。
在另一例子中,用于视频成码的至少一个非瞬态制品或其它机器可读介质也包括指令,当该指令被执行时导致再分配,再分配包括确定是否存在超过最大比特数的至少一个尺寸过大切片,并从尺寸过大切片向另一切片移走至少离散余弦变换系数。再分配也包括从一个切片向相邻切片移动至少一个离散余弦变换系数。离散余弦系数被分组到系数块中,每个系数块具有相同数量的系数和相同的配置,并且再分配包括将在多个系数块中具有相应位置的多个系数移动到不同的切片。再分配也包括将切片系数划界移位,所述切片系数划界延伸通过至少一个块并限定两个相邻切片的边缘,以从一个相邻切片向另一相邻切片移动至少一个系数。图片关联于多个宏块,每个宏块由宏块号表示并关联于形成图片的多个像素,并且这些指令导致通过再分配至少一个宏块号至不同的切片并至少部分地基于对可用比特率的限制来调整至少一个切片的几何尺寸。离散余弦变换系数的再分配是与调整几何尺寸分离地执行的。指令也导致至少部分地基于对可用比特率的限制调整至少一个量子化参数(QP)以调整至少一个切片的压缩。指令导致提供具有基层和至少一个增强层的经编码可缩放视频成码(SVC)比特流。再分配关联于至少一个层并且不关联于至少一个其它层。
在又一例子中,至少一个机器可读介质可包括多个指令,这些指令响应于在计算设备上执行而使计算设备执行根据前述例子中的任何一个例子的方法。
在又一例子中,装置可包括执行根据前述例子中任何一个例子的装置。
前述例子可包括特征的具体组合。然而,前述例子不限于这个方面,并且在各实施方式中,前面的例子可包括仅执行这些特征的子集,执行这些特征的不同顺序,执行这些特征的不同组合和/或执行明示列出的那些特征以外的附加特征。例如,本文中结合任何示例性方法描述的所有特征可对于任何示例性装置、示例性系统和/或示例性制品来实现,反之亦然。

Claims (31)

1.一种用于视频成码的计算机实现的方法,包括:
通过视频编码器接收用于所述视频编码器和一个或多个视频解码器之间数据传递的可用比特率;
通过视频编码器至少部分地基于所述可用比特率确定比特率数据限制;以及
通过所述视频编码器至少部分地基于比特率数据限制从一个切片向不同切片再分配至少一个离散余弦变换(DCT)系数,其中所述不同切片关联于数个离散余弦变换系数,并且每个离散余弦变换系数关联于图片的至少一个像素。
2.如权利要求1所述的方法,其特征在于,再分配包括:确定是否存在超过最大比特数的至少一个尺寸过大的切片;并从所述尺寸过大切片向另一切片移走至少一个DCT系数。
3.如权利要求1所述的方法,其特征在于,所述不同切片与所述一个切片相邻。
4.如权利要求1所述的方法,其特征在于,所述离散余弦系数被分组到系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且再分配包括将在多个系数块中具有相应位置的多个系数移动到不同的切片。
5.如权利要求1所述的方法,其特征在于,所述离散余弦系数被分组到系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且再分配包括移位切片系数划界,所述切片系数划界延伸通过至少一个块并限定两个相邻切片的边缘,以从一个相邻切片向另一相邻切片移动至少一个系数。
6.如权利要求1所述的方法,其特征在于,所述图片关联于多个宏块,每个宏块由宏块号表示并关联于构成图片的多个像素,并且所述方法包括通过将至少一个宏块号再分配给不同的切片并至少部分地基于对可用比特率的限制来调整至少一个切片的几何尺寸,并且再分配离散余弦变换系数包括与调整所述几何尺寸分离地再分配离散余弦变换系数。
7.如权利要求1所述的方法,其特征在于,还包括至少部分地基于对可用比特率的限制调整至少一个量子化参数(QP)以调整至少一个切片的压缩。
8.如权利要求1所述的方法,其特征在于,所述图片关联于多个宏块,每个宏块由宏块号表示并关联于构成图片的多个像素,并且所述方法包括通过将至少一个宏块号再分配给不同的切片并至少部分地基于对可用比特率的限制来调整至少一个切片的几何尺寸,并且再分配离散余弦变换系数包括与调整所述几何尺寸分离地再分配离散余弦变换系数;以及
至少部分地基于对可用比特率的限制调整至少一个量子化参数(QP)以调整至少一个切片的压缩。
9.如权利要求1所述的方法,其特征在于,还包括提供具有基层和至少一个增强层的经编码的可缩放视频成码(SVC)比特流,并且所述再分配关联于至少一个层并且不关联于至少一个其它层。
10.如权利要求1所述的方法,其特征在于,再分配包括:确定是否存在超过最大比特数的至少一个尺寸过大的切片;并从所述尺寸过大切片向另一切片移走至少一个DCT系数;
其中再分配包括从一个切片向相邻切片移动至少一个DCT系数;
其中所述离散余弦系数被分组到系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且再分配包括将在多个系数块中具有相应位置的多个系数移动到不同的切片;
其中再分配包括将至少一个切片系数划界移位,所述切片系数划界延伸通过至少一个块并限定两个相邻切片的边缘,以从一个相邻切片向另一相邻切片移动至少一个系数;
其中所述图片关联于多个宏块,每个宏块由宏块号表示并关联于构成图片的多个像素,并且所述方法包括通过将至少一个宏块号再分配给不同的切片并至少部分地基于对可用比特率的限制来调整至少一个切片的几何尺寸,并且再分配离散余弦变换系数包括与调整所述几何尺寸分离地再分配离散余弦变换系数;
其中所述方法包括至少部分地基于对可用比特率的限制调整至少一个量子化参数(QP)以调整至少一个切片的压缩;以及
其中所述方法包括提供具有基层和至少一个增强层的经编码的可缩放视频成码(SVC)比特流,并且所述再分配关联于至少一个层并且不关联于至少一个其它层。
11.一种在计算机上进行视频成码的系统:
显示器;
通信地耦合至所述显示器的至少一个处理器;
通信地耦合至所述处理器的至少一个存储器;
提供至少两个切片的切片数据,每个切片具有数个离散余弦变换系数,并且每个离散余弦变换系数关联于图片的至少一个像素;以及
离散余弦变换系数再分布模块,通信地耦合至处理器并被配置成:
接收用于视频编码器和至少一个视频解码器之间数据传递的可用比特率,
至少部分地基于所述可用比特率确定比特率数据限制;以及
至少部分地基于所述比特率数据限制从一个切片向不同切片再分配至少一个离散余弦变换系数。
12.如权利要求11所述的系统,其特征在于,所述离散余弦变换再分布模块被配置成:确定是否存在超过最大比特数的至少一个尺寸过大切片;并从所述尺寸过大切片向另一切片移走至少一个离散余弦变换系数。
13.如权利要求11所述的系统,其特征在于,所述离散余弦变换再分布模块被配置成从一个切片向相邻切片移动至少一个离散余弦变换系数。
14.如权利要求11所述的系统,其特征在于,所述离散余弦系数被分组到系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且所述离散余弦变换系数再分布模块被配置成将在多个系数块中具有相应位置的多个系数移动到不同的切片。
15.如权利要求11所述的系统,其特征在于,所述离散余弦系数被分组到系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且所述离散余弦变换系数再分布模块被配置成移位切片系数划界,所述切片系数划界延伸通过至少一个块并限定两个相邻切片的边缘,以从一个相邻切片向另一相邻切片移动至少一个系数。
16.如权利要求11所述的系统,其特征在于,所述图片关联于多个宏块,每个宏块由宏块号表示并关联于构成图片的多个像素,并且所述系统包括宏块再分配模块,其被配置成通过将至少一个宏块号再分配给不同切片并至少部分地基于对可用比特率的限制来调整至少一个切片的几何尺寸,并且所述离散余弦变换系数再分布模块与通过所述宏块再分配模块移动宏块以调整所述几何尺寸分离地在切片间移动离散余弦变换系数。
17.如权利要求11所述的系统,其特征在于,包括量子化参数(QP)控制模块,被配置成至少部分地基于对可用比特率的限制调整至少一个量子化参数以调整至少一个切片的压缩。
18.如权利要求11所述的系统,其特征在于,所述图片与多个宏块关联,每个宏块由宏块号表示并关联于构成图片的多个像素,并且所述系统包括:
宏块再分配模块,配置成通过将至少一个宏块号再分配给不同切片并至少部分地基于对所述可用比特率的限制来调整至少一个切片的几何尺寸,所述离散余弦变换系数再分布模块与通过所述宏块再分配模块移动宏块以调整所述几何尺寸分离地在切片间移动离散余弦变换系数;以及
量子化参数控制模块,被配置成至少部分地基于对可用比特率的限制调整至少一个量子化参数以调整至少一个切片的压缩。
19.如权利要求11所述的系统,其特征在于,包括具有基层和至少一个增强层的经编码可缩放视频成码(SVC)比特流,并且所述离散余弦变换系数再分布模块被配置成对至少一个层并且不是所有层再分配系数。
20.如权利要求11所述的系统,其特征在于,所述离散余弦变换再分布模块被配置成:确定是否存在超过最大比特数的至少一个尺寸过大切片;并从所述尺寸过大切片向另一切片移走至少一个离散余弦变换系数;
所述离散余弦变换再分布模块被配置成从一个切片向相邻切片移动至少一个离散余弦变换系数;
所述离散余弦变换系数被分组到系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且所述离散余弦变换系数再分布模块被配置成将在多个系数块中具有相应位置的多个系数移动到不同的切片;
所述离散余弦变换系数再分布模块被配置成移位切片系数划界,所述切片系数划界延伸通过至少一个块并限定两个相邻切片的边缘以从一个相邻切片向另一相邻切片移动至少一个系数;
所述图片关联于多个宏块,每个宏块由宏块号表示并关联于构成图片的多个像素,所述系统包括宏块再分配模块,其被配置成通过将至少一个宏块号再分配给不同切片并至少部分地基于对可用比特率的限制来调整至少一个切片的几何尺寸,并且所述离散余弦变换系数再分布模块与通过所述宏块再分配模块移动宏块以调整所述几何尺寸分离地移动离散余弦变换系数;
所述系统包括量子化参数(QP)控制模块,其被配置成至少部分地基于对可用比特率的限制调整至少一个量子化参数以调整至少一个切片的压缩;以及
所述系统包括具有基层和至少一个增强层的经编码可缩放视频成码(SVC)比特流,并且所述离散余弦变换系数再分布模块被配置成对至少一个层并且不是所有层再分配系数。
21.至少一种机器可读存储介质,包括:
存储在所述机器可读存储介质上的多个指令,所述指令响应于在计算设备上的执行使所述计算设备执行如权利要求1-10中任何一项所述的方法。
22.一种用于视频成码的计算机实现的系统,包括:
用于通过视频编码器接收用于所述视频编码器和一个或多个视频解码器之间数据传递的可用比特率的装置;
用于通过视频编码器至少部分地基于所述可用比特率确定比特率数据限制的装置;以及
用于通过所述视频编码器至少部分地基于比特率数据限制从一个切片向不同切片再分配至少一个离散余弦变换(DCT)系数的装置,其中所述不同切片关联于数个离散余弦变换系数,并且每个离散余弦变换系数关联于图片的至少一个像素。
23.如权利要求22所述的系统,其特征在于,用于再分配的装置包括:用于确定是否存在超过最大比特数的至少一个尺寸过大的切片的装置;以及用于从所述尺寸过大切片向另一切片移走至少一个DCT系数的装置。
24.如权利要求22所述的系统,其特征在于,所述不同切片与所述一个切片相邻。
25.如权利要求22所述的系统,其特征在于,所述离散余弦系数被分组到系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且用于再分配的装置包括用于将在多个系数块中具有相应位置的多个系数移动到不同的切片的装置。
26.如权利要求22所述的系统,其特征在于,所述离散余弦系数被分组到系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且用于再分配的装置包括用于移位切片系数划界的装置,所述切片系数划界延伸通过至少一个块并限定两个相邻切片的边缘,以从一个相邻切片向另一相邻切片移动至少一个系数。
27.如权利要求22所述的系统,其特征在于,所述图片关联于多个宏块,每个宏块由宏块号表示并关联于构成图片的多个像素,并且所述系统包括用于通过将至少一个宏块号再分配给不同的切片并至少部分地基于对可用比特率的限制来调整至少一个切片的几何尺寸的装置,并且用于再分配离散余弦变换系数的装置包括用于与调整所述几何尺寸分离地再分配离散余弦变换系数的装置。
28.如权利要求22所述的系统,其特征在于,还包括用于至少部分地基于对可用比特率的限制调整至少一个量子化参数(QP)以调整至少一个切片的压缩的装置。
29.如权利要求22所述的系统,其特征在于,所述图片关联于多个宏块,每个宏块由宏块号表示并关联于构成图片的多个像素,并且所述系统包括用于通过将至少一个宏块号再分配给不同的切片并至少部分地基于对可用比特率的限制来调整至少一个切片的几何尺寸的装置,并且用于再分配离散余弦变换系数的装置包括用于与调整所述几何尺寸分离地再分配离散余弦变换系数的装置;以及
用于至少部分地基于对可用比特率的限制调整至少一个量子化参数(QP)以调整至少一个切片的压缩的装置。
30.如权利要求22所述的系统,其特征在于,还包括用于提供具有基层和至少一个增强层的经编码的可缩放视频成码(SVC)比特流的装置,并且其中所述再分配关联于至少一个层并且不关联于至少一个其它层。
31.如权利要求22所述的系统,其特征在于,用于再分配的装置包括:用于确定是否存在超过最大比特数的至少一个尺寸过大的切片的装置;以及用于从所述尺寸过大切片向另一切片移走至少一个DCT系数的装置;
其中用于再分配的装置包括用于从一个切片向相邻切片移动至少一个DCT系数的装置;
其中所述离散余弦系数被分组到系数块中,每个系数块具有相同数量的系数和处于相同的配置,并且用于再分配的装置包括用于将在多个系数块中具有相应位置的多个系数移动到不同的切片的装置;
其中用于再分配的装置包括用于将至少一个切片系数划界移位的装置,所述切片系数划界延伸通过至少一个块并限定两个相邻切片的边缘,以从一个相邻切片向另一相邻切片移动至少一个系数;
其中所述图片关联于多个宏块,每个宏块由宏块号表示并关联于构成图片的多个像素,并且所述系统包括用于通过将至少一个宏块号再分配给不同的切片并至少部分地基于对可用比特率的限制来调整至少一个切片的几何尺寸的装置,并且用于再分配离散余弦变换系数的装置包括用于与调整所述几何尺寸分离地再分配离散余弦变换系数的装置;
其中所述系统包括用于至少部分地基于对可用比特率的限制调整至少一个量子化参数(QP)以调整至少一个切片的压缩的装置;并且
其中所述系统包括用于提供具有基层和至少一个增强层的经编码的可缩放视频成码(SVC)比特流的装置,并且所述再分配关联于至少一个层并且不关联于至少一个其它层。
CN201410203500.5A 2013-05-15 2014-05-14 用于视频成码的切片级比特率控制 Expired - Fee Related CN104168479B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/895,094 US20140341302A1 (en) 2013-05-15 2013-05-15 Slice level bit rate control for video coding
US13/895,094 2013-05-15

Publications (2)

Publication Number Publication Date
CN104168479A CN104168479A (zh) 2014-11-26
CN104168479B true CN104168479B (zh) 2019-01-18

Family

ID=50735912

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410203500.5A Expired - Fee Related CN104168479B (zh) 2013-05-15 2014-05-14 用于视频成码的切片级比特率控制

Country Status (3)

Country Link
US (1) US20140341302A1 (zh)
EP (1) EP2804384A1 (zh)
CN (1) CN104168479B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9510004B2 (en) * 2013-06-12 2016-11-29 Microsoft Technology Licensing, Llc Multi-layered rate control for scalable video coding
EP3085096A1 (en) * 2013-12-18 2016-10-26 Intel Corporation Techniques for image bitstream processing
WO2015177966A1 (ja) * 2014-05-23 2015-11-26 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 画像符号化方法及び画像符号化装置
US10531088B2 (en) * 2015-01-16 2020-01-07 Intel Corporation Encoder slice size control with cost estimation
US20170085886A1 (en) * 2015-09-18 2017-03-23 Qualcomm Incorporated Variable partition size for block prediction mode for display stream compression (dsc)
CN107124414B (zh) * 2017-04-28 2020-04-10 山东交通学院 一种基于svc数据特性的p2p流媒体分片及调度方法
CN109379591B (zh) * 2018-10-23 2021-08-06 深圳市网心科技有限公司 图片转码方法、电子装置及计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101389031A (zh) * 2007-09-14 2009-03-18 浙江大学 一种对变换系数的处理方法及装置
CN102685503A (zh) * 2011-03-10 2012-09-19 华为技术有限公司 变换系数的编码方法、变换系数的解码方法,和装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100252108B1 (ko) * 1997-12-20 2000-04-15 윤종용 Mpeg 압축부호화 및 복호화기를 채용한 디지털 기록 재생장치 및 그 방법
US6275614B1 (en) * 1998-06-26 2001-08-14 Sarnoff Corporation Method and apparatus for block classification and adaptive bit allocation
WO2006048807A1 (en) * 2004-11-04 2006-05-11 Koninklijke Philips Electronics N.V. Method and device for processing coded video data
US7746928B2 (en) * 2004-12-30 2010-06-29 General Instruments Corporation Method and apparatus for providing rate control
US8428125B2 (en) * 2006-12-22 2013-04-23 Qualcomm Incorporated Techniques for content adaptive video frame slicing and non-uniform access unit coding
CN101340571B (zh) * 2008-08-15 2012-04-18 北京中星微电子有限公司 一种码率控制方法及控制装置
CN101765026B (zh) * 2008-12-24 2011-07-27 中国移动通信集团公司 一种图像质量评价值的修正方法和修正系统
EP2257073A1 (en) * 2009-05-25 2010-12-01 Canon Kabushiki Kaisha Method and device for transmitting video data
US20140146891A1 (en) * 2011-06-10 2014-05-29 Mediatek Inc. Method and Apparatus of Scalable Video Coding
US9462298B2 (en) * 2011-10-21 2016-10-04 Qualcomm Incorporated Loop filtering around slice boundaries or tile boundaries in video coding
CN102932641B (zh) * 2012-11-13 2016-04-06 北京大学 一种恒定质量码率控制方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101389031A (zh) * 2007-09-14 2009-03-18 浙江大学 一种对变换系数的处理方法及装置
CN102685503A (zh) * 2011-03-10 2012-09-19 华为技术有限公司 变换系数的编码方法、变换系数的解码方法,和装置

Also Published As

Publication number Publication date
US20140341302A1 (en) 2014-11-20
EP2804384A1 (en) 2014-11-19
CN104168479A (zh) 2014-11-26

Similar Documents

Publication Publication Date Title
CN104168479B (zh) 用于视频成码的切片级比特率控制
CN104219524B (zh) 使用感兴趣对象的数据对视频成码的比特率控制
CN108293138B (zh) 有效和可缩放帧内视频/图像编码
CN104885471B (zh) 用于下一代视频的编码/未编码的数据的内容自适应熵编码
CN108293120B (zh) 使用小波和可变尺寸变换编码的高效帧内视频/图像编码
CN104854866B (zh) 下一代视频的内容自适应、特性补偿预测
KR101731335B1 (ko) 스케일러블 비디오 코딩의 층 간 예측을 위한 리파이닝 필터
US10827186B2 (en) Method and system of video coding with context decoding and reconstruction bypass
CN104541505B (zh) 层间内部模式预测方法、设备及装置
CN110740318A (zh) 用于视频处理和视频译码的自动自适应长期参考帧选择
WO2014088772A1 (en) Matched filtering of prediction and reconstruction signals for next generation video
US9532048B2 (en) Hierarchical motion estimation employing nonlinear scaling and adaptive source block size
US9398311B2 (en) Motion and quality adaptive rolling intra refresh
TW201424397A (zh) 可調式視訊解碼、編碼方法及其裝置與非暫時性電腦可讀記錄體
CN104541506A (zh) 层间像素样本预测
CN104584552A (zh) 可伸缩视频编码的层间采样自适应滤波参数重复使用
KR20190015218A (ko) 비디오 코딩을 위해 이웃 블록 패턴을 이용하는 모션 추정 방법 및 시스템
US10536710B2 (en) Cross-layer cross-channel residual prediction
TWI559749B (zh) 層間移動資料繼承之技術
CN107409212A (zh) 用于编码和解码的使用变换系数的逐渐更新
KR20150070313A (ko) 다수의 독립 코딩 스트림들 사이에서 공유된 모션 추정을 포함하는 비디오 코딩
US9860533B2 (en) Cross-layer cross-channel sample prediction
CN104717501A (zh) 层间像素样本预测

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190118

Termination date: 20190514