CN111510730A - 用于修改二进制视频流的方法、设备、系统和存储介质 - Google Patents

用于修改二进制视频流的方法、设备、系统和存储介质 Download PDF

Info

Publication number
CN111510730A
CN111510730A CN201911394030.4A CN201911394030A CN111510730A CN 111510730 A CN111510730 A CN 111510730A CN 201911394030 A CN201911394030 A CN 201911394030A CN 111510730 A CN111510730 A CN 111510730A
Authority
CN
China
Prior art keywords
filtering
video stream
binary video
decoding
syntax element
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911394030.4A
Other languages
English (en)
Other versions
CN111510730B (zh
Inventor
D·沙尔梅特
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.)
Sagemcom Broadband SAS
Original Assignee
Sagemcom Broadband SAS
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 Sagemcom Broadband SAS filed Critical Sagemcom Broadband SAS
Publication of CN111510730A publication Critical patent/CN111510730A/zh
Application granted granted Critical
Publication of CN111510730B publication Critical patent/CN111510730B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • 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/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)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

用于修改二进制视频流的方法、设备、系统和存储介质。本发明涉及一种用于修改根据视频编码算法所编码的二进制视频流的方法,所述视频编码算法包括预测环路以及集成在该预测环路中的环内后滤波。该方法包括由设备执行的下列步骤:在二进制视频流中搜索与环内后滤波有关的语法元素,该语法元素被解码设备用来控制实现环内后滤波的复杂度;以及修改(321、323、325)所述语法元素的值或者删除(321、323、325)所述语法元素。

Description

