CN109672890B - 视频编码器件及编码器 - Google Patents

视频编码器件及编码器 Download PDF

Info

Publication number
CN109672890B
CN109672890B CN201811197684.3A CN201811197684A CN109672890B CN 109672890 B CN109672890 B CN 109672890B CN 201811197684 A CN201811197684 A CN 201811197684A CN 109672890 B CN109672890 B CN 109672890B
Authority
CN
China
Prior art keywords
encoder
frame
information
prediction
block
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
CN201811197684.3A
Other languages
English (en)
Other versions
CN109672890A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN109672890A publication Critical patent/CN109672890A/zh
Application granted granted Critical
Publication of CN109672890B publication Critical patent/CN109672890B/zh
Active 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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/196Methods 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 being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods 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 being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • 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
    • 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
    • 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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/567Motion estimation based on rate distortion criteria
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

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)
  • Color Television Systems (AREA)

Abstract

本发明提供一种视频编码器件。所述视频编码器件包括:第一编码器,包括预测模块,所述预测模块对第一帧中所包括的多个第一区块执行帧内预测操作及帧间预测操作;以及第二编码器,对与第一帧不同的第二帧进行编码,且不包括预测模块,其中如果对第一区块执行帧间预测操作,则预测模块向第二编码器传送关于运动估测操作的第一信息,且第二编码器包括预测区块产生模块,所述预测区块产生模块接收第一信息且通过基于第一信息对第二帧中所包括的多个第二区块执行运动补偿操作来产生预测区块。也提供一种编码器。

Description