用于修改二进制视频流的方法、设备、系统和存储介质
本申请是原案申请号为201580011907.0的发明专利申请(国际申请号:PCT/EP2015/054323,申请日:2015年3月2日,发明名称:用于修改二进制视频流的方法、设备、系统和存储介质)的分案申请。
技术领域
本发明涉及一种用于调节先前压缩的视频流的解码的复杂度的方法和设备。
背景技术
近来的视频数据压缩方法(诸如H.264/AVC标准(ISO/IEC 14496-10–MPEG-4部分10、高级视频编码/ITU-T H.264)或者新兴的HEVC标准(ISO/IEC 23008-2–MPEG-H部分2、高效视频编码/ITU-T H.265))已经提供了对压缩性能的显著改善。这些方法使用这样的视频编码方法:允许在压缩(即编码)后视频数据的发送速率降低,同时在解压缩(即解码)后在图像渲染质量方面保留这些视频数据。
然而,该性能的改善(基本上是由于现有压缩工具的改善以及新的压缩工具的集成)导致了复杂度增加并因此导致了这些压缩方法对存储资源以及处理资源的需求增加。这些方法实际上具有非常高的计算成本并且需要在存储器中存储大量的数据。为了实现这些方法,必须提供具有适合的计算能力和存储能力的解码设备。
然而,通常针对编码和解码设备的成本价格的问题,调整计算能力和存储能力的大小使得正好合适,这使得编码和解码设备无法提供超越针对这些编码和解码设备被设计的功能的功能。
另一方面,重要的是向视频应用的用户提供新颖和创新的先进功能,以便延续他们对这些应用的兴趣。这是因为,尽管在过去这些用户满足于简单的视频显示功能,但这些用户现在可能寻求更多的交互显示功能,例如允许加速观看视频(“特技模式”)、根据画中画模式将一视频嵌入到另一视频中、或者例如以马赛克模式并行观看多个视频。这些新的显示功能对视频应用的计算机能力的需求以及存储能力的需求增加。例如,视频的加速观看可能需要以超过与视频的实时显示的帧速率相对应的帧速率来对该视频解码。将一视频嵌入到另一视频中需要在以两个单独的视频流的形式接收所述视频时并行地进行两个解码。类似地,显示视频的马赛克可能需要并行地进行多个视频解码。
许多解码设备因为它们的计算能力和存储能力的不足而无法访问这些先进的显示功能。因此,提出使得能够在不需要更换解码设备的情况下访问这些服务的解决方案将是有利的。
发明内容
该问题通过由以下操作构成的本发明得以解决:当视频解码设备被用于例如实现要求高计算输入的显示功能时,确保二进制视频流与视频解码设备的计算能力和选择性地存储能力的兼容性。
为此,根据本发明的第一方面,本发明涉及一种用于修改根据视频编码算法的二进制视频流的方法,所述视频编码算法包括预测环路和集成在所述预测环路中的环内后滤波。所述方法包括由设备执行的下列步骤:在所述二进制视频流中搜索与所述环内后滤波有关的语法元素,所述语法元素被解码设备用于控制实现所述环内后滤波的复杂度;以及修改所述二进制视频流中的所述语法元素的值或者去除所述语法元素,以便获得由所述解码设备实现所述环内后滤波的所述复杂度的降低。
与环内后滤波有关的语法元素的修改或去除使得能够向解码设备指示可以实现简化的环内后滤波或者不能实现环内后滤波,这将降低解码复杂度。该方法由于不需要二进制视频流的解码和完全重新编码而具有低的计算成本。
根据一个实施方式,所述环内后滤波包括去块滤波和/或SAO(采样自适应偏移)滤波。
通过使得能够控制多个环内后滤波方法,所述方法使得能够对解码复杂度的降低进行细微地调整。
根据一个实施方式,所述去块滤波弱化像素的块之间的不连续,并且包括较强地弱化像素的块之间的不连续的高复杂度的滤波、和较弱地弱化像素的块之间的不连续的低复杂度的滤波,当语法元素的值已经被修改并且所述语法元素与去块滤波有关时,修改所述值以便与所述高复杂度去块滤波相比偏爱由解码设备使用所述低复杂度去块滤波。
通过该方式,使用去块滤波的复杂度被降低,同时允许所述块之间的不连续的最小的弱化。
根据一个实施方式,当语法元素的值已经被修改并且所述语法元素与去块滤波有关或者与SAO滤波有关时,修改所述语法元素的值使得能够通过解码设备分别将所述去块滤波的使用或者所述SAO滤波的使用去激活。
该方法因此使得能够将通过解码设备对去块滤波和/或对SAO滤波的使用去激活,这使得能够降低解码复杂度。
根据一个实施方式,当语法元素被去除并且所述语法元素与去块滤波有关或者与SAO滤波有关时,所述语法元素的去除使得能够通过解码设备分别将所述去块滤波的使用或者所述SAO滤波的使用去激活。
该方法于是使得能够将解码设备对去块滤波和/或SAO滤波的使用去激活,这使得能够降低解码的复杂度。此外,具体地当所省略的语法元素是与像素的块的SAO滤波有关的语法元素时,所述方法通过省略语法元素使得能够降低二进制视频流的帧速率。
根据一个实施方式,经修改的语法元素的值和/或省略的语法元素取决于表示对降低解码复杂度的需求的信息。
通过该方式,所述方法是自适应的。
根据一个实施方式,降低解码复杂度的需求取决于用户为了在显示设备上显示于所述二进制视频流相对应的图像所要求的显示功能。
通过该方式,解码复杂度的降低适应于用户的需求。
根据一个实施方式,所述方法还包括下列步骤:接收接收设备的二进制视频流,该二进制视频流通过通信网络被所述接收设备接收;以及将从通过修改方法修改二进制视频流得到的经修改的二进制视频流发送至解码设备。
通过该方式,所接收到的二进制视频流在被提供至解码设备之前根据用户的需求进行了调整。因此在发送初始二进制视频之前不必修改如由视频编码器所生成的其它用户可能希望以最大质量进行解码的所述初始二进制视频。
根据一个实施方式,所述方法还包括下列步骤:从编码设备接收二进制视频流;通过通信网络接收表示降低解码复杂度的需求的信息;以及为了通过所述通信网络发送经修改的二进制视频流,将从通过所述修改方法修改二进制视频流所得到的经修改的二进制视频流发送至发送设备。
在通过网络发送二进制视频流之前使用所述方法使得能够通过所述网络不发送不必要的语法元素。
根据一个实施方式,所述视频编码算法基于H.264/AVC标准或基于HEVC标准。
因此,所述方法适合于两种非常普遍的压缩标准。具体地,当所述方法被应用于根据H.264/AVC标准的视频流时,由于在这种情况下,对所述二进制视频流进行的修改仅涉及报头数据并因此无需彻底读取所述二进制视频流,因此使用所述方法具有非常低的计算成本。
根据本发明的第二方面,本发明涉及一种用于修改根据包括预测环路以及集成在该预测环路中的环内后滤波的视频编码算法编码的二进制视频流的设备。所述设备包括:用于在搜索与所述环内后滤波有关的语法元素的装置,所述语法元素被解码设备用于控制使用所述环内后滤波的复杂度;以及用于修改所述语法元素的值的装置和/或用于去除所述语法元素的装置,以便获得所述解码设备使用环内后滤波的复杂度的降低。
所述修改设备具有与关于第一方面所提及的那些优点相同的优点。
根据本发明的第三方面,本发明涉及一种为了通过显示设备显示而用于传送二进制视频流的系统,所述二进制视频流根据视频编码算法被编码,所述视频编码算法包括预测环路以及集成在所述预测环路中的环内后滤波,所述系统包括解码设备,所述解码设备能够对二进制视频流解码并且能够将与所述二进制视频流的解码结果相对应的图像发送给所述显示设备。所述系统包括根据所述第二方面的用于修改二进制视频流的设备,修改设备能够将从修改设备修改二进制视频流得到的经修改的二进制视频流提供给解码设备。
所述通信系统具有与关于第一方面所提及的那些优点相同的优点。
根据本发明的第四方面,本发明涉及一种计算机程序产品。所述计算机产品包括用于当所述程序被设备的处理器执行时通过所述设备实现根据所述第一方面的方法的指令。
所述计算机程序产品具有与关于第一方面所提及的那些优点相同的优点。
根据本发明的第五方面,本发明涉及存储装置。所述存储装置存计算机程序,所述计算机程序包括用于当所述程序被设备的处理器执行时通过所述设备实现根据所述第一方面的方法的指令。
所述存储装置具有与关于第一方面所提及的那些优点相同的优点。
附图说明
上述本发明的特征以及其它特征将通过阅读下面的示例性实施方式的描述而更清晰地呈现,结合附图给出所述描述,其中:
图1A示例性地描绘了包括实现本发明的设备的第一视频传输系统,
图1B示例性地描绘了包括实现本发明的设备的第二视频传输系统,
图2示例性地描绘了能够实现本发明的设备,
图3示例性地描绘了当视频解码设备被用于实现要求高计算输入的显示功能时,用于确保二进制视频流与视频解码设备的计算能力和选择性地存储能力的兼容性的方法,
图4示例性地示出了在HEVC编码期间视频图像所经历的连续划分,
图5示例性地描绘了与HEVC标准兼容的用于对视频流编码的方法,
图6示例性地描绘了根据HEVC标准的解码方法,
图7示例性地描绘了修改视频流并因此使得能够通过去块滤波器类型的后滤波方法的简单化而获得所述视频流的解码的复杂度的降低的算法,
图8示例性地描绘了修改视频流并因此使得能够通过防止使用去块滤波器类型的后滤波方法而获得所述视频流的解码的复杂度的降低的算法,以及
图9示例性地描绘了修改视频流并因此使得能够通过防止使用SAO滤波器类型的后滤波方法而获得所述视频流的解码的复杂度的降低的算法。
具体实施方式
本发明处于视频压缩以及使用经压缩的视频的应用(诸如视频传输(流传输)应用)的领域。本发明适用于使用环内后滤波的视频压缩方法,诸如H.264/AVC和HEVC。
图4、图5和图6描述了实现HEVC标准的示例。
图4示出了当根据HEVC标准进行编码时,原始视频401的像素图像402所经历的连续划分。此处认为像素是由三个分量组成:一个亮度分量和两个色度分量。在图4中的示例中,图像402首先被划分成三片。片是图像的可以覆盖整个图像或者仅覆盖图像的一部分的区域,诸如图4中的片403。片包括选择性地跟随有其它片段的至少一个片段。在片中的第一位置处的片段被称为独立片段。独立片段(诸如片403中的片段IS1)包括完整的报头,诸如报头408。该报头408包括使得片能够被解码的一组语法元素。片中的任何其它片段(诸如图4中的片403中的DS2、DS3、DS4、DS5和DS6)都被称为从属片段,这是由于它们仅具有部分报头,该部分报头参考片中的它们之前的从属片段的报头(此处为报头408)。在H.264/AVC标准中,仅存在片的概念,片必定包括完整的报头并且不能被划分。
应注意的是,图像的每一个片都可以独立于相同图像中的任何其它片而被解码。然而,在片中使用环内后滤波可能需要使用另一片的数据。
在将图像402划分成片之后,图像的各个片的像素被划分成编码树块(CTB),诸如图4中的一组块404。在下文中,为了简化,我们将使用缩写CTB来表示编码树块。CTB(诸如图4中的CTB 409)是像素的正方形,该正方形具有大小等于2的幂并且大小可以在从16至64个像素的范围内的边长。CTB可以以四叉树的形式被划分成一个或更多个编码单位。编码单位是像素的正方形,该正方形具有大小等于2的幂并且其大小可以在从8至64个像素的范围内的边长。编码单位(诸如图4中的编码单位405)接下来可以被划分成在空间或时间预测期间所使用的预测单位,以及被划分成在频域中变换像素块期间所使用的变换单位(TU)。
在图像的编码期间,划分是自适应的,也就是说,各个CTB被划分以便优化该CTB的压缩性能。在下文中,为了简化,我们将认为每个CTB都被划分成一个编码单位,并且该编码单位被划分成一个变换单位和一个预测单位。
图5示例性地描绘了与编码设备所使用的HEVC标准兼容的用于对视频流编码的方法。视频的当前图像501的编码开始于(如关于图4所描述的)步骤502期间当前图像501的划分。为了简化,在图5的其余的描述中以及图6的描述中,我们不区分CTB、编码单位、变换单位和预测单位并且我们将这四个实体一起分组在术语块下。因此,当前图像501被划分成块。针对各个块,编码设备必须在图像帧内编码模式(INTRA编码模式)与图像帧间编码模式(被称为INTER编码模式)之间确定编码模式。
INTRA编码模式包括:在步骤503期间,根据INTRA预测方法从预测块预测当前块的像素,所述预测块从与要被编码的块因果相邻的重构块的像素获得。INTRA预测的结果是指示使用相邻块的哪些像素的预测方向,以及由当前块与预测块之间的差的计算得出的残差块。
INTER编码模式包括从当前图像之前或之后的图像(该图像被称为参考图像)的被称为参考块的像素块预测当前块的像素。在根据INTER编码模式的当前块的编码期间,通过运动估计步骤504确定与当前块最近(根据相似准则)的参考图像的块。在步骤504期间,确定指示参考块在参考图像中的位置的运动矢量。所述运动矢量在运动补偿步骤505期间被使用,在该运动补偿步骤期间,以当前块与参考块之间的差的形式计算出残差块。应注意的是,此处我们已经描述了单预测帧间编码模式。还存在双预测帧间编码模式(或B模式),针对该模式,当前块与两个运动矢量相关联,所述两个运动矢量在两个不同的图像中指定两个参考块,那么该块的残差块则是两个残差块的平均值。
在选择步骤506期间,由编码设备根据比率/失真准则在测试的两个模式之间选择优化压缩性能的编码模式。当选择了编码模式时,残差块在步骤507期间被变换并且在步骤509期间被量化。当根据INTRA编码模式对当前块进行编码时,预测方向以及经变换并量化的残差块在步骤510期间被熵编码器编码。当根据INTER编码模式对当前块进行编码时,从自与位于要被编码的块附近的重构块相对应的一组运动矢量中选择的预测矢量来预测块的运动矢量。接下来,在步骤510期间由熵编码器以运动残差以及用于标识预测矢量的索引的形式对所述运动矢量进行编码。在步骤510期间由熵编码器对经变换并量化的残差块进行编码。熵编码的结果被插入到二进制视频流511中。
在步骤509期间的量化之后,当前块被重构,使得所述当前块所包含的像素可以被用于未来的预测。该重构阶段还被称为预测环路。因此,在步骤512期间对经变换和量化的残差块应用于反量化,并且在步骤513期间应用反变换。根据用于在步骤514期间所获得的块的编码模式,该块的预测块被重构。如果根据INTER编码模式对当前块进行编码,则编码设备使用当前块的运动矢量应用(在步骤516期间)反运动补偿,以便识别当前块的参考块。如果根据INTRA编码模式对当前块进行编码,则在步骤515期间,与当前块相对应的预测方向被用于重构该当前块的参考块。将参考块和重构的残差块相加以便获得重构的当前块。
重构之后,环内后滤波被应用(进一步至步骤517)于重构的块。由于该后滤波出现在预测环路内以便获得与解码相同的参考图像的编码并因此避免编码与解码之间的偏移,因此该后滤波被称为环内后滤波。环内后滤波形成新的压缩工具的一部分,其在H.264/AVC中出现并在HEVC中得以改进。HEVC的环内后滤波包括两个内后滤波方法(即,去块滤波和SAO(采样自适应偏移)滤波)。H.264/AVC的后滤波只包括去块滤波。
去块滤波的目的在于弱化由于块之间量化的差异而导致的在块边界处的任何不连续。其是可以被激活或去激活的自适应滤波,并且当其被激活时,可以采用基于具有包括六个滤波器系数的维数的单独的滤波器(其在下文中被称为强滤波器)的高复杂度去块滤波的形式,以及基于具有包括四个系数的一维的单独的滤波器(其在下文中被称为弱滤波器)的低复杂度去块滤波的形式。强滤波器极大地弱化了在块边界处的不连续,这可能破坏原始图像中存在的空间高频。弱滤波器较弱地弱化了在块边界处的不连续,这使得能够保存原始图像中存在的高空间频率,但是这将对由量化人为引起的不连续不太有效。进行滤波或不进行滤波以及倘若进行滤波所使用的滤波器的形式的决定取决于在要被滤波的块的边界处的像素的值以及由编码设备确定的两个参数β和tc。在熵编码的步骤510期间,编码设备将语法元素(PPS(图像参数集)容器中的pps_beta_offset_div2和pps_tc_offset_div2、以及片报头中的slice_beta_offset_div2和slice_tc_offset_div2)插入到二进制视频流511中,使得其能够找到参数β和tc的各个值。解码设备可以使用这些语法元素确定是否必须应用去块滤波以及要应用的去块滤波的形式。
SAO滤波采用具有两个不同目的的两种形式。第一种形式(被称为边缘偏移)的目的在于补偿对块的边缘的量化的影响。通过边缘偏移的SAO滤波包括根据与边缘的四种各自类型相对应的四个类别的重构图像的像素的分类。像素的分类通过根据四个滤波器的滤波来完成,每个滤波器都使其能够获得滤波梯度。最大化分类标准的滤波梯度指示对应于像素的边缘类型。边缘的各个类型与在SAO滤波期间加到像素的偏移值相关联。
SAO的第二种形式被称为带状偏移并且其目的在于对属于特定范围(即,带)的值的像素的量化的影响进行补偿。在带偏移滤波期间,像素的所有可能的值(针对8比特视频流,最常位于0到255之间)被划分成32个具有8个值的带。在这32个带之间,选择偏移4个连续的带。当像素具有位于要被偏移的值的四个带中的一个带内的值时,偏移值被加到该像素的值上。
针对各个CTB由编码设备借助于比率/失真优化来确定是否使用SAO滤波的决定以及当使用SAO滤波时SAO滤波的形式和偏移值。在熵编码的步骤510期间,编码设备将信息插入到二进制视频流511中使得解码设备能够确定SAO滤波是否将会被应用到CTB、以及在应用的情况下确定要被应用的SAO滤波的形式和参数。
当块被重构时,其在步骤520期间被插入到存储在重构图像的存储器521(也被称为参考图像存储器)中的重构图像中。如此存储的重构图像然后可以用作用于要被编码的其它图像的参考图像。
当对片的所有块进行编码时,对应于该片的二进制视频流被插入到被称为网络抽象层单元(NALU)的容器中。在网络传输的情况下,这些容器或者被直接插入到网络数据包中或者诸如MP4传输流的中间传输流容器中。
包含片的容器被称为视频编码层(VCL)片。在HECV和H.264/AVC标准中定义了其它类型的容器。这些容器通常是包含对诸如SPS(序列参数集)容器的视频序列的解码或者对诸如PPS容器的视频序列的图像的子集的解码有用的信息的报头。每个PPS容器都包括使其能够被识别的标识符。每个片都与PPS容器相关联。为此,每个片都包括包含与该片相对应的PPS容器的标识符的语法元素。以类似的方式,每个SPS容器都包括使其能够被识别的SPS容器标识符。每个PPS容器都与SPS容器相关联。为此,每个PPS容器都包括包含与PPS容器相关联的SPS容器的标识符的语法元素。
图6示例性地描绘了用于对根据编码设备所使用的HEVC标准压缩的流进行解码的方法。解码被逐块进行。针对当前块,在步骤610期间其起始于当前块的熵解码。熵解码使能够获得该块的编码模式。
如果根据INTER编码模式对该块进行了编码,则熵解码使得能够获得预测矢量索引、运动残差以及残差块。在步骤608期间,使用预测矢量和运动残差针对当前块重构运动矢量。
如果根据INTRA编码模式对该块进行了编码,则熵解码使得能够获得预测方向和残差块。由解码设备实现的步骤612、613、614、615和616在各个方面都分别与由编码设备实现的步骤512、513、514、515和516完全相同。
解码设备接下来在步骤617期间应用环内后滤波。与编码一样,环内后滤波针对HEVC标准包括去块滤波和SAO滤波,而环内滤波针对H.264/AVC标准仅包括去块滤波。
去块滤波在步骤618期间由解码设备来实现。在解码期间,解码设备使用写在二进制视频流中的语法元素pps_beta_offset_div2、pps_tc_offset_div2、slice_beta_offset_div2和slice_tc_offset_div2找到参数β和tc。另一方面,必须根据在块的边界处像素的值以及参数β和tc确定而要应用的滤波器的形式。
SAO滤波在步骤619期间通过解码设备来实现。在解码期间,解码设备不必确定是否向块应用SAO滤波,如果要应用SAO滤波,则解码设备不必确定要应用的SAO滤波的形式以及偏移值,这是因为解码设备将会在二进制视频流中找到该信息。如果针对CTB,SAO滤波是边缘偏移形式,则针对CTB的每个像素,解码设备必须确定通过滤波偏移的类型并且添加与所确定的边缘的类型相对应的偏移值。如果针对CTB,SAO滤波是带状偏移形式,则针对CTB的每个像素,解码设备将要被滤波的像素的值与要被偏移的值的范围进行比较,如果像素的值属于要被偏移的值的范围中的一个,则将与所述值范围相对应的偏移值加到所述像素的值上。
如上所见,环内后滤波形成压缩工具的一部分,其在H.264/AVC和HEVC中出现使得能够提高压缩性能。环内后滤波导致实现视频压缩标准的复杂度增加,并且具体地导致实现解码的复杂度的增加。
为了降低二进制视频流的解码的复杂度,本发明通过根据用户所需的显示功能对二进制视频流进行修改来控制环内后滤波的实现。对二进制视频流的修改发生在对该二进制视频流解码之前。因此,本发明使得能够降低解码的计算成本,其释放解码设备处的计算能力并因此具体地允许使用高级显示功能。
现在将在通过通信网络传输视频的上下文中呈现本发明。图1A示例性地描绘了包括实现本发明的设备的视频传输系统。该视频传输系统包括诸如(例如)视频编码器、数字视频摄像机或数字硬盘的视频源110。视频源110将根据HEVC标准或者根据H.264/AVC标准编码的二进制视频流提供给传输设备111。传输设备111包括用于将二进制视频流与其它二进制流(诸如二进制音频流)相结合以形成复用的二进制流的复用器。复用的二进制流随后要么有线地要么无线地通过诸如互联网或LAN(局域网)的通信网络120被传输。传输后,复用的二进制流被包括解复用器的接收设备112接收。解复用器然后从该复用二进制流中提取二进制视频流并且接收设备112将该二进制视频流发送至根据本发明的一个方面的二进制视频流修改设备113。根据用户所需的显示功能,二进制视频流修改设备113(为了简化,我们将在下文中将其称为修改设备)可以修改二进制视频流以便降低环内后滤波的复杂度。修改后的二进制视频流接下来被发送至解码设备114,解码设备114对修改后的二进制视频流进行解码,解码的结果由显示设备115显示。
图2示例性示出了能够实现二进制视频流修改设备113的设备的硬件架构的示例。设备113包括(通过通信总线205连接的):处理器或CPU(中央处理单元)200;随机存取存储器(RAM)201、只读存储器(ROM)202;存储单元203或存储介质读取器,诸如SD(安全数字)卡读取器或硬盘驱动器(HDD);用于与其它设备交换数据的至少一个接口204。该接口204使得修改设备113能够接收二进制视频流、发送修改后的二进制视频流以及例如借助于诸如遥控器的控制设备(未示出)从用户接收指令,使得用户能够操作显示设备115上的图形界面。
处理器200能够执行从ROM 202、从外部存储器(未示出)、从存储介质或者从通信网络120加载到RAM 201中的指令。当修改设备113加电时,处理器200能够从RAM 201读取指令并执行所述指令。这些指令形成使得通过处理器200实现所有或一些下文所描述的与修改设备113有关的算法和步骤的计算机程序。
下文所描述的所有或一些算法和步骤可以通过由诸如DSP(数字信号处理器)或者微控制器的可编程机器执行一组指令以软件的形式实现,或者通过机器或专用组件(诸如FPGA(现场可编程门阵列)或ASIC(专用集成电路))以硬件的形式实现。
图3示例性地描绘了当视频解码设备被用于实现要求高计算输入的显示功能时,用于确保二进制视频流与视频解码设备的计算能力的兼容性的算法。该算法开始于在步骤300期间由修改设备接收根据HEVC标准编码的二进制视频流。接下来对三个布尔变量进行初始化:当变量DBF_weak被设置成真时表示去块滤波必须偏爱弱滤波器的变量DBF_weak在步骤301期间将被初始化成假;当被设置成真时表示去块滤波必须被去激活的变量DBF_OFF在步骤302期间被初始化成假;当被设置成真时表示SAO滤波必须被去激活的变量SAO_OFF在步骤303期间将被初始化成假。修改设备113接下来确定用户需要哪个显示功能。每个显示功能都对应于实现的复杂度。此处假设修改设备113已知实现用户可能制定的各个显示功能的复杂度。然后修改设备113将关于实现显示功能的复杂度的该信息与关于解码设备114的处理能力的信息进行比较。该比较使得修改设备113能够确定哪些是在降低解码复杂度方面修改二进制视频流使得该二进制视频流的解码在用户所需的显示功能的上下文中与解码设备114的处理能力相兼容的需求。要对二进制视频流进行的修改取决于用于降低解码复杂度的该需求。
在一个实施方式中,该比较使用一组阀值。各个阀值使其能够确定修改设备必须如何修改二进制视频流。如果实现的复杂度低于第一阀值,则不修改二进制视频流;如果实现的复杂度位于第一阀值到第二阀值之间,则SAO滤波被去激活;如果实现的复杂度位于第二阀值到第三阀值之间,则SAO滤波被去激活并且偏爱低复杂度去块滤波;如果实现的复杂度高于第三阀值,则SAO滤波和去块滤波都被去激活。
在步骤304期间,修改设备113确定用户是否希望以加速模式显示视频。在这种情况下,二进制流修改设备113在步骤305期间将变量Dbf_weak固定为真并且在步骤306期间将变量SAO_OFF固定为真。
否则,在步骤307期间,修改设备113确定用户是否希望根据画中画模式显示两个视频,第一视频以低分辨率显示并且内嵌在以全分辨率显示的第二视频中。在这种情况下,修改设备113在步骤308期间将变量DBF_OFF固定为真并且在步骤309期间将变量SAO_OFF固定为真。
否则,在步骤310期间,修改设备113确定用户是否希望使用多应用模式。多应用模式可以是多个显示功能(诸如(例如)与画中画模式相结合的加速显示或者其中同时显示有多个低分辨率视频的马赛克模式)的组合。如果要求显示多应用模式,则修改设备113确定实现所要求的多应用模式的复杂度。在步骤311期间,修改设备113确定实现的复杂度是否为低,例如在第一阀值到第二阀值之间。具有低实现复杂度的多应用模式例如可以是用于以其中显示有低分辨率视频的画中画模式加速显示的请求。如果是这种情况,则修改设备113在步骤312期间将变量SAO_OFF固定为真。
否则,在步骤313期间,修改设备113确定实现所述多应用模式的复杂度是否是中等的,例如在第二阀值到第三阀值之间。具有中等实现复杂度的多应用模式例如可以是用于以其中显示有全分辨率视频的画中画模式加速显示的请求。如果是这种情况,则修改设备113在步骤314期间将变量Dbf_weak固定为真并且在步骤315期间将变量SAO_OFF固定为真。
否则,在步骤316期间,修改设备113确定实现的复杂度是否为高,例如高于第三阀值。具有高计算成本的多应用模式例如可以是用于显示多个低分辨率视频的马赛克的请求。如果是这种情况,则修改设备113在步骤317期间将变量DBF_OFF固定为真并且在步骤318期间将变量SAO_OFF固定为真。
如果在步骤310期间未请求显示功能或者如果未识别出所请求的显示功能,则修改设备113不改变变量Dbf_weak、DBF_OFF和SAO_OFF。在这种情况下,所述显示是视频以全分辨率的常规显示。可以注意到,变量Dbf_weak和DBF_OFF可以不都等于真。这实际上不必修改二进制视频流,以使得当意图去激活去块滤波时偏爱使用低复杂度的去块滤波。
在考虑到用户的显示功能需求之后,修改设备113开始对所接收到的视频流进行修改。该视频流以网络数据包的形式被接收到。此处认为每个网络数据包都包含单个容器。修改设备113按照它们到达的顺序一个接一个地处理数据包。在步骤319期间,修改设备113从第一数据包移除所述容器。然后,修改设备113在步骤320中检查变量DBF_weak的值。如果变量DBF_weak为真,则在第一修改步骤321处理所述容器用于修改二进制视频流的部分。在下文中关于图7详细描述实现该第一修改步骤321的示例。第一修改步骤321变换与所述容器相对应的二进制流部分以在解码期间偏爱使用弱去块滤波器。控制实现去块滤波的复杂度的语法元素随后被修改。
在步骤321(或者如果变量DBF_weak为假则是步骤320)之后的步骤322期间,修改设备113测试变量DBF_OFF的值。如果变量DBF_OFF为真,则通过二进制视频流的修改部分的第二步骤323来处理所述容器。在下文中关于图8详细描述实现该第二修改步骤323的示例。第二修改步骤323变换与所述容器相对应的二进制流部分以在解码期间将去块滤波去激活。控制实现所述去块滤波的复杂度的语法元素随后被修改或者被去除。
在步骤323(或者如果变量DBF_OFF为假则是步骤322)之后的步骤324期间,修改设备测试变量SAO_OFF的值。如果变量SAO_OFF为真,则通过二进制视频流的修改部分的第三步骤325来处理所述容器。在下文中关于图9详细描述实现该第三修改步骤325的示例。第三修改步骤325变换与所述容器相对应的二进制流部分以在解码期间将SAO滤波去激活。控制实现所述SAO滤波的复杂度的语法元素随后被去除或者被修改。
步骤325(或者如果变量SAO_OFF为假则是步骤324)后紧跟步骤326,在该步骤326期间,所述容器被传送至紧随修改设备113之后的设备,即,图1A中的示例中的解码设备114。
图3示例性地描绘了用于确保视频显示功能与视频解码设备的计算能力的兼容性的方法。该方法适用于根据HEVC标准编码的二进制视频流。该方法可以通过去除与SAO滤波有关的所有步骤(步骤303、306、309、312、315、318、324、325)而适用于根据H.264/AVC标准编码的二进制视频流。在具体实施方式中,在步骤300期间,修改设备113在HEVC和H.264/AVC之间识别在二进制视频流的编码期间所应用的编码标准,这在所述方法的剩余部分中使得能够应用与SAO滤波有关的步骤或者不能应用与SAO滤波有关的步骤。在该实施方式中,解码设备114能够对根据HEVC标准以及H.264/AVC标准编码的二进制视频流进行解码。应注意的是,当所述方法被应用于根据H.264/AVC标准编码的二进制视频流时,仅对包括在SPS和PPS容器中和片报头中的语法元素进行修改,这有助于修改二进制视频流。
此外,在参照图3描述的算法中,要对二进制视频流进行的修改取决于用户所需要的显示功能。在另一替代实施方式中,要对二进制视频流进行的修改取决于由解码设备114实现的解码工具。例如,一些解码设备实现脱离于预测环路的后滤波工具。脱离于预测环路的这些后滤波工具可能是非常有效的并且可能减少使用去块滤波和SAO滤波的优势。另外,脱离于预测环路的这些后滤波工具还增加解码复杂度。在一些情况下,可能偏爱使用这些工具而不是由视频压缩标准制定的环路滤波工具。因此,在该替代实施方式中,关于脱离于预测环路的后滤波工具的信息被提供至修改设备113,其修改和/或去激活SAO滤波的实现和/或(如有必要)去块滤波的实现。
此外,图3示例性地描绘了当视频解码设备被用于实现要求高计算输入的显示功能时,用于确保二进制视频流与视频解码设备的计算能力的兼容性的算法。在另一实施方式中,该算法可以使其能够确保二进制视频流与视频解码设备的存储能力的兼容性。在该实施方式中,每个显示功能都对应于存储成本。此处假设修改设备113知道与实现用户可能制定的各个显示功能相对应的存储成本。然后修改设备113将关于显示功能的存储成本的该信息与关于解码设备114的存储能力的信息进行比较。该比较使得修改设备113能够确定什么是就降低存储成本而言二进制视频流修改需求,使得在用户所需的显示功能的上下文中该二进制视频流的解码与解码设备114的存储能力相兼容。要对二进制视频流进行的修改取决于用于降低存储成本的该需求。该实施方式可以与基于计算成本的实施方式相结合。在相结合的情况下,实现解码的复杂度即涉及计算复杂度又涉及就使用解码设备114的存储器而言的复杂度。由修改设备113修改的二进制视频流则不仅与解码设备114的计算能力相兼容而且还与解码设备114的存储能力相兼容。
图7详细描述了修改设备113所使用的用于变换HEVC容器以便在解码期间偏爱使用弱去块滤波器的算法。该算法开始于步骤700期间的容器的接收。接下来在步骤701期间由修改设备113检测所接收到的容器的类型。如果该容器是PPS容器,则修改设备113在步骤702中搜索用于检查去块滤波参数的值的语法元素pps_beta_offset_div2。如果存在语法元素pps_beta_offset_div2,则修改设备将该语法元素pps_beta_offset_div2的值强制固定为值“-6”。通过将语法元素pps_beta_offset_div2的值固定为值“-6”,增加了解码期间使用4-系数去块滤波的机会。在另选实施方式中,修改设备也可以将变量pps_tc_offset_div2强制固定为值“-6”,这具有在解码期间更加偏爱使用4-系数去块滤波器的效果。在实现步骤703之后,或者倘若在步骤701或702期间是否定响应,则修改设备113等候接收新的容器。新的容器的接收导致返回至步骤700。
如果容器不是PPS类型,则修改设备113在步骤704期间检查该容器是否是VCL类型。如果是这种情况,则修改设备113在步骤705期间在与所述容器相对应的片的报头中搜索用于在片处控制去块滤波参数的值的语法元素slice_beta_offset_div2。如果存在语法元素slice_beta_offset_div2,则修改设备113将该语法元素slice_beta_offset_div2的值固定为值“-6”。通过将语法元素slice_beta_offset_div2的值固定为值“-6”,增加了解码期间使用弱去块滤波的机会。在另一实现中,语法元素slice_beta_offset_div2在对应于所述片的二进制视频流部分中被去除。在该实现中,语法元素slice_beta_offset_div2的值从包含在对应于所述片的PPS容器中的语法元素PPS_beta_offset_div2的值复制。在替代实施方式中,修改设备可以将语法元素slice_tc_offset_div2的值强制固定为“-6”,或者去除其值可能是从语法元素pps_tc_offset_div2的值复制的语法元素slice_tc_offset_div2。
在实现步骤706之后,或者在步骤704或705期间是否定响应的情况下,修改设备113等候接收新的容器。新的容器的接收使得返回至步骤700。
图8详细描述了修改设备113所使用的用于变换HEVC容器以便在解码期间将去块滤波的使用去激活的算法。当接收到PPS容器时,应用算法的第一部分821。该第一部分确保与涉及去块滤波的PPS容器的一组语法元素的去块滤波的去激活的一致性。该算法开始于在步骤800期间的容器的接收。然后在步骤801期间由修改设备113检查所接收到的容器的类型。如果该容器是PPS容器,则修改设备113在步骤802期间搜索指示该容器中存在与去块滤波有关的语法元素的语法元素Deblocking_filter_control_present_flag。当发现语法元素Deblocking_filter_control_present_flag时,修改设备113检查该语法元素Deblocking_filter_control_present_flag的值。如果该语法元素Deblocking_filter_control_present_flag的值不同于“1”,则修改设备在步骤803期间将该语法元素Deblocking_filter_control_present_flag固定为“1”,然后在步骤804期间创建语法元素deblocking_filter_override_enabled_flag,该语法元素使得片能够修改与去块滤波有关的参数值,并且在步骤805期间创建语法元素pps_deblocking_filter_disabled_flag,该语法元素指示参考该PPS容器的片不使用去块滤波。步骤805(或者当语法元素Deblocking_filter_control_present_flag等于“1”时则是步骤802)后紧跟步骤806。如果语法元素Deblocking_filter_control_present_flag等于“1”,则修改设备113搜索语法元素deblocking_filter_override_enabled_flag。然后将该语法元素deblocking_filter_override_enabled_flag设置为“0”。如果语法元素Deblocking_filter_control_present_flag等于“0”,则将语法元素deblocking_filter_override_enabled_flag设置为“0”,并且将该语法元素deblocking_filter_override_enabled_flag插入到对应于所述容器的二进制流部分中。在步骤807期间,如果语法元素Deblocking_filter_control_present_flag等于“1”,则修改设备113搜索语法元素pps_deblocking_filter_disabled_flag。然后将该语法元素pps_deblocking_filter_disabled_flag设置为“1”。如果语法元素Deblocking_filter_control_present_flag等于“0”,则然后将语法元素pps_deblocking_filter_disabled_flag设置为“1”,并且将该语法元素pps_deblocking_filter_disabled_flag插入到对应于所述容器的二进制流部分中。
在步骤808期间,修改设备113在对应于所述容器的二进制视频流部分中搜索用于控制去块滤波器的参数β的值的语法元素pps_beta_offset_div2。如果存在语法元素pps_beta_offset_div2,则在步骤809期间在对应于所述容器的二进制视频流部分中去除该语法元素。
步骤808(或步骤809,如果存在语法元素pps_beta_offset_div2)后紧跟步骤810,在该步骤期间,修改设备113在对应于所述容器的二进制视频流部分中搜索用于控制去块滤波器的参数tc的值的语法元素pps_tc_offset_div2。如果存在语法元素pps_tc_offset_div2,则在步骤811期间在对应于所述容器的二进制视频流部分中去除该语法元素。
在变换PPS容器之后,修改设备113等候接收新的容器。新的容器的接收使得返回至步骤800。
如果在步骤801期间该容器不是PPS容器,则修改设备113在步骤812期间检查该容器是否是VCL容器。如果该容器不是VCL容器,则修改设备113等候接收新的容器。新的容器的接收使得返回至步骤800。
如果该容器是VCL容器,则修改设备113应用算法的第二部分822,如图8所示。通过应用算法的该第二部分,修改设备113确保与涉及去块滤波的片的一组语法元素的去块滤波的去激活的一致性。算法的该第二部分822包括去除与包含在VCL容器中的片的报头的去块滤波有关的所有语法元素。在步骤813中,修改设备113搜索指示在所示片中存在与去块滤波有关的语法元素的语法元素Deblocking_filter_override_flag。
如果存在语法元素Deblocking_filter_override_flag,则在步骤814期间从对应于所述容器的二进制视频流部分中去除该语法元素Deblocking_filter_override_flag。
步骤813(或者如果存在语法元素Deblocking_filter_override_flag则是步骤814)后紧跟步骤815,在该步骤815期间修改设备113搜索指示针对包含在容器中的片是否激活去块滤波的语法元素Slice_deblocking_filter_disabled_flag。如果存在语法元素Slice_deblocking_filter_disabled_flag,则修改设备在步骤816期间从对应于所述容器的二进制视频流部分中去除该语法元素Slice_deblocking_filter_disabled_flag。
步骤815(或者如果存在语法元素Slice_deblocking_filter_disabled_flag则是步骤816)后紧跟步骤817,在该步骤817期间修改设备113搜索语法元素slice_beta_offset_div_2。如果存在语法元素slice_beta_offset_div_2,则修改设备在步骤818期间从对应于所述容器的二进制视频流部分中去除该语法元素slice_beta_offset_div_2。
步骤817(或者如果存在语法元素slice_beta_offset_div_2则是步骤818)后紧跟步骤819,在该步骤819期间修改设备113搜索语法元素slice_tc_offset_div_2。如果存在语法元素slice_tc_offset_div_2,则修改设备在步骤820期间从对应于所述容器的二进制视频流部分中去除该语法元素slice_tc_offset_div_2。
在实现步骤819(或者如果存在语法元素slice_tc_offset_div_2则是步骤820)之后,修改设备113等候接收新的容器。新的容器的接收使得返回至步骤800。
图9详细描述了修改设备113所使用的用于变换HEVC容器以便在解码期间将SAO滤波的使用去激活的算法。那么在SPS容器的接收期间应用该算法的第一部分914。该第一部分使得能够确保与SAO滤波有关的SPS容器的语法元素与SAO滤波的去激活的一致性。该第一部分914开始于步骤901期间的容器的接收。接下来在步骤902期间由修改设备113检查所接收到的容器的类型。如果所述容器是SPS容器,则修改设备113在步骤903中将指示在涉及该SPS容器的片中是否必须实现SAO滤波的语法元素Sample_adaptive_offset_enabled_flag强制固定为“0”。紧随步骤903之后,修改设备113等候接收新的容器。新的容器的接收使得返回至步骤901。
如果该容器不是SPS容器,则修改设备113检查该容器是否是VCL容器。如果该容器不是VCL容器,则修改设备113等候接收新的容器。新的容器的接收使得返回至步骤901。
如果所接收到的容器是VCL容器,则修改设备113应用算法的第二部分915。在该第二部分915中,修改设备113确保与SAO滤波有关的VCL容器的语法元素与SAO滤波的去激活的一致性。所述第二部分915开始于在步骤905期间搜索指示SAO滤波是否被应用于包含在所述容器中的片中的像素的亮度分量的语法元素Slice_sao_luma_flag。如果存在语法元素Slice_sao_luma_flag,则修改设备113在步骤906期间从对应于所述容器的二进制视频流部分中去除该语法元素Slice_sao_luma_flag。步骤905(或者如果存在语法元素Slice_sao_luma_flag则是步骤906)后紧跟步骤907。
在步骤907期间,修改设备113搜索指示SAO滤波是否被应用于包含在所述容器中的片中的像素的色度分量的语法元素Slice_sao_chroma_flag。如果存在语法元素Slice_sao_chroma_flag,则修改设备113在步骤908中从对应于所述容器的二进制视频流部分中去除该语法元素Slice_sao_chroma_flag。步骤907(或者如果存在语法元素Slice_sao_chroma_flag则是步骤908)后紧跟步骤909。
在步骤906和步骤908的另一实现中,语法元素Slice_sao_luma_flag和Slice_sao_chroma_flag被设置为“0”。
算法的其余部分使得能够通过与VCL容器相对应的片中所包含的所有CTB来运行。实际上有必要针对每个CTB检查CTB是否包含与SAO滤波有关的语法元素并且在适当情况下去除这些语法元素。在步骤909期间,用于通过所述片的所有CTB运行的变量n被初始化为值“0”。在步骤910期间,将变量n与所述片中的CTB的数量Nctb进行比较。如果n小于Nctb,则修改设备113在CTB中搜索与SAO滤波有关的语法元素。如果CTB不包含与SAO滤波有关的语法元素,则变量n增加一个单位并且该算法返回至步骤910。如果CTB包含与SAO滤波有关的语法元素,则在步骤912期间将这些语法元素从对应于CTB的二进制视频流部分中去除。所述去除例如涉及下列语法元素:sao_merge_left_flag、sao_merge_up_flag、sao_type_idx_luma、sao_type_idx_chroma、sao_offset_abs、sao_offset_sign、sao_band_position、sao_eo_class_luma、sao_eo_class_chroma。步骤912后紧随步骤913。
直到现在我们认为贯穿视频流应用相同的显示功能。在另一实施方式中,可以在显示视频流期间的任何时间对显示功能进行修改。在这种情况下,可以根据需要随时调整PPS、SPS和VCL容器。所述片可能参考针对用户在某一时刻所需要的功能被调整的SPS和PPS容器。然后,修改设备113分别针对这些SPS和PPS容器给出SPS容器索引和PPS容器索引,这使能够在修改之前将它们与存在于初始二进制视频流中的SPS和PPS容器中区分开。
另外,我们已经描述了修改设备113变换对应于单个二进制视频流的容器。在另一实施方式中,修改设备113处理来自不同的二进制视频流的容器并且根据所寻求的显示功能将不同的变换应用于这些容器。这些不同的修改后的二进制视频流接下来由解码设备114进行并行解码,并且例如由显示设备115进行组合,以便在高分辨率视频中叠加低分辨率视频或者显示视频马赛克。此外,不同的二进制视频流可以根据不同的标准进行编码,一些根据HEVC标准进行编码并且其它的根据H.264/AVC标准进行编码。在该实施方式中,解码设备114能够对根据HEVC标准以及H.264/AVC标准编码的二进制视频流进行解码。
最后,在图1A中,修改设备113被置于接收设备112与解码设备114之间。在图1B所示的替代实施方式中,修改设备也可以被置于编码设备110与发送设备111之间。然而,在这种情况下,必须使用用于将用户的显示功能需求发送至修改设备113的装置。为此,可以使用RTSP(实时流协议)请求向修改设备113指示表示用户所要求的显示功能的类型的信息。

Claims (12)

1.一种用于修改根据视频编码算法所编码的二进制视频流的方法,所述视频编码算法包括预测环路和集成在所述预测环路中的环内后滤波,其中,设备执行下列步骤:
在所述二进制视频流中搜索与所述环内后滤波有关的语法元素,所述语法元素被解码设备用于控制实现所述环内后滤波的复杂度,并且所述环内后滤波包括去块滤波和/或SAO滤波;以及
修改所述二进制视频流中的所述语法元素的值或者从所述二进制视频流中去除所述语法元素,以向所述解码设备指示实现简化的去块滤波和/或简化的SAO滤波,以便获得由所述解码设备实现所述环内后滤波的所述复杂度的降低。
2.根据权利要求1所述的方法,其中,所述去块滤波弱化像素的块之间的不连续并且包括第一滤波和第二滤波,所述第一滤波比所述第二滤波更强地弱化像素的块之间的不连续,所述第一滤波具有比所述第二滤波更大的复杂度,当所述语法元素的值已经被修改并且所述语法元素与所述去块滤波有关时,修改所述值以便与所述第一滤波相比所述解码设备偏爱使用所述第二滤波。
3.根据权利要求1所述的方法,其中,当所述语法元素的值已经被修改并且所述语法元素与去块滤波有关或者与SAO滤波有关时,所述语法元素的值的修改使得能够由所述解码设备分别将所述去块滤波的实现或者所述SAO滤波的实现去激活。
4.根据权利要求1所述的方法,其中,当所述语法元素被去除并且所述语法元素与去块滤波有关或者与SAO滤波有关时,所述语法元素的去除使得能够由所述解码设备分别将所述去块滤波的实现或者所述SAO滤波的实现去激活。
5.根据权利要求1所述的方法,其中,修改的语法元素的值和/或去除的语法元素取决于表示解码复杂度的降低的信息。
6.根据权利要求5所述的方法,其中,所述解码复杂度的降低取决于用户为了在显示设备上显示与所述二进制视频流相对应的图像所需的显示功能。
7.根据权利要求1所述的方法,其中,所述方法还包括下列步骤:
-从接收设备接收所述二进制视频流,所述二进制视频流通过通信网络由所述接收设备接收;以及
-将从所述二进制视频流的修改得到的经修改的二进制视频流发送至所述解码设备。
8.根据权利要求1所述的方法,其中,所述方法还包括下列步骤:
-从编码设备接收所述二进制视频流;
-通过通信网络接收表示解码复杂度的降低的信息;以及
-为了通过所述通信网络发送经修改的二进制视频流,将从修改得到的经修改的二进制视频流发送至发送设备。
9.根据权利要求1所述的方法,其中,所述视频编码算法基于H.264/AVC标准或基于HEVC标准。
10.一种用于修改根据视频编码算法所编码的二进制视频流的设备,所述视频编码算法包括预测环路和集成在所述预测环路中的环内后滤波,其中,所述设备被配置用于:
在所述二进制视频流中搜索与所述环内后滤波有关的语法元素,所述语法元素被解码设备用于控制实现所述环内后滤波的复杂度,并且所述环内后滤波包括去块滤波和/或SAO滤波;以及
修改所述二进制视频流中的所述语法元素的值和/或从所述二进制视频流中去除所述语法元素,以向所述解码设备指示实现简化的去块滤波和/或简化的SAO滤波,以便获得由所述解码设备实现所述环内后滤波的所述复杂度的降低。
11.一种为了通过显示设备进行显示而传送二进制视频流的系统,所述二进制视频流根据视频编码算法被编码,所述视频编码算法包括预测环路和集成在所述预测环路中的环内后滤波,所述系统包括解码设备,所述解码设备能够对所述二进制视频流解码并且能够将与所述二进制视频流的解码结果相对应的图像发送给所述显示设备,其中,所述系统包括根据权利要求10所述的用于修改二进制视频流的设备,该用于修改二进制视频流的设备能够将从该用于修改二进制视频流的设备修改所述二进制视频流得到的经修改的二进制视频流提供至所述解码设备。
12.一种计算机可读存储介质,其中,所述计算机可读存储介质包括指令,当所述指令被设备的处理器执行时通过所述设备实现根据权利要求1所述的方法。
CN201911394030.4A 2014-03-04 2015-03-02 用于修改二进制视频流的方法、设备、系统和存储介质 Expired - Fee Related CN111510730B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1451723 2014-03-04
FR1451723A FR3018417B1 (fr) 2014-03-04 2014-03-04 Procede de modification d'un flux video binaire.
CN201580011907.0A CN106068650B (zh) 2014-03-04 2015-03-02 用于修改二进制视频流的方法、设备、系统和存储介质

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201580011907.0A Division CN106068650B (zh) 2014-03-04 2015-03-02 用于修改二进制视频流的方法、设备、系统和存储介质