视频编码器件及编码器
[相关申请的交叉参考]
本申请主张2017年10月16日提出申请的韩国专利申请第10-2017-0133921号的优先权、以及从所述韩国专利申请衍生出的所有权利,所述韩国专利申请的公开内容全文并入本申请供参考。
技术领域
示例性实施例涉及视频编码器件和/或编码器。
背景技术
人们对例如高清晰度(high definition,HD)图像及超高清晰度(ultra-highdefinition,UHD)图像等高分辨率、高品质图像的需求已在增加,且已使用用于处理这种高分辨率、高品质图像的高性能视频压缩技术。
近来,例如手机、智能手机等移动器件已得到广泛使用,且已对即使在具有小的大小及具有受限的使用环境(例如,使用电池)的移动器件中也会对高分辨率、高品质图像进行高效压缩的方式进行了研究。
另外,以高的帧速率或帧/每秒(frames per second,FPS)对图像进行编码呈增长趋势。然而,当前只能以有限的帧速率对图像进行编码,且难以使用单个编码器以高的帧速率对图像进行编码。
通过使用多个编码器,可以高的帧速率对图像进行编码。然而,当使用多个编码器时,整个编码器件的大小增大,且其中嵌入有编码器件的器件的大小也会增大。
发明内容
本公开的示例性实施例使用多个编码器对图像进行编码,同时将由所述多个编码器占据的空间最小化。
本公开的示例性实施例使用全编码器(full encoder)及部分编码器(partialencoder)对图像进行编码,同时将图像的品质劣化最小化。
然而,本公开的示例性实施例并非仅限于本文中所述的示例性实施例。通过参照对以下给出的示例性实施例中的一些示例性实施例的详细说明,对本公开所属领域中的一般技术人员来说,本公开的以上及其他示例性实施例将变得更显而易见。
根据本公开的示例性实施例,一种视频编码器件可包括:第一编码器,包括预测电路,所述预测电路被配置成:对第一帧中所包括的多个第一区块执行帧内预测操作及帧间预测操作中的一者或多者,以及如果所述预测电路对所述第一区块执行所述帧间预测操作,则传送关于运动估测操作的第一信息;以及第二编码器,包括预测区块产生电路,所述预测区块产生电路被配置成:从所述第一编码器接收所述第一信息,以及通过基于所述第一信息对第二帧中所包括的多个第二区块执行运动补偿操作来产生预测区块,所述第二帧是与所述第一帧不同的帧。
根据本公开的示例性实施例,一种编码器可被配置成对第一帧进行编码而不具有用于执行帧内预测及帧间预测中的一者或多者的预测电路。所述编码器可包括:预测区块产生电路,被配置成从第一编码器接收第一信息及第二信息,并产生预测区块,所述第一信息与运动估测操作相关联且所述第二信息与帧内预测操作相关联,所述第一编码器不同于所述编码器;以及后处理电路,被配置成基于经重构的帧及所述第一帧来探测品质劣化,所述经重构的帧是通过对由所述编码器编码的数据进行反量化来获得。
根据本公开的示例性实施例,一种视频编码器件可包括:第一编码器;第二编码器,所述第二编码器不同于所述第一编码器;以及处理器,被配置成:将第一帧及第二帧分别分配到第一编码器及第二编码器,所述第一帧及所述第二帧是输入图像中所包括的多个帧中的不同帧,所述第二帧是位于所述第一帧之后的帧,以及如果从由所述第二编码器编码的图像中探测到品质劣化,则所述处理器被配置成:在所述第一编码器完成所述第一帧的编码后,将所述第二帧重新分配到所述第一编码器,以及将第三帧分配到所述第二编码器,所述第三帧是位于所述第二帧之后的帧。
通过阅读以下详细说明、图式及权利要求书,其他特征及示例性实施例可显而易见。
附图说明
通过参照附图详细阐述本公开的示例性实施例,本公开的以上及其它示例性实施例及特征将变得更显而易见,在附图中:
图1是示出根据本公开一些示例性实施例的视频编码***的方块图。
图2是示出图1所示视频编码***中所包括的第一编码器的实例的方块图。
图3是示出图1所示视频编码***中所包括的第二编码器的实例的方块图。
图4是示出图1所示视频编码***中所包括的第二编码器的另一个实例的方块图。
图5是示出图1所示视频编码***中所包括的第二编码器的另一个实例的方块图。
图6是示出根据本公开一些示例性实施例的响应于在视频编码装置中探测到品质劣化来重新分配被输入到第一编码器及第二编码器的帧的方法的流程图。
图7是示出根据本公开一些示例性实施例的响应于在视频编码装置中探测到品质劣化来重新分配被输入到第一编码器及第二编码器的帧的方法的图。
图8是示出根据本公开一些示例性实施例的响应于在视频编码装置中探测到品质劣化来重新分配被输入到第一编码器及第二编码器的帧的方法的图。
[符号的说明]
10:视频编码***;
50:视频源;
100:视频编码器件;
110:前置处理器电路;
130:处理器;
140:第一存储器;
150:显示控制器;
160:存储器控制器;
170:总线;
180:调制解调器;
190:用户接口;
200:显示器;
210:输入器件;
220:第二存储器;
310:第一编码器;
311、321:划分单元;
312:预测模块;
312a:运动估测模块;
312b:运动补偿模块;
312c:帧内预测模块;
312d:开关;
313、323:压缩模块;
313a、323a:变换模块;
313b、323b:量化单元;
313c、323c:反量化模块;
313d、323d:反变换模块;
314、324:速率控制模块;
315:解码图片缓冲器(DPB);
316、325:滤波器单元;
317、327:熵编码单元;
318、328:减法器;
319、329:加法器;
320:第二编码器;
322:预测区块产生模块;
326:后处理模块;
A:区块;
BIT STREAM 1:第一位流;
BIT STREAM 2:第二位流;
F1:第一帧;
F2:第二帧;
F3:第三帧;
F4:第四帧;
FI1:第二数据;
FI2:第三数据;
I1:第一信息;
I2:第二信息;
I3:第三信息;
I4:第四信息;
IM:第一数据;
S410、S420、S430、S440、S450:操作。
具体实施方式
图1是示出根据本公开一些示例性实施例的视频编码***的方块图。
参照图1,视频编码***10可包括能够拍摄视频、处理视频并显示、存储或传送所处理的视频的各种器件。
举例来说,视频编码***10可被实施为以下中的一者:电视(television,TV)、数字电视(digital TV,DTV)、互联网协议电视(Internet protocol TV,IPTV)、个人计算机(personal computer,PC)、台式计算机(desktop computer)、膝上型计算机(laptopcomputer)、计算机工作站、平板个人计算机、视频游戏平台/视频游戏机、服务器、及移动计算器件。所述移动计算器件可被实施为手机、智能手机、企业数字助理(enterprisedigital assistant,EDA)、数字相机(digital still camera)、数字摄像机(digitalvideo camera)、便携式多媒体播放器(portable multimedia player,PMP)、个人导航器件/便携式导航器件(personal/portable navigation device,PND)、移动互联网器件(mobile Internet device,MID)、可穿戴式计算机、物联网(Internet of things,IOT)器件、万物互联(Internet of everything,IOE)器件或电子书(electronic book,e-book)。然而,示例性实施例并非仅限于此。
视频编码***10可包括视频源50、视频编码器件100、显示器200、输入器件210及第二存储器220(“存储器2”)。
视频源50、视频编码器件100、显示器200、输入器件210及第二存储器220对于实现视频编码***10而言未必都是必不可少的,且视频编码***10可包括比图1所示元件更多或更少的元件。
视频编码器件100可被实施为***芯片(system-on-chip,SoC)。
视频源50可被实施为配备有例如电荷耦合器件(charge-coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)图像传感器的相机。
视频源50可通过拍摄目标的图像来产生关于目标的第一数据IM且可将第一数据IM提供到视频编码器件100。
第一数据IM可为静止图像数据或移动图像数据。在一些示例性实施例中,视频源50可包括在主机中。在这种情形中,第一数据IM可为由主机提供的图像数据。
视频编码器件100可控制视频编码***10的一般操作。
举例来说,视频编码器件100可包括能够根据本公开的一些示例性实施例来执行操作的集成电路(integrated circuit,IC)、母板、应用处理器(application processor,AP)和/或移动应用处理器。
视频编码器件100可对由视频源50输出的第一数据IM进行处理且可通过显示器200显示经处理数据,将经处理数据存储在第二存储器220中和/或将经处理数据传送到另一个数据处理***。
视频编码器件100可包括前置处理器电路110、第一编码器310(“编码器1”)、第二编码器320(“编码器2”)、处理器130、第一存储器140(“存储器1”)、显示控制器150、存储器控制器160、总线170、调制解调器180及用户接口(interface,I/F)190。
前置处理器电路110、第一编码器310、第二编码器320、处理器130、第一存储器140、显示控制器150、存储器控制器160、总线170、调制解调器180及用户接口190对于实现视频编码器件100而言未必都是必不可少的,且视频编码器件100可包括比图1所示元件更多或更少的元件。
第一编码器310、第二编码器320、处理器130、第一存储器140、显示控制器150、存储器控制器160、调制解调器180及用户接口190可通过总线170来彼此交换数据。
举例来说,总线170可被实施为以下中的至少一者:***组件互连(peripheralcomponent interconnect,PCI)总线、***组件互连快速(PCI express,PCIe)总线、高级微控制器总线架构(advanced microcontroller bus architecture,AMBA)、高级高性能总线(advanced high performance bus,AHB)、高级***总线(advanced peripheral bus,APB)、高级可扩展接口(advanced extensible interface,AXI)总线、及其组合,但本公开并非仅限于此。
前置处理器电路110可包括例如图像信号处理器(image signal processor,ISP)。ISP可将具有第一数据格式的第一数据IM转换成第二数据FI1及第三数据FI2。
举例来说,第一数据IM可为具有拜耳图案(Bayer pattern)的数据,且第二数据FI1及第三数据FI2可为YUV数据。然而,示例性实施例并非仅限于此实例。
前置处理器电路110可接收由视频源50输出的第一数据IM。前置处理器电路110可对第一数据IM进行处理且可将通过对第一数据IM进行处理获得的第二数据FI1及第三数据FI2分别提供到第一编码器310及第二编码器320。
在其中对视频编码器件100进行驱动的环境中,可以例如帧(或图片)为单位来提供第一数据IM、第二数据FI1及第三数据FI2。
举例来说,第一数据IM可为具有多个第一帧至第四帧F1、F2、F3及F4的数据群组。第二帧F2可为位于第一帧F1之后的帧。第三帧F3可为位于第二帧F2之后的帧。第四帧F4可为位于第三帧F3之后的帧。
被传送到第一编码器310的第二数据FI1可为包含关于第一帧F1至第四帧F4中的奇数帧(例如,第一帧F1及第三帧F3)的数据的数据群组。被传送到第二编码器320的第三数据FI2可为包含关于第一帧F1至第四帧F4中的偶数帧(例如,第二帧F2及第四帧F4)的数据的数据群组。
前置处理器电路110在图1中被示出为实施在视频编码器件100的内部,但示例性实施例并非仅限于此。也就是说,前置处理器电路110可被实施在视频编码器件100的外部。
举例来说,第一编码器310可对奇数帧(例如,第一帧F1及第三帧F3)进行编码。在此实例中,第二编码器320可对第二帧F2进行编码,第二帧F2为位于第一帧F1之后的帧。然而,示例性实施例并非仅限于此实例。也就是说,作为另外一种选择,如果偶数帧(例如,第二帧F2及第四帧F4)被分配到或被重新分配到第一编码器310,则第一编码器310可对第二帧F2及第四帧F4进行编码。
第一编码器310可将第一信息、第二信息及第三信息中的至少一者传送到第二编码器320,第一信息、第二信息及第三信息均是在对第一帧F1(或第三帧F3)中所包括的多个区块中的每一者进行编码的过程中获得的且分别与运动估测相关、与帧内预测相关及与通过速率控制模块(图中未示出)确定的量化参数值相关。
第二编码器320可在对第二帧F2中所包括的多个区块中的每一者进行编码期间不执行运动预测、帧内预测及对量化参数值进行调整中的至少一者。而是,第二编码器320可接收第一信息、第二信息及第三信息中的至少一者,且可为第二帧F2中所包括的所述多个区块中的每一者产生预测区块。
在一些示例性实施例中,第一编码器310可为全编码器,且第二编码器320可为部分编码器。也就是说,在第二编码器320中可不设置有第一编码器310的元件中的一些元件。举例来说,第一编码器310可包括处理电路以执行速率控制模块、运动估测模块和/或帧内预测模块的功能,而第二编码器320可不包括执行速率控制模块、运动估测模块及帧内预测模块中的至少一者的功能的处理电路。
第一编码器310及第二编码器320可使用例如以下视频编码格式:联合图片专家组(Joint Picture Expert Group,JPEG)、运动图片专家组(Motion Picture Expert Group,MPEG)、MPEG-2、MPEG-4、视频编码(video coding,VC)-1、H.264、H.265或高效视频编码(high efficiency video coding,HEVC),但示例性实施例并非仅限于此。
处理器130可控制视频编码器件100的操作。
处理器130可包括处理电路及存储器(图中未示出)。
存储器(图中未示出)可包括易失性存储器、非易失性存储器、随机存取存储器(random access memory,RAM)、闪存存储器(flash memory)、硬盘驱动器、及光盘驱动器中的至少一者。
处理电路可为但不限于处理器、中央处理器(Central Processing Unit,CPU)、控制器、算术逻辑单元(arithmetic logic unit,ALU)、数字信号处理器(digital signalprocessor)、微计算机、现场可编程门阵列(field programmable gate array,FPGA)、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、***芯片(System-on-Chip,SoC)、可编程逻辑单元、微处理器或能够以所定义方式执行操作的任何其他器件。
处理器130可接收用户输入以运行一个或多个应用(举例来说,软件应用)。由处理器130运行的应用中的一些应用可为视频呼叫应用(video call application)。另外,由处理器130运行的应用可包括操作***(operating system,OS)、字处理器应用、媒体播放器应用、视频游戏应用和/或图形用户接口(graphic user interface,GUI)应用,但本公开并非仅限于此。
处理器130可通过布局设计或通过执行存储在存储器(图中未示出)中的计算机可读指令而被配置成专用计算机来控制前置处理器电路110将奇数帧(例如,第一帧F1及第三帧F3)分配到第一编码器310及将偶数帧(例如,第二帧F2及第四帧F4)分配到第二编码器320。也就是说,处理器130可判断那些帧将被分配到第一编码器310及第二编码器320。因此,处理电路可通过以下方式来改善视频编码器件100自身的功能:将帧从第二编码器320重新分配到第一编码器310以使所述帧能够由具有与预测模块对应的电路的第一编码器310进行重新编码,从而校正所述帧的图像品质劣化。
处理器130可以各种方式将帧数据分配到第一编码器310及第二编码器320。举例来说,处理器130可将偶数帧(例如,第二帧F2及第四帧F4)分配到第一编码器310且将奇数帧(例如,第一帧F1及第三帧F3)分配到第二编码器320。
在一些示例性实施例中,如果从通过对由第二编码器320编码的图像进行解码而获得的帧探测到品质劣化,则处理器130可将通过由第二编码器320编码而获得的帧重新分配到第一编码器310且可将位于通过由第二编码器320编码而获得的帧之后的帧分配到第二编码器320。在这种情形中,分配到第一编码器310及第二编码器320的帧可发生改变。
举例来说,假设第一编码器310对第一帧F1进行编码且第二编码器320对第二帧F2进行编码,则如果从通过对经编码的第二帧进行解码而获得的数据探测到品质劣化,处理器130可将第二帧F2重新分配到第一编码器310。接着,处理器130可将位于第二帧F2之后的帧(例如,第三帧F3)分配到第二编码器320。
第一存储器140可在存储器控制器160的控制下将关于第二数据FI1及第三数据FI2的当前正被第一编码器310及第二编码器320编码的当前帧的信息传送到第一编码器310及第二编码器320。
存储器控制器160可在第一编码器310、第二编码器320或处理器130的控制下将由第一编码器310及第二编码器320编码的数据或由处理器130输出的数据(例如,位流)写入到第二存储器220。
第一存储器140可被实施为易失性存储器,但示例性实施例并非仅限于此。易失性存储器可作为随机存取存储器(random access memory,RAM)、静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、闸流体随机存取存储器(thyristor RAM,T-RAM)、零电容器随机存取存储器(zero capacitor RAM,Z-RAM)或双晶体管随机存取存储器(twintransistor RAM,TTRAM)提供。作为另外一种选择,第一存储器140可被实施为非易失性存储器。
第二存储器220可被实施为非易失性存储器,但示例性实施例并非仅限于此。非易失性存储器可被作为电可擦可编程只读存储器(electrically erasable programmableread-only memory,EEPROM)、闪存存储器、磁性随机存取存储器(magnetic RAM,MRAM)、自旋转移力矩磁性随机存取存储器(spin-transfer torque MRAM)、铁电随机存取存储器(ferroelectric RAM,FeRAM)、相变随机存取存储器(phase change RAM,PRAM)或电阻式随机存取存储器(resistive RAM,RRAM)提供。另外,非易失性存储器可作为多媒体卡(multimedia card,MMC)、嵌入式多媒体卡(embedded MMC,eMMC)、通用闪存存储(universal flash storage,UFS)、固态驱动器(solid-state drive,SSD)或固态盘(solid-state disk,SSD)、通用串行总线(universal serial bus,USB)闪存驱动器或硬盘驱动器(hard disk drive,HDD)提供。作为另外一种选择,第二存储器220可被实施为易失性存储器。
图1示出其中第二存储器220设置在视频编码器件100外部的实例,但示例性实施例并非仅限于此。在另一个实例中,第二存储器220可设置在视频编码器件100内部。
显示控制器150可将由第一编码器310、第二编码器320或处理器130输出的数据传送到显示器200。显示器200可被实施为监视器、电视监视器、投影器件、薄膜晶体管液晶显示器(thin film transistor-liquid crystal display,TFT-LCD)、发光二极管(light-emitting diode,LED)显示器、有机发光二极管(organic LED,OLED)显示器、有源矩阵有机发光二极管(active-matrix OLED,AMOLED)显示器或柔性显示器。
举例来说,显示控制器150可通过移动行业处理器接口(mobile industryprocessor interface,MIPI)显示器串行接口(display serial interface,DSI)将数据传送到显示器200。
输入器件210可从用户接收用户输入且可响应于所接收到的用户输入将输入信号传送到用户接口190。
输入器件210可被实施为触摸面板、触摸屏、语音识别器、触摸笔、键盘、鼠标或轨迹点(track point),但示例性实施例并非仅限于此。举例来说,在其中输入器件210是触摸屏的情形中,输入器件210可包括触摸面板及触摸面板控制器。输入器件210可连接到显示器200且可与显示器200分开实施。
输入器件210可将输入信号传送到用户接口190。
用户接口190可从输入器件210接收输入信号且可将由输入信号产生的数据传送到处理器130。
调制解调器180可使用无线通信技术将由第一编码器310、第二编码器320或处理器130编码的数据输出到外部。调制解调器180可采用无线通信技术,例如(举例来说)WiFi、无线宽带(wireless broadband,Wibro)、3G无线通信、长期演进(Long Term Evolution,LTE)、高级长期演进(Long Term Evolution-Advanced,LTE-A)或宽带高级长期演进,但示例性实施例并非仅限于此。
图2是示出图1所示视频编码器件中所包括的第一编码器的实例的方块图。
参照图2,第一编码器310可为包括与划分单元311、预测模块312、压缩模块313、速率控制模块314、解码图片缓冲器(decoding picture buffer,DPB)315、滤波器单元316、熵编码单元317、减法器318及加法器319对应的处理电路的现场可编程门阵列(FPGA)、应用专用集成电路(ASIC)、***芯片(SoC)。
图2所示元件对于实现第一编码器310而言未必都是必不可少的,且第一编码器310可包括比图2所示元件更多或更少的元件。
划分单元311可将第二数据FI1的当前正被编码的当前帧(例如,第一帧F1)划分成多个区块。
预测模块312可对第一帧F1执行帧内预测或帧间预测。
帧内预测是只参考当前帧来执行预测的预测模式,且帧间预测是不仅参考当前帧而且还参考其他帧来执行预测的预测模式。
预测模块312可包括运动估测模块312a、运动补偿模块312b、帧内预测模块312c及开关312d。
运动估测模块312a可将当前帧划分成具有适当大小的适当数目个区块,以产生最小畸变并使所产生位的数目最小化。运动估测模块312a可从各种运动估测模式(例如,正常模式、合并模式等)中选择会产生最小畸变及最小位数目的运动估测模式。运动估测模块312a可通过搜索被存储在DPB 315中的参考图像以找到与被输入到预测模块312的区块最匹配的区域来获得运动向量。
运动补偿模块312b可通过使用由运动估测模块312a及存储在DPB 315中的参考图像获得的运动向量执行运动补偿来产生预测区块。
帧内预测模块312c可将当前帧划分成具有适当大小的适当数目个区块以产生最小畸变并使所产生位的数目最小化。帧内预测模块312c可从各种帧内预测模式(例如,DC模式及平面模式(planar mode))中选择会产生最小畸变及最小位数目的帧内预测模式。帧内预测模块312c可通过使用当前正被编码的当前帧的当前区块附近的已被编码区块的像素值执行空间预测来产生预测区块。
在执行帧内预测与帧间预测二者之后,预测模块312可使用由以下方程式(1)计算的成本值J来决定是执行帧内预测还是执行帧间预测:
J=D+A*R…(1)
其中D表示经编码图像的畸变指数,A表示与量化参数值成比例的常数值,且R表示通过帧内预测或帧间预测产生的位数目。
若基于成本值J确定出执行帧间预测合适,则预测模块312可使用开关312d来执行帧间预测。若基于成本值J确定出执行帧内预测合适,则预测模块312可使用开关312d来执行帧内预测。
在一些示例性实施例中,在其中在第一编码器310中执行帧间预测的情形中,第一编码器310可向第二编码器320传送关于运动估测的第一信息I1,第一信息I1包括以下中的至少一者:关于已经历运动估测的区块的信息(例如,已经历运动估测的区块的大小及数目)、关于所使用的运动估测模式的信息、关于参考帧的信息、及运动向量信息。
在一些示例性实施例中,在其中在第一编码器310中执行帧内预测的情形中,第一编码器310可向第二编码器320传送关于帧内预测的第二信息I2,第二信息I2包括以下中的至少一者:关于已经历帧内预测的区块的信息(例如,已经历帧内预测的区块的大小及数目)、关于所使用的帧内预测模式的信息、以及关于参考区块的信息。
减法器318可基于当前帧的当前区块与由预测模块312产生的预测区块之间的差异产生残留区块。残留区块可为表示当前帧的当前区块与预测区块之间的差异的区块。
速率控制模块314可使用预测区块来控制当前帧中所包括的多个区块中的每一者的量化参数值。
在一些示例性实施例中,第一编码器310可向第二编码器320传送第三信息I3,第三信息I3是与由速率控制模块314确定的量化参数值有关。
压缩模块313可包括变换模块313a、量化单元313b、反量化模块313c及反变换模块313d。
变换模块313a可形成从残留区块变换而来的区块数据。变换模块313a可使用离散余弦变换(discrete cosine transform,DCT)或小波变换(wavelet transform)。由变换模块313a产生的变换系数可被传送到量化单元313b。
量化单元313b可根据由速率控制模块314确定的量化参数值来对变换系数进行量化,且可输出经量化系数。量化单元313b可通过对变换系数进行量化来减少位数目。在此过程中,速率控制模块314可通过调整量化参数值来调整量化程度。
经量化系数可由反量化模块313c反量化且可由反变换模块313d反变换。经反量化及反变换的系数可通过加法器319加到预测区块,从而产生经重构的区块。
经重构的区块可通过滤波器单元316被过滤出。滤波器单元316可对经重构的区块应用去区块滤波器(deblocking filter)、样本自适应偏移(sample adaptive offset,SAO)滤波器及自适应环路滤波器(adaptive loop filter,ALF)中的至少一者。通过滤波器单元316过滤出的经重构的区块可存储在DPB 315中。
熵编码单元317可根据基于由量化单元313b计算的值或在编码期间计算的编码参数值的概率分布来对符号进行熵编码且可因此输出第一位流“BIT STREAM 1”。熵编码是一种接收具有各种值的符号并将所述符号表达为可解码的二进制序列、同时能消除统计冗余(statistical redundancy)的方法。
符号可指待编码的句法元素、编码参数或残留区块。作为进行编码及解码所需的参数的编码参数可不仅包含由编码器件编码且被传输到解码器件的信息(例如,句法元素),而且还包含将在编码或解码期间推断出的信息,且编码参数可为对图像进行编码或解码所必需的信息。编码参数的实例包括值或统计信息,例如帧内预测模式/帧间预测模式、运动向量、参考图片索引(reference picture indexes)、编码区块图案、是否存在残留区块、变换系数、经量化的变换系数、量化参数值、区块大小及区块划分信息。
当应用熵编码时,可通过将小数目的位分配到具有高出现概率的符号以及将大数目的位分配到具有低出现概率的符号来减小待编码的符号的位流大小。因此,通过熵编码可增强视频编码的压缩性能。
对于熵编码而言,可使用例如指数哥伦布(exponential Golomb)、上下文自适应可变长度编码(context-adaptive variable length coding,CAVLC)或上下文自适应二进制算术编码(context-adaptive binary arithmetic coding,CABAC)等编码方法。举例来说,熵编码单元317中可存储有用于执行熵编码的表(例如,可变长度编码/代码(variablelength coding/code,VLC)表),且熵编码单元317可使用所存储的VLC表来执行熵编码。另外,熵编码单元317可导出目标符号的二进制化方法(binarization method)及目标符号/位(bin)的概率模型且接着可使用所导出的二进制化方法或概率模型来执行熵编码。
图3至图5是示出图1所示视频编码器件中所包括的第二编码器的实例的方块图。
参照图3,第二编码器320可为包括与划分单元321、预测区块产生模块322、压缩模块323、滤波器单元325、后处理模块326、熵编码单元327、减法器328及加法器329对应的处理电路的现场可编程门阵列(FPGA)、应用专用集成电路(ASIC)、***芯片(SoC)。
图3所示元件对于实现第二编码器320而言未必都是必不可少的,且第二编码器320可包括比图3所示元件更多或更少的元件。
划分单元321可将第三数据FI2中所包括的第二帧F2划分成多个区块。第二帧F2可为位于由第一编码器310编码的第一帧F1之后的帧。
不同于图2所示第一编码器310,第二编码器320可不包括与预测模块(例如,图2所示预测模块312)对应的处理电路。而是,第二编码器320可包括预测区块产生模块322。
预测区块产生模块322可从第一编码器310接收第一信息I1或第二信息I2且可产生预测区块。
第二帧F2是位于第一帧F1之后的帧且因此很有可能与第一帧F1相似。因此,第二编码器320可在无需借助帧内预测模块或运动估测模块的条件下只通过与第一编码器310共享在对第一帧F1执行帧内预测或运动估测过程中由第一编码器310产生的信息来产生预测区块。
举例来说,在其中从第一编码器310接收到关于运动估测的第一信息I1的情形中,预测区块产生模块322可通过基于第一信息I1对第二帧F2中所包括的多个区块执行运动补偿来产生预测区块,第一信息I1包括以下中的至少一者:关于已经历运动估测的区块的信息(例如,已经历运动估测的区块的大小及数目)、关于所使用的运动估测模式的信息、关于参考帧的信息、及运动向量信息。
在另一个实例中,在其中从第一编码器310接收到关于帧内预测的第二信息I2的情形中,预测区块产生模块322可基于第二信息I2来为第二帧F2中所包括的区块中的每一区块产生预测区块,第二信息I2包括以下中的至少一者:关于已经历帧内预测的区块的信息(例如,已经历帧内预测的区块的大小及数目)、关于所使用的帧内预测模式的信息、以及关于参考帧的信息。
一般来说,运动估测模块在典型编码器中具有最大的大小。因此,通过不在第二编码器320中提供运动估测模块及帧内预测模块,第二编码器320的大小可显著减小。因此,可在使编码器件的大小最小化的同时使用多个编码器来以高的帧速率对图像进行编码。
在一些示例性实施例中,在第二编码器320中可只不设置有图2所示运动估测模块312a。在这种情形中,预测区块产生模块322可执行帧内预测而不执行帧间预测。因此,预测区块产生模块322可只从第一编码器310接收第一信息I1。
减法器328可基于第二帧F2的当前正被编码的当前区块与由预测区块产生模块322产生的预测区块之间的差异产生残留区块。残留区块可为表示第二帧F2的当前区块与预测区块之间的差异的区块。
压缩模块323可包括变换模块323a、量化单元323b、反量化模块323c及反变换模块323d。
变换模块323a可形成从残留区块变换而来的区块数据。变换模块323a可使用DCT或小波变换。由变换模块323a产生的变换系数可被传送到量化单元323b。
在一些示例性实施例中,量化单元323b可接收第三信息I3,第三信息I3与由第一编码器310的速率控制模块314确定的量化参数值有关。量化单元323b可基于从第一编码器310接收的第三信息I3来调整量化参数值。量化单元323b可根据经调整的量化参数值来对变换系数进行量化且可输出经量化系数。
如上面所已经阐述,第二帧F2是位于第一帧F1之后的帧且因此很有可能与第一帧F1相似。因此,即使使用相同的量化参数值,也不太可能出现问题。因此,通过不在第二编码器320中提供速率控制模块以及通过基于从第一编码器310接收到的第三信息I3确定量化参数值,可减小第二编码器320的大小。
参照图4,在一些示例性实施例中,第二编码器320可包括速率控制模块324。在这种情形中,不同于图3所示实例,量化单元323b可不从第一编码器310接收第三信息I3。速率控制模块324可使用预测区块来调整当前帧中所包括的多个区块中的每一者的量化参数值。量化单元323b可根据由速率控制模块324确定的量化参数值对变换系数进行量化,且可输出经量化系数。除了速率控制模块324之外,图4所示第二编码器320的所有元件均与图3所示第二编码器320的相应的对应元件相同,且因此将省略其详细说明。
再次参照图3,经量化系数可由反量化模块323c反量化且可由反变换模块323d反变换。经反量化及反变换的系数可通过加法器329加到预测区块,从而产生经重构的区块。
经重构的区块可通过滤波器单元325被过滤出。滤波器单元325可对经重构的区块应用去区块滤波器、SAO滤波器及ALF中的至少一者。通过滤波器单元325过滤出的经重构的区块可被传送到后处理模块326。
后处理模块326可接收经重构的区块且可对帧进行重构。后处理模块326可将经重构的帧与由第二编码器320编码的第二帧F2进行比较。如果比较结果表明品质劣化,则后处理模块326可将表示已出现品质劣化的第四信息I4传送到图1所示处理器130。如果经重构的帧与第二帧F2之间的差异超过预定义水平,则后处理模块326可确定已出现品质劣化。
参照图5,后处理模块326可通过第一编码器310接收多个区块A且可产生第三帧。所述多个区块A可为通过由图2所示划分单元311对第一帧F1进行划分而获得的区块,或者可为通过图2所示滤波器单元316重构的区块。后处理模块326可使用通过图5所示滤波器单元325接收的重构区块来产生第四帧。
后处理模块326可将第三帧与第四帧进行比较且如果第三帧与第四帧之间的差异超过期望的(或作为另外一种选择,预定义的)水平,则可确定已出现品质劣化。在其中后处理模块326确定已出现品质劣化的情形中,后处理模块326可将表示已出现品质劣化的第四信息I4传送到处理器130。
除了速率控制模块324之外,图5所示第二编码器320的所有元件均与图4所示第二编码器320的相应的对应元件相同,且因此,将省略其详细说明。
在一些示例性实施例中,在其中接收到表示已出现品质劣化的第四信息I4的情形中,处理器130可将帧重新分配到第一编码器310及第二编码器320。此将在稍后参照图6至图8加以阐述。
再次参照图3,熵编码单元327可根据基于由量化单元323b计算的值或在编码期间计算的编码参数值的概率分布来对符号进行熵编码且可因此输出第二位流“BIT STREAM2”。熵编码是一种接收具有各种值的符号并将所述符号表达为可解码的二进制序列、同时能消除统计冗余的方法。
当应用熵编码时,可通过将小数目的位分配到具有高出现概率的符号以及将大数目的位分配到具有低出现概率的符号来减小待编码的符号的位流大小。因此,通过熵编码可增强视频编码的压缩性能。
对于熵编码而言,可使用例如指数哥伦布、CAVLC或CABAC等编码方法。举例来说,熵编码单元327中可存储有用于执行熵编码的表(例如,VLC表),且熵编码单元327可使用所存储的VLC表来执行熵编码。另外,熵编码单元327可导出目标符号的二进制化方法及目标符号/位(bin)的概率模型且接着可使用所导出的二进制化方法或概率模型来执行熵编码。
图6是示出根据本公开一些示例性实施例的响应于在视频编码装置中探测到品质劣化来重新分配被输入到第一编码器及第二编码器的帧的方法的流程图,且图7及图8是示出根据本公开一些示例性实施例的响应于在视频编码装置中探测到品质劣化来重新分配被输入到第一编码器及第二编码器的帧的方法的图。
根据本公开一些示例性实施例的响应于在视频编码装置中探测到品质劣化来重新分配被输入到第一编码器及第二编码器的帧的方法将在下文中加以阐述,且将不再对图1至图5所示示例性实施例予以重复说明。
参照图6,在操作S410中,图1所示视频编码器件100中所包括的处理器130可对被输入到图3所示第一编码器310及第二编码器320的帧进行分配。
举例来说,在其中输入数据包括多个帧的情形中,处理器130可将所述多个帧分配成使奇数帧被输入到第一编码器310且偶数帧被输入到第二编码器320。如果所述多个帧在第一编码器310与第二编码器320之间分配成使不同的帧被分配到第一编码器310及第二编码器320中不同的编码器,则视频编码器件的帧速率可增大。
举例来说,参照图7,处理器130可将第一帧F1分配到第一编码器310且可将第二帧F2(即,位于第一帧F1之后的帧)分配到第二编码器320。
再次参照图6,在操作S420中,第一编码器310及第二编码器320可对向其分配的帧进行编码。
在操作S430中,第二编码器320中所包括的后处理模块326可探测品质劣化。
如以上已参照图1至图5所论述,在第二编码器320中可不设置有执行帧内预测或帧间预测的预测模块。而是,第二编码器320可从第一编码器310接收关于帧内预测或帧间预测的信息且可产生预测区块。
参照图7,如果由第二编码器320编码的第二帧F2不同于由第一编码器310编码的第一帧F1(举例来说,如果第二帧F2的亮度不同于第一帧F1的亮度或者如果第二帧F2的运动向量不同于第一帧F1的运动向量),则在由第二编码器320编码的帧中可能会出现品质劣化。
由后处理模块326识别品质劣化的方法已在以上参照图3及图5进行了阐述,且因此将省略其详细说明。
再次参照图6,如果后处理模块326识别出品质劣化(S430,是),则在操作S440中,后处理模块326可将表示已识别出品质劣化的信息传送到处理器130。
举例来说,参照图8,如果从后处理模块326接收到表示已出现品质劣化的信息,则处理器130可在由第一编码器310对第一帧F1进行的编码完成时将第二帧F2重新分配到第一编码器310,且可将第三帧F3(即,位于第二帧F2之后的帧)分配到第二编码器320。也就是说,当由第一编码器310对第一帧F1进行的编码完成时,处理器130可将偶数帧分配到第一编码器310且可将奇数帧分配到第二编码器320。也就是说,处理器130可在探测到品质劣化之后改变帧的分配方式。
再次参照图6,第一编码器310可对向其重新分配的第二帧F2进行编码,且第二编码器320可对向其分配的第三帧F3进行编码。不同于第二编码器320,第一编码器310可包括预测模块。因此,可通过在第一编码器310中对第二帧F2进行重新编码来解决已在第二帧F2中出现的品质劣化。
在一些示例性实施例中,如果后处理模块326探测到品质劣化,则处理器130可将由第二编码器320产生的第二位流“BIT STREAM 2”删除,而不存储或传送第二位流“BITSTREAM 2”。
如果后处理模块326未识别出品质劣化(S430,否),则在操作S450中,处理器130可判断由第一编码器310或第二编码器320编码的帧是否是最末帧。
如果由第一编码器310或第二编码器320编码的帧是最末帧(S450,是),则可完成视频编码。另一方面,如果由第一编码器310或第二编码器320编码的帧不是最末帧(S450,否),则处理器130可对后续帧重复进行操作S410、S420、S430、S440及S450。
已参照附图阐述了本公开的示例性实施例,然而所属领域中的一般技术人员可理解,本公开可由所属领域中的一般技术人员以其他具体形式执行,而此不会改变本公开的技术概念或基本特征。另外,上述示例性实施例仅为实例而不对本公开的权利范围进行限制。