Publications (2)

Publication Number Publication Date
CN111510730A true CN111510730A (zh) 2020-08-07
CN111510730B CN111510730B (zh) 2022-02-18

Family

ID=51260963

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201911394030.4A Expired - Fee Related CN111510730B (zh) 2014-03-04 2015-03-02 用于修改二进制视频流的方法、设备、系统和存储介质
CN201580011907.0A Expired - Fee Related CN106068650B (zh) 2014-03-04 2015-03-02 用于修改二进制视频流的方法、设备、系统和存储介质

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201580011907.0A Expired - Fee Related CN106068650B (zh) 2014-03-04 2015-03-02 用于修改二进制视频流的方法、设备、系统和存储介质

Country Status (5)

Country Link
US (1) US10298959B2 (zh)
EP (1) EP3114836A1 (zh)
CN (2) CN111510730B (zh)
FR (1) FR3018417B1 (zh)
WO (1) WO2015132209A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018120230A1 (zh) * 2016-12-30 2018-07-05 华为技术有限公司 图像滤波方法、装置以及设备
CN109672893B (zh) * 2018-11-30 2022-01-14 广州市百果园信息技术有限公司 一种视频解码方法、装置、设备和存储介质
US11381867B2 (en) * 2019-01-08 2022-07-05 Qualcomm Incorporated Multiple decoder interface for streamed media data
EP4088465A4 (en) * 2020-02-04 2023-11-29 Huawei Technologies Co., Ltd. ENCODER, DECODER AND CORRESPONDING METHODS FOR SIGNALING HIGH-LEVEL SYNTAX
CN113242426B (zh) * 2021-04-06 2024-02-13 中南大学 一种视频编解码方法、设备和存储介质
US11778211B2 (en) * 2021-09-16 2023-10-03 Apple Inc. Parallel video parsing for video decoder processing
WO2023111384A1 (en) * 2021-12-13 2023-06-22 Nokia Technologies Oy A method, an apparatus and a computer program product for video encoding and video decoding

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101080007A (zh) * 2006-05-23 2007-11-28 中国科学院声学研究所 通过解码质量控制降低视频解码复杂度的方法
WO2008033595A2 (en) * 2006-09-15 2008-03-20 Freescale Semiconductor Inc. Video information processing system with selective chroma deblock filtering
US20080137752A1 (en) * 2006-12-08 2008-06-12 Freescale Semiconductor, Inc. Adaptive disabling of deblock filtering based on a content characteristic of video information
CN101449476A (zh) * 2005-03-18 2009-06-03 夏普株式会社 用于空间可缩放视频编码的具有降低的复杂度的减少块伪像的方法和系统
US20090304085A1 (en) * 2008-06-04 2009-12-10 Novafora, Inc. Adaptive Deblocking Complexity Control Apparatus and Method
US20110002395A1 (en) * 2008-03-31 2011-01-06 Nec Corporation Deblocking filtering processor and deblocking filtering method
CN102342101A (zh) * 2008-12-22 2012-02-01 高通股份有限公司 用于在视频译码中进行内插滤波、环路内滤波和环路后滤波的组合方案
WO2013185707A1 (zh) * 2012-08-29 2013-12-19 中兴通讯股份有限公司 视频编解码方法、装置及系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012044535A (ja) * 2010-08-20 2012-03-01 Toshiba Corp 動画像符号化装置及び動画像符号化方法
US9167269B2 (en) * 2011-10-25 2015-10-20 Qualcomm Incorporated Determining boundary strength values for deblocking filtering for video coding
US9774851B2 (en) * 2011-11-03 2017-09-26 Sun Patent Trust Quantization parameter for blocks coded in the PCM mode
US20130142251A1 (en) * 2011-12-06 2013-06-06 Sony Corporation Syntax extension of adaptive loop filter in hevc
CN104205819B (zh) * 2012-02-01 2017-06-30 诺基亚技术有限公司 用于视频编码的方法和装置
TWI524739B (zh) * 2012-02-10 2016-03-01 美國博通公司 根據視頻編碼的採樣點自適應偏移(sao)
WO2013144144A1 (en) * 2012-03-30 2013-10-03 Panasonic Corporation Syntax and semantics for adaptive loop filter and sample adaptive offset
US9386307B2 (en) * 2012-06-14 2016-07-05 Qualcomm Incorporated Grouping of bypass-coded bins for SAO syntax elements
AU2013284866B2 (en) * 2012-07-02 2017-09-07 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
US9344717B2 (en) * 2012-08-06 2016-05-17 Mediatek Inc. Method and apparatus for sample adaptive offset in a video decoder
US20140098851A1 (en) * 2012-10-04 2014-04-10 Qualcomm Incorporated Indication of video properties
US9445130B2 (en) * 2013-01-09 2016-09-13 Qualcomm Incorporated Blockiness metric for large HEVC block artifacts
GB2512827B (en) * 2013-04-05 2015-09-16 Canon Kk Method and device for classifying samples of an image
CN105556962B (zh) * 2013-10-14 2019-05-24 联发科技股份有限公司 发送用于视频系统的无损模式的信号的方法
US9628822B2 (en) * 2014-01-30 2017-04-18 Qualcomm Incorporated Low complexity sample adaptive offset encoding

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101449476A (zh) * 2005-03-18 2009-06-03 夏普株式会社 用于空间可缩放视频编码的具有降低的复杂度的减少块伪像的方法和系统
CN101080007A (zh) * 2006-05-23 2007-11-28 中国科学院声学研究所 通过解码质量控制降低视频解码复杂度的方法
WO2008033595A2 (en) * 2006-09-15 2008-03-20 Freescale Semiconductor Inc. Video information processing system with selective chroma deblock filtering
CN101517909A (zh) * 2006-09-15 2009-08-26 飞思卡尔半导体公司 带有选择性色度去块滤波的视频信息处理系统
US20080137752A1 (en) * 2006-12-08 2008-06-12 Freescale Semiconductor, Inc. Adaptive disabling of deblock filtering based on a content characteristic of video information
US20110002395A1 (en) * 2008-03-31 2011-01-06 Nec Corporation Deblocking filtering processor and deblocking filtering method
US20090304085A1 (en) * 2008-06-04 2009-12-10 Novafora, Inc. Adaptive Deblocking Complexity Control Apparatus and Method
CN102342101A (zh) * 2008-12-22 2012-02-01 高通股份有限公司 用于在视频译码中进行内插滤波、环路内滤波和环路后滤波的组合方案
WO2013185707A1 (zh) * 2012-08-29 2013-12-19 中兴通讯股份有限公司 视频编解码方法、装置及系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
BENJAMIN BROSS: "High Efficiency Video Coding (HEVC) text specification draft 9", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING》 *
FATMA AL-ABRI: "Optimal H.264/AVC Video Transcoding System", 《CONSUMER ELECTRONICS》 *
YEN-LIN LEE; TRUONG Q. NGUYEN: "Analysis and Efficient Architecture Design for VC-1 Overlap Smoothing and In-Loop Deblocking Filter", 《 IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》 *
钱利国: "视频编码芯片的设计与优化 ——在帧内预测和环内滤波设计中的优化实践", 《中国知网》 *