Claims (18)

1.一种视频编码器件,包括:
第一编码器,包括预测电路,所述预测电路被配置成:
对第一帧中所包括的所有多个第一区块执行帧内预测操作及帧间预测操作中的一者或多者,以及
如果所述预测电路对所有所述多个第一区块执行所述帧间预测操作,则传送关于运动估测操作的第一信息;以及
第二编码器,包括预测区块产生电路,所述预测区块产生电路被配置成:
从所述第一编码器接收所述第一信息,以及
通过基于所述第一信息对第二帧中所包括的多个第二区块执行运动补偿操作来产生预测区块,所述第二帧是与所述第一帧不同的帧,
其中整个所述第一帧由所述第一编码器编码,并且整个所述第二帧由所述第二编码器编码。
2.根据权利要求1所述的视频编码器件,其中所述第一信息包括以下中的至少一者:关于已经历所述运动估测操作的区块的信息、关于所述运动估测操作的模式的信息、关于参考帧的信息、及运动向量信息。
3.根据权利要求1所述的视频编码器件,其中
所述预测电路被配置成如果所述第一编码器执行所述帧内预测操作,则将关于所述帧内预测操作的第二信息传送到所述第二编码器,且
所述预测区块产生电路被配置成接收所述第二信息,并基于所述第二信息为所述第二帧中所包括的所述第二区块产生预测区块而不直接使用预测电路执行所述帧内预测操作。
4.根据权利要求3所述的视频编码器件,其中所述第二信息包括以下中的至少一者:关于已经历所述帧内预测操作的区块的信息、关于所述帧内预测操作的模式的信息、及关于参考区块的信息。
5.根据权利要求1所述的视频编码器件,其中
所述第一编码器还包括速率控制电路,所述速率控制电路被配置成确定所述第一区块的量化参数值,且
所述第二编码器还包括压缩电路,所述压缩电路包括量化单元,所述量化单元被配置成接收第三信息且执行量化操作,所述第三信息与所述第一区块的所述量化参数值相关联。
6.根据权利要求1所述的视频编码器件,其中
所述第一编码器还包括第一速率控制电路,所述第一速率控制电路被配置成确定所述第一区块的量化参数值,且
所述第二编码器还包括第二速率控制电路,所述第二速率控制电路被配置成确定所述第二区块的量化参数值。
7.根据权利要求1所述的视频编码器件,还包括:
处理器,被配置成将所述第一帧及所述第二帧分别分配到所述第一编码器及所述第二编码器,所述第一帧及所述第二帧是在输入图像中所包括的多个帧中的帧。
8.根据权利要求7所述的视频编码器件,其中所述第二编码器被配置成如果从通过对由所述第二编码器编码的数据进行反量化而获得的经重构的帧探测到品质劣化,则将第四信息传送到所述处理器。
9.根据权利要求8所述的视频编码器件,其中如果所述处理器接收到所述第四信息,则所述处理器被配置成:
当所述第一编码器完成所述第一帧的编码时,将所述第二帧从所述第二编码器重新分配到所述第一编码器,且
将第三帧分配到所述第二编码器,所述第三帧是位于所述第二帧之后的帧。
10.一种编码器,被配置成对第一帧进行编码而不具有用于执行帧内预测及帧间预测中的一者或多者的预测电路,所述编码器包括:
预测区块产生电路,被配置成从第一编码器接收第一信息及第二信息,并产生预测区块,所述第一信息与运动估测操作相关联且所述第二信息与帧内预测操作相关联,所述第一编码器不同于所述编码器,其中所述第一信息是通过所述第一编码器对第二帧中所包括的所有多个第一区块执行所述运动估测操作获得的,所述第二信息是通过所述第一编码器对所述第二帧中所包括的所有所述多个第一区块执行所述帧内预测操作获得的,所述第二帧是位于所述第一帧之前的帧;以及
后处理电路,被配置成基于经重构的帧及所述第一帧来探测品质劣化,所述经重构的帧是通过对由所述编码器编码的数据进行反量化来获得,
其中整个所述第一帧由所述编码器编码,并且整个所述第二帧由所述第一编码器编码。
11.根据权利要求10所述的编码器,其中所述第一信息包括以下中的至少一者:关于已经历所述运动估测操作的区块的信息、关于所述运动估测操作的模式的信息、关于参考帧的信息、及运动向量信息。
12.根据权利要求10所述的编码器,其中所述第二信息包括以下中的至少一者:关于已经历所述帧内预测操作的区块的信息、关于所述帧内预测操作的模式的信息及关于参考区块的信息。
13.根据权利要求10所述的编码器,其中所述后处理电路被配置成如果所述第一帧与所述经重构的帧之间的差异超过所定义水平,则探测到已发生所述品质劣化。
14.一种视频编码器件,包括:
第一编码器;
第二编码器,所述第二编码器不同于所述第一编码器;以及
处理器,被配置成:
将第一帧及第二帧分别分配到第一编码器及第二编码器,所述第一帧及所述第二帧是输入图像中所包括的多个帧中的不同帧,所述第二帧是位于所述第一帧之后的帧,以及
如果从由所述第二编码器编码的图像中探测到品质劣化,则所述处理器被配置成:
在所述第一编码器完成所述第一帧的编码后,将所述第二帧重新分配到所述第一编码器,以及
将第三帧分配到所述第二编码器,所述第三帧是位于所述第二帧之后的帧,
其中所述第一编码器被配置成对所述第一帧中所包括的所有多个第一区块执行帧内预测操作及帧间预测操作中的一者或多者以传送信息,并且所述第二编码器被配置成基于所述信息对所述第二帧进行编码,
其中整个所述第一帧由所述第一编码器编码,并且整个所述第二帧由所述第二编码器编码。
15.根据权利要求14所述的视频编码器件,其中所述第一编码器包括预测电路,所述预测电路被配置成:
对所述第一帧中所包括的所述多个第一区块执行所述帧内预测操作及所述帧间预测操作中的一者或多者,
如果所述第一编码器对所述第一区块执行所述帧间预测操作,则将第一信息传送到所述第二编码器,所述第一信息与运动估测操作相关联,以及
如果所述第一编码器对所述第一区块执行所述帧内预测操作,则将第二信息传送到所述第二编码器,所述第二信息与所述帧内预测操作相关联。
16.根据权利要求15所述的视频编码器件,其中所述第二编码器被配置成从所述第一编码器接收所述第一信息及所述第二信息中的一者或多者,且所述第二编码器包括:
预测区块产生电路,被配置成基于所述第一信息及所述第二信息中的一者或多者为在所述第二帧中所包括的多个第二区块产生预测区块。
17.根据权利要求14所述的视频编码器件,其中所述第二编码器被配置成如果所述第二编码器探测到所述第二帧中的品质劣化,则将第四信息传送到所述处理器。
18.根据权利要求17所述的视频编码器件,其中所述处理器被配置成如果所述处理器接收到所述第四信息,则确定已发生所述品质劣化。
CN201811197684.3A 2017-10-16 2018-10-15 视频编码器件及编码器 Active CN109672890B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170133921A KR102347598B1 (ko) 2017-10-16 2017-10-16 영상 부호화 장치 및 인코더
KR10-2017-0133921 2017-10-16

Publications (2)

Publication Number Publication Date
CN109672890A CN109672890A (zh) 2019-04-23
CN109672890B true CN109672890B (zh) 2023-04-07

Family

ID=66096274

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811197684.3A Active CN109672890B (zh) 2017-10-16 2018-10-15 视频编码器件及编码器

Country Status (4)

Country Link
US (1) US10674160B2 (zh)
KR (1) KR102347598B1 (zh)
CN (1) CN109672890B (zh)
TW (1) TWI816684B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11190810B2 (en) * 2018-01-26 2021-11-30 Samsung Electronics Co., Ltd. Device and method for compressing image data using quantization parameter and entropy tables
CN115767245A (zh) * 2021-08-30 2023-03-07 瑞昱半导体股份有限公司 视频处理***以及方法
CN115633176B (zh) * 2022-12-08 2023-03-21 北京蔚领时代科技有限公司 动态调整画面群组长度的方法、装置和存储介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978029A (en) 1997-10-10 1999-11-02 International Business Machines Corporation Real-time encoding of video sequence employing two encoders and statistical analysis
US6356589B1 (en) 1999-01-28 2002-03-12 International Business Machines Corporation Sharing reference data between multiple encoders parallel encoding a sequence of video frames
CN101411203B (zh) * 2006-04-04 2012-11-07 高通股份有限公司 自适应编码器辅助帧速率上变换
KR100791299B1 (ko) 2006-04-11 2008-01-04 삼성전자주식회사 다 계층 기반의 비디오 인코딩 방법 및 장치
WO2007138151A1 (en) * 2006-05-30 2007-12-06 Hantro Products Oy Apparatus, arrangement, method and computer program product for digital video processing
WO2008008150A2 (en) 2006-07-10 2008-01-17 Thomson Licensing Methods and apparatus for enhanced performance in a multi-pass video encoder
US20080152014A1 (en) * 2006-12-21 2008-06-26 On Demand Microelectronics Method and apparatus for encoding and decoding of video streams
US8311115B2 (en) * 2009-01-29 2012-11-13 Microsoft Corporation Video encoding using previously calculated motion information
KR20110047310A (ko) * 2009-10-30 2011-05-09 삼성전자주식회사 비디오 인코딩 장치 및 비디오 인코딩 방법
US8681858B2 (en) 2009-12-23 2014-03-25 General Instrument Corporation Rate control for two-pass encoder
US20110150074A1 (en) 2009-12-23 2011-06-23 General Instrument Corporation Two-pass encoder
US9319716B2 (en) * 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
US20130259137A1 (en) * 2012-03-30 2013-10-03 Google Inc. System and Method for Multi-Core Hardware Video Encoding And Decoding
US8948529B1 (en) 2012-10-30 2015-02-03 Google Inc. Multi-pass encoding
CN104782124B (zh) 2012-12-17 2018-09-07 英特尔公司 利用编码器硬件对视频内容进行预处理
KR20150035318A (ko) 2013-09-27 2015-04-06 삼성테크윈 주식회사 인코딩 장치 및 방법, 그리고 인코딩 장치를 구비한 카메라
US10057590B2 (en) * 2014-01-13 2018-08-21 Mediatek Inc. Method and apparatus using software engine and hardware engine collaborated with each other to achieve hybrid video encoding
KR102264840B1 (ko) * 2014-11-27 2021-06-15 삼성전자주식회사 비디오 프레임 인코딩 회로, 그것의 인코딩 방법 및 그것을 포함하는 비디오 데이터 송수신 장치
KR102483269B1 (ko) * 2016-08-29 2023-01-02 삼성전자주식회사 서버 장치, 사용자 단말 장치, 그 제어 방법들 및 스트리밍 시스템
US10115223B2 (en) * 2017-04-01 2018-10-30 Intel Corporation Graphics apparatus including a parallelized macro-pipeline