Also Published As

Publication number Publication date
CN111510730B (zh) 2022-02-18
CN106068650B (zh) 2020-01-31
FR3018417B1 (fr) 2017-07-28
US10298959B2 (en) 2019-05-21
EP3114836A1 (fr) 2017-01-11
WO2015132209A1 (fr) 2015-09-11
CN106068650A (zh) 2016-11-02
FR3018417A1 (fr) 2015-09-11
US20170078704A1 (en) 2017-03-16

Similar Documents

Publication Publication Date Title
CN111510730B (zh) 用于修改二进制视频流的方法、设备、系统和存储介质
US20240196020A1 (en) Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US20240089478A1 (en) Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
US10165293B2 (en) Method and apparatus for processing video
US11979613B2 (en) Methods and apparatuses of syntax signaling constraint for cross-component adaptive loop filter in video coding system
US8654860B2 (en) Apparatus and method for high efficiency video coding using flexible slice structure
JP4964595B2 (ja) 画像復号装置及び方法
JP2022525470A (ja) ビデオコーディングにおける適応パラメータセット(aps)を用いるブロックベースの適応ループフィルタ(alf)
EP3203739A1 (en) Video coding device, video decoding device, video coding method, video decoding method and program
WO2021133510A1 (en) Method and apparatus for lossless coding of video data
US20120263225A1 (en) Apparatus and method for encoding moving picture
US20220286701A1 (en) Image or video coding based on palette mode
US20220385903A1 (en) Image or video coding based on signaling of transform skip - and palette coding related information
KR101366288B1 (ko) 비디오 신호의 디코딩 방법 및 장치
US20220353506A1 (en) Image or video coding based on transform skip- and palette coding-related advanced syntax element
CN106686380B (zh) 采用基于多块的流水线的增强型数据处理设备及操作方法
RU2793826C1 (ru) Кодирование изображения или видео на основе режима палитры
RU2814221C2 (ru) Кодирование изображения или видео на основе режима палитры
US20220321887A1 (en) Image or video coding on basis of transform skip - and palette coding-related data
WO2012167927A1 (en) Coding of control data for adaptive loop filters
WO2012096177A1 (en) Image coding apparatus, image coding method and program, image decoding apparatus, and image decoding method and program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
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: 20220218