Also Published As

Publication number Publication date
KR20190042234A (ko) 2019-04-24
TW201918070A (zh) 2019-05-01
US10674160B2 (en) 2020-06-02
KR102347598B1 (ko) 2022-01-05
US20190116362A1 (en) 2019-04-18
TWI816684B (zh) 2023-10-01
CN109672890A (zh) 2019-04-23

Similar Documents

Publication Publication Date Title
US10291925B2 (en) Techniques for hardware video encoding
KR102543444B1 (ko) 영상 부호화 장치
US9967573B2 (en) Codec, system on chip (SOC) including the same, and data processing system including the SOC
TWI688260B (zh) 包括用於影像處理的編碼器之方法、系統及裝置
CN109672890B (zh) 视频编码器件及编码器
US10841659B2 (en) Video encoding apparatus and video encoding system
US10009617B2 (en) Method of operating encoder and method of operating system on chip including the encoder
US10694178B2 (en) Video processing device for encoding frames constituting hierarchical structure
US20170013262A1 (en) Rate control encoding method and rate control encoding device using skip mode information
KR102503900B1 (ko) 양자화 파라미터를 적응적으로 결정하는 인코더 및 이를 포함하는 애플리케이션 프로세서
US10609388B2 (en) Method and apparatus for encoding and decoding image
US10931952B2 (en) Multi-codec encoder and multi-codec encoding system including the same
US10097830B2 (en) Encoding device with flicker reduction
US10728557B2 (en) Embedded codec circuitry for sub-block based entropy coding of quantized-transformed residual levels

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