CN107197276A - 半导体设备、编码控制方法和相机设备 - Google Patents
半导体设备、编码控制方法和相机设备 Download PDFInfo
- Publication number
- CN107197276A CN107197276A CN201710116777.8A CN201710116777A CN107197276A CN 107197276 A CN107197276 A CN 107197276A CN 201710116777 A CN201710116777 A CN 201710116777A CN 107197276 A CN107197276 A CN 107197276A
- Authority
- CN
- China
- Prior art keywords
- threshold
- buffer occupancy
- control information
- encoding
- amount
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/142—Detection of scene cut or scene change
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/149—Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/184—Methods 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 bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及半导体设备、编码控制方法和相机设备。所述半导体设备包括:编码处理单元,其存储基于指定的编码控制信息来编码的输入数据的被编码流;缓冲器管理单元,其根据所生成数据量来计算——指示存储在发送缓冲器中的数据量的发送缓冲器占用量,以及指示存储在作为被编码流的目的地的接收缓冲器中的数据量的接收缓冲器占用量流;以及控制信息指定单元,其在发送缓冲器占用量等于或小于第一阈值时,向编码处理单元基于该接收缓冲器占用量来指定编码控制信息,并且当发送缓冲器占用量大于第一阈值时,指定编码控制信息以与在等于或小于第一阈值的情况下相比进一步减少所生成数据量。
Description
相关申请的交叉引用
包括本说明书、附图和摘要的于2016年3月14日提交的日本专利申请No.2016-049101的公开内容通过引用整体并入本文。
技术领域
本发明涉及一种半导体设备、编码控制方法、和相机设备。例如,本发明涉及与输入数据的编码相关联的半导体设备、编码控制方法、和相机设备。
背景技术
近年来,半导体设备已经被广泛用于通过根据上一次编码的结果控制随后的编码速率来对视频数据进行编码。作为用于编码控制的技术,例如已知专利文献1(未决日本特开平10(1998)-208393号)。
专利文献1公开了一种用于将被编码视频信号的比特流记录到光盘中的视频编码器的技术。根据专利文献1的视频编码器被配置以使得视频编码器基于指定的待编码的比特的量来对输入图像数据进行编码,并且将作为编码结果的被编码比特流存储到编码器缓冲器(发送缓冲器)中。这里,当由于外部冲击等而暂时中断向记录介质的记录时,来自编码器缓冲器的输出被暂时停止。此时,缓冲器管理电路基于被编码比特量以及编码器缓冲器中的输出比特率来计算编码器缓冲器中的数据的占用量。然后,速率控制器根据该占用量来控制视频编码器中的被编码比特率。
发明内容
在专利文献1中,假设发送缓冲器大小等于或大于在将数据记录在光盘中之前存储该数据的缓冲器(接收缓冲器)的大小。该假设导致的问题是,如果在诸如车载相机的设备中没有提供足够的发送缓冲器大小,则难以灵活地执行编码控制。
在结合附图来考虑时本发明的其它目的、优点和新颖特征根据本发明的以下具体实施方式将变得更加明显。
根据实施例,半导体设备通过考虑发送缓冲器占用量和接收缓冲器占用量二者来控制编码。
根据上述的实施例,有可能灵活地控制编码。
附图说明
图1是图示了根据第一实施例的半导体设备的配置的框图;
图2是图示了根据第一实施例的编码处理系统的配置的框图;
图3是图示了根据第一实施例的编码器的配置的框图;
图4是图示了根据第一实施例的虚拟接收缓冲器占用量的变化的示例的图;
图5是图示了根据第一实施例的虚拟发送缓冲器占用量的变化的示例的图;
图6是图示了根据第一实施例的编码控制方法的流程的流程图;
图7是图示了根据第二实施例的编码控制方法的流程的流程图;
图8是图示了虚拟发送缓冲器占用量和编码模式之间的关系的图。
图9是图示了根据第三实施例的编码器的配置的框图。
图10是图示了根据第三实施例的编码控制方法的流程的流程图;以及
图11是图示了虚拟发送缓冲器占用量和编码模式之间的关系的图。
具体实施方式
在下文中,将参照附图来描述对以上描述的用于解决所述问题的装置进行应用的具体示例。在附图中的每一个中,相似元件由相似附图标记标注,并且为了使描述清楚,视情况来省略重复描述。
在下面描述的实施例中,为了方便起见,在需要时本发明的具体实施方式将被分成多个章节或实施例。然而,除非另有说明,这些章节或实施例彼此不相关,并且其中一个充当对其他的整体或一部分的变型、具体实施方式、或补充解释。此外,在下述的实施例中,当提及元件的数目(包括件数、数值、量、范围等)时,元件的数目不限于特定数目,除非另有说明或者除非原则上明确限于特定数目。元件的数目可以大于或小于所指定的数目。
此外,在下述实施例中,除非另有说明或原则上明确需要,否则不一定需要组件(包括操作步骤等)。类似地,在下面描述的实施例中,在提及组件的形状、位置关系、或其它特性时,与形状或其它特性基本上接近或相似的那些特性被包括在内,除非另有说明或者除非它们原则上不应当被明确地包括。这适用于数目或其它属性(包括件数、数值、量、范围等)。
这里,将描述如何构思以下实施例的背景。首先,上述专利文献1涉及一种方法,当在编码流的接收侧出现处理延迟时,控制编码率以使得发送缓冲器能够保持在发送缓冲器的空闲空间内(使得发送缓冲器不会溢出)。因此,在专利文献1中,假设发送缓冲器大小等于或大于接收缓冲器大小。
然而,随着近来对防水的要求,对于通过封装整个相机模块来减小诸如车载相机和监视相机的器材的大小的需求日益增长。在这种情况下,难以在相机模块中安装诸如动态随机存取存储器(DRAM)的大容量外部存储器。另外,与车载相机的情况相似,当在驾驶期间在驾驶员座位附近的屏幕上显示所拍摄的图像时,需要低延迟。因此,在专利文献1的假设下,这样的问题可能无法解决。
此外,在专利文献1中,编码控制基于发送缓冲器的占用量,使得难以通过临时增加编码速率来维持对图像进行编码的精度,例如,在输入视频图像中局部地发生快速变化的情况下。
因此,下面描述用于解决以上问题的实施例。
第一实施例
图1是图示了根据第一实施例的半导体设备100的配置的框图。半导体设备100被设计为对图像等的输入数据in_data进行编码,并且输出被编码流(比特流)bts。注意,输入数据in_data能够是作为图像数据的一部分的图片(宏块)数据。此外,假设输出被编码流bts一旦被存储在发送缓冲器(未示出)中,传输并存储在接收缓冲器(未示出)中,从接收缓冲器读取,并且然后被解码。半导体设备100包括编码处理单元110、缓冲器管理单元120、和控制信息指定单元130。
编码处理单元110基于指定的编码控制信息ct1来将作为被编码输入数据in_data的被编码流bts存储到发送缓冲器中。缓冲器管理单元120根据在编码过程中生成的数据量来计算接收缓冲器占用量141和发送缓冲器占用量142两者。接收缓冲器占用量141是指示存储在作为被编码流bts的目的地的接收缓冲器中的数据量的数值信息。此外,发送缓冲器占用量142是显示存储在发送缓冲器中的数据量的数值信息。换言之,缓冲器管理单元120不具有实际存储被编码流bts的缓冲器,而是具有表示每个缓冲器的虚拟缓冲器。因此,接收缓冲器占用量141也能够被称为“虚拟接收缓冲器占用量”,并且发送缓冲器占用量142也可以称为“虚拟发送缓冲器占用量”。
控制信息指定单元130向编码处理单元110指定编码控制信息ct1。这里,当发送缓冲器占用量142等于或小于第一阈值时,控制信息指定单元130基于接收缓冲器占用量141来指定编码控制信息ct1。另一方面,当发送缓冲器占用量142大于第一阈值时,控制信息指定单元130指定编码控制信息ct1,以与在等于或小于第一阈值的情况下相比进一步减少所生成的数据量b0。
这里,当将“比第一阈值大预定值的值”被定义为第二阈值时,“发送缓冲器占用量大于第一阈值的情况”也可以被解释为“发送缓冲器占用量等于或大于第二阈值的情况”。
此外,“编码控制信息ct1”是当由编码处理单元110执行编码过程时的控制信息。优选地,例如,“编码控制信息ct1”是在编码过程中使用的量化值,或者指定编码模式的信息(即,指令编码处理单元110使用特定量化值执行编码过程的规范信息(specificationinformation))。
此外,例如,“与等于或小于第一阈值的情况相比,进一步减少所生成的数据量b0的编码控制信息ct1”示出:“发送缓冲器占用量大于第一阈值的情况”中的量化值大于“发送缓冲器占用量等于或小于第一阈值的情况”中的量化值。
如上所述,根据第一实施例的半导体设备100通过使用虚拟接收缓冲器的占用量和虚拟发送缓冲器的占用量两者来控制编码比特率。然后,半导体设备100通常操作以满足基于虚拟接收缓冲器的占用量来设置的目标比特率。换言之,半导体设备100通过在虚拟接收缓冲器的占用量可用时分配许多比特来控制编码比特率,并且在虚拟接收缓冲器的占用量不可用时通过减少所分配的比特数来控制编码比特率。此外,当虚拟接收缓冲器的占用量可用时,半导体设备100操作以准许比特率的瞬时增加,以便以高质量对图像进行编码。
这里,当发送缓冲器的大小与接收缓冲器的大小相比非常小时,向发送缓冲器的输入速率瞬间增加。这导致依赖于发送缓冲器的大小的发送缓冲器被破坏的问题。因此,在第一实施例中,首先基于在正常操作中的虚拟接收缓冲器的占用量来执行比特率控制,以灵活地处置输入图像的复杂度。然后,当表示发送缓冲器的虚拟发送缓冲器的占用量达到超过预定阈值的量时,即使接收缓冲器具有可用空间,也在减少编码量的方向上执行编码控制,而保持高质量图像编码。换言之,在第一实施例中,通过使用两个虚拟缓冲器占用量来执行编码控制。因此,即使在具有小的发送缓冲器的系统的情况下,也有可能执行减轻发送缓冲器的溢出的编码控制。
如上所述,根据第一实施例,通过在存在输入图像的局部变化时临时增加编码速率,同时防止发送缓冲器被破坏,有可能灵活地执行编码控制并保持图像的编码精度。
第一示例
接下来,将描述第一实施例的第一示例。
图2是图示根据第一示例的编码处理系统1000的配置的框图。编码处理系统1000包括编码器1、发送缓冲器2、接收缓冲器3、和解码器4。这里,发送缓冲器2和接收缓冲器3通过诸如通信线路的传输路径耦合。编码器1是上述的半导体设备100的示例。此外,例如,假设编码器1和发送缓冲器2被包括在相机设备10中。然而,本发明不限于此。编码器1将诸如由相机(未示出)拍摄的摄影图像的视频图像作为输入数据in_data来编码为诸如H.264的被编码流bts。然后,编码器1将被编码流bts存储在发送缓冲器2中。相机设备10通过传输路径将存储在发送缓冲器2中的编码流bts传输到接收缓冲器3。然后,通过从接收缓冲器侧读取被编码流bts来对被编码流bts进行解码并且输出到屏幕(未示出)等,解码器4再现和显示视频图像。
图3是图示根据第一示例的编码器1的配置的框图。编码器1包括缓冲器管理单元11、速率控制单元12、和编码处理单元13。编码处理单元13是上述的编码处理单元110的示例。编码处理单元13基于量化值Qj和编码模式md来执行编码。然后,编码处理单元13将编码流bts输出到发送缓冲器2。注意,量化值Qj和编码模式md是上述的编码控制信息ct1的示例。此外,编码处理单元13将编码过程中的生成的比特量b1输出到缓冲器管理单元11。
缓冲器管理单元11是上述的缓冲器管理单元120的示例。缓冲器管理单元11通过使用来自编码处理单元13的所生成的比特量b1来计算虚拟接收缓冲器占用量dj和虚拟发送缓冲器占用量Rbj两者,并且输出到速率控制单元12。这里,缓冲器管理单元11包括目标比特确定部件111和传输比特确定部件112作为内部配置。
在目标比特确定部件111中,由用户或其它装置预先设置预定的设定值st11。然后,目标比特确定部件111基于该设定值st11来确定目标比特量b2,并输出目标比特量b2。缓冲器管理单元11通过将生成的比特量b1和最后的虚拟接收缓冲器占用量dj相加并且通过减去目标比特量b2来计算新的虚拟接收缓冲器占用量dj。
这里,图4是图示了根据第一示例的虚拟接收缓冲器占用量的变化的示例的图。如图4所示,虚拟接收缓冲器占用量dj依赖于每单位时间的所生成的比特量b1和目标比特量b2而增加或减少。
返回图3继续描述。
此外,在传输比特确定部件112中,用户或其它装置预先设置预定的设定值st12。然后,传输比特确定部件112基于设定值st12来确定传输比特量b3,并输出所确定的传输比特量b3。注意,设定值st12包括作为系统特有的信息的发送缓冲器信息。发送缓冲器信息包括发送缓冲器的大小、传输速率等。缓冲器管理单元11通过将生成的比特量b1和最后的虚拟发送缓冲器占用量Rbj相加并通过减去传输比特量b3来计算新的虚拟发送缓冲器占用量Rbj。
这里,图5是图示根据第一示例的虚拟发送缓冲器占用量的变化的示例的图。如图5所示,虚拟发送缓冲器占用量Rbj依赖于每单位时间的所生成比特量b1和传输比特量b3而增加或减少。
返回图3继续描述。
速率控制单元12是上述的控制信息指定单元130的示例。速率控制单元12通过使用从缓冲器管理单元11接收的虚拟接收缓冲器占用量dj和虚拟发送缓冲器占用量Rbj,将量化值Qj和编码模式md输出到编码处理单元13。这里,速率控制单元12包括量化值确定部件121和阈值判断部件122作为内部配置。
在量化值确定部件121中,由用户或其它装置预先设置预定的设置值st21。注意,例如,设置值st21包括量化宽度的宽度、反应参数等。然而,本发明不限于这些示例。然后,量化值确定部件121通过使用来自缓冲器管理单元11的虚拟接收缓冲器占用量dj并通过使用设置值st21来计算量化值Qj。然后,量化值确定部件121将计算的量化值Qj输出到编码处理单元13。例如,量化值确定部件121通过使用以下等式(1)来计算量化值Qj。这里,Qt是量化宽度,其例如是从0到51的值,并且reac是反应参数。
Qj=(dj*Qt)/reac等式(1)
此外,阈值判断部件122通过使用来自缓冲器管理单元11的虚拟发送缓冲器占用量Rbj并通过使用设定值st22来执行预定的确定。然后,阈值判断部件122将编码模式md输出到编码处理单元13。更具体地,阈值判断部件122判断虚拟发送缓冲器占用量Rbj是否大于预定阈值th1。然后,当虚拟发送缓冲器占用量Rbj等于或小于阈值th1时,阈值判断部件122将编码模式md输出为“正常编码模式”。另一方面,当虚拟发送缓冲器占用量Rbj大于阈值th1时,阈值判断部件122将编码模式md输出为“紧急模式”。这里,“紧急模式”是执行编码的模式,其能够在不偏离标准规范的情况下最大程度地减少生成的数据量。注意,“紧急模式”也可以被称为“最小比特编码模式”。
当来自速率控制单元12的编码模式md指示“正常编码模式”时,编码处理单元13基于从速率控制单元12接收的量化值Qj来对输入数据in_data进行编码。另一方面,当来自速率控制单元12的编码模式md指示“紧急模式”时,编码处理单元13基于预先设置的量化值来对输入数据in_data进行编码。这里,例如,预定量化值是使编码过程中生成的比特量最小化的量化值。以这种方式,可以相对于输入数据in_data来适当地调整生成的比特量。
图6是图示了根据第一示例的编码控制方法的流程的流程图。首先,缓冲器管理部件11更新虚拟发送缓冲器占用量Rbj和虚拟接收缓冲器占用量dj(S101)。接着,阈值判断部件122确定虚拟发送缓冲器占用量Rbj是否大于阈值th1(S102)。当确定虚拟发送缓冲器占用量Rbj大于阈值th1(在S102中为“是”)时,阈值判断部件122将编码模式md设置为“紧急模式”,并输出到编码处理单元13(S103)。然后,编码处理单元13基于预定量化值来对输入数据in_data进行编码(S105)。
另一方面,在步骤S102中,当确定虚拟发送缓冲器占用量Rbj等于或小于阈值th1(S102中为“否”)时,阈值判断部件122将编码模式md设置为“正常编码模式“并输出到编码处理单元13(S104)。然后,编码处理单元13基于从量化值确定部件121接收的量化值Qj来对输入数据in_data进行编码(S106)。注意,假设量化值确定部件121与阈值判断部件122并行计算量化值Qj。
出于上述的原因,第一示例也能够被表达如下。即,在虚拟发送缓冲器占用量Rbj等于或小于阈值th1时,控制信息指定单元基于虚拟接收缓冲器占用量dj来计算编码控制信息,并向编码处理单元指定计算的编码控制信息。另一方面,当虚拟发送缓冲器占用量Rbj大于阈值th1时,控制信息指定单元向编码处理单元指定该预定值作为编码控制信息。
如上所述,根据第一示例,只要发送缓冲器占用量可用,就有可能根据接收缓冲器占用量来适当地控制编码。换言之,由于在正常操作中基于虚拟接收缓冲器占用量来执行编码控制,因此有可能在发送缓冲器的占用量将溢出的风险低的情况下以高质量对图像进行编码。另一方面,当发送缓冲器的占用量超过设定阈值时,确定发送缓冲器处于存在高溢出风险的水平。因此,编码控制防止编码量的瞬时增加,以确保发送缓冲器不会溢出。特别地,当在输入视频图像中局部地发生快速变化时,可以通过临时将编码率增加到发送缓冲器中的空闲空间的程度来保持被编码图像的精度。因此,可以灵活地处置输入图像的复杂性并保持高质量的图像编码,同时防止发送缓冲器被破坏。
如上所述,在诸如对于小型化具有很强要求的车载相机模块的装置的情况下,由于电源和安装面积的问题而可能不安装诸如DRAM的大容量存储器,使得发送缓冲器应当在芯片中被配置有静态随机存取存储器(SRAM)。因此,难以向发送缓冲器分配充足的容量。即使在这样的情况下,第一示例也能够通过生成和发送被编码流来保持编码图像的精度而同时防止发送缓冲器被破坏。
此外,在上述的专利文献1中,编码器缓冲器应当向缓冲器管理单元通知输出比特率。结果,发生延迟,并且存在缺乏实时属性的问题。另外,在专利文献1中,编码器缓冲器应当与缓冲器管理单元通信,使得还存在作为相机模块的灵活性缺乏的问题。为了解决这些问题,根据第一示例的缓冲器管理单元通过使用预先在发送缓冲器中设置的传输速率以及从编码处理单元获得的所生成的数据量来计算发送缓冲器占用量。以这种方式,缓冲器管理单元通过使用传输比特确定部件来计算传输速率,而不是每次从发送缓冲器获得传输速率。因此,消除了与发送缓冲器的通信的需要,并且与专利文献1的情况相比减少了延迟。此外,有可能灵活地处置只能够具有小缓冲器的系统。
第二示例
接下来,将描述第一实施例的第二示例。在上述的第一示例中,一旦发送缓冲器占用量超过阈值,则以紧急模式执行编码控制,并且然后如果发送缓冲器占用量小于阈值,则再次以正常编码模式执行编码控制。然而,一旦发送缓冲器占用量超过阈值,即使发送缓冲器占用量通过降低编码率而低于阈值,发送缓冲器占用量可能再次超过阈值的概率也很高。在这种情况下,在短时间段内反复正常编码模式和紧急模式,并且还有改进的余地。
因此,在第二示例中,为发送缓冲器占用量提供了两个阈值。在两个阈值中,针对发送缓冲器占用量增加的情况的一个阈值被设置为高于发送缓冲器占用量减小的情况的另一个阈值。换言之,将比第一阈值(th1)高出预定值的值定义为第二阈值(th2)。控制信息指定部件基于接收缓冲器占用量来指定编码控制信息直到发送缓冲器占用量超过第二阈值。当发送缓冲器占用量超过第二阈值时,控制信息指定部件指定编码控制信息,其与等于或小于第一阈值的情况下相比进一步减少生成的数据量。然后,当发送缓冲器占用量从大于第二阈值的值变化为小于第一阈值的值时,控制信息指定部件基于接收缓冲器占用量来指定编码控制信息。以这种方式,通过将针对发送缓冲器占用量增加的情况的阈值设置为高于针对发送缓冲器占用量减少的情况的阈值,有可能减少在紧急模式和正常编码模式之间的编码过程的反复。
注意,根据第二示例的编码器等的配置与第一示例中的配置相同,因此将省略图示和详细描述。然而,假设在阈值判断部件122中设置了两个阈值th1<th2。
图7是图示了根据第二示例的编码控制方法的流程的流程图。首先,缓冲器管理单元11更新虚拟发送缓冲器占用量Rbj和虚拟接收缓冲器占用量dj(S201)。接下来,阈值判断部件122确定当前模式是否是正常编码模式(S202)。在当前模式是正常编码模式时(S202中为“是”),阈值判断部件122确定虚拟发送缓冲器占用量Rbj是否大于阈值th2(S203)。当确定虚拟发送缓冲器占用量Rbj等于或小于阈值th2(S203中为“否”)时,阈值判断部件122将编码模式md设置为“正常编码模式”,并输出到编码处理单元13(S205)。然后,编码处理单元13基于从量化值确定部件121接收的量化值Qj来对输入数据in_data进行编码(S207)。另一方面,在步骤S203中,在确定为虚拟发送缓冲器占用量Rbj大于阈值th2时(S203中为“是”),阈值判断部件122将编码模式md设定为“紧急模式”,并输出到编码处理单元13(S206)。注意,假设此时阈值判断部件122保存诸如例如指示当前编码模式md是“紧急模式”的标志的信息。然后,编码处理单元13基于预定量化值来对输入数据in_data进行编码(S208)。
然后流程返回到步骤S201。在步骤S202中,在当前编码模式不是正常编码模式时,即在当前模式是紧急模式时(S202中为“否”),阈值判断部件122确定虚拟发送缓冲器占用量Tbj是否小于阈值th1(S204)。当确定虚拟发送缓冲器占用量Rbj等于或大于阈值th1(S204中为“否”)时,阈值判断部件122将编码模式md设置为“紧急模式”,并输出到编码处理单元13(S206)。换言之,只要虚拟发送缓冲器占用量Rbj等于或大于阈值th1,即使它小于阈值th2,阈值判断部件122也保持紧急模式。
另一方面,在步骤S204中,在确定虚拟发送缓冲器占用量Rbj小于阈值th1时(S204中为“是”),阈值判断部件122将编码模式md设定为“正常编码模式”,并输出到编码处理单元13(S205)。换言之,一旦编码模式md被设置为“紧急模式”,但是当虚拟发送缓冲器占用Rbj比小于阈值th2的阈值th1更小时,阈值判断部件122将编码模式md设置回正常编码模式。注意,假设量化值确定部件121与阈值判断部件122并行地计算量化值Qj。
图8是图示根据第二示例的虚拟发送缓冲器占用量与编码模式之间的关系的图。如图8所示,阈值判断部件122最初在仅虚拟发送缓冲器占用量Rbj超过阈值th1时不改变编码模式,并保持正常编码模式。其后,当虚拟发送缓冲器占用量Rbj超过阈值th2时,阈值判断部件122将编码模式改变为紧急模式。此时,阈值判断部件122指令编码处理部分13执行强制编码过程以最小化所生成的比特量。然后,编码处理单元13不执行正常编码处理,而是执行强制编码过程,以在指令在紧急模式下执行编码的时间期间使生成的比特量最小化。例如,在H.264的情况下,存在所有系数被设置为0的N×N帧内MB(intra MB)的DC模式中的编码的方法,或者编码为跳过MB的方法。然而,本发明不限于这些方法。
之后,即使虚拟传输占用量降低到阈值th2以下但是在其等于或大于阈值th1时,保持紧急模式。然后,当虚拟发送缓冲器占用量Rbj减小到阈值th1以下时,其返回到正常编码模式。
如上所述,大于第一阈值的第二阈值被定义为启动紧急模式的条件。此外,小于第二阈值的第一阈值被定义为终止紧急模式并返回正常编码模式的条件。以这种方式,有可能防止紧急模式和正常编码模式的频繁反复。
此外,通过将第二阈值设置为通过从发送缓冲器的大小减去生成的数据量来获得的值,有可能增加避免发送缓冲器被破坏的风险的概率。例如,通过将阈值th2设置为通过减去强制编码过程中生成的比特量来获得的值,有可能防止被编码流的输出超过发送缓冲器大小的情况。
第三示例
接下来,将描述第一实施例的第三示例。
图9是示出根据第三示例的编码器1a的配置的框图。与上述的编码器1相比,速率控制单元12和编码处理单元13分别由速率控制单元12a和编码处理单元13a替代。其它配置与编码器1中的相同,使得将省略对它们的描述。
速率控制单元12a包括量化值确定部件121a和阈值判断部件122a以作为内部配置。阈值判断部件122a根据确定结果替代输出编码模式而向量化值确定部件121a输出反应参数reac。此外,假设在阈值确定部件122a中设置了两个阈值th1a<th2a。例如,当虚拟发送缓冲器占用量Rbj等于或小于阈值th1a时,阈值判断部件122a将预定的反应参数reacN输出到量化值确定部件121a。当虚拟发送缓冲器占用量Rbj大于阈值th1a并且等于或小于阈值th2a时,阈值判断部件122a将作为预定反应参数reacN的0.75倍的反应参数reac输出到量化值确定部件121a。当虚拟发送缓冲器占用量Rbj大于阈值th2a时,阈值判断部件122a将作为预定反应参数reacN的0.50倍的反应参数reac输出到量化值确定部件121a。
量化值确定部件121a通过使用从阈值判断部件122a输出的反应参数reac以及虚拟接收缓冲器占用量dj来计算量化值Qj,并输出到编码处理单元13a。
由于上述的原因,第三示例能够被表达如下。也就是说,当虚拟发送缓冲器占用量Rbj大于第一阈值(th1a)且等于或小于第二阈值(th2a)时,速率控制单元12a指定编码控制信息以使生成的数据量b1比等于或小于第一阈值的情况更小,并且同时比等于或大于第二阈值的情况更大。以这种方式,通过使用多状态阈值,有可能实现灵活的编码控制。
此外,第三示例还能够被表达如下。也就是说,当虚拟发送缓冲器占用量Rbj等于或小于第一阈值(th1a)时,速率控制部件12a通过使用预定的第一参数(reacN)和虚拟接收缓冲器占用量dj来计算编码控制信息。当虚拟发送缓冲器占用量Rbj比第一阈值大预定值(th2a)时,速率控制部件12a计算第二参数(reacN*0.50),其与第一参数的情况下相比进一步减少生成的数据量b1。此外,速率控制部件12a通过使用第二参数和虚拟接收缓冲器占用量dj来计算编码控制信息。然后,速率控制部件12a将计算的编码控制信息指定给编码处理部件13a。在这种情况下,现有的设备能够被用于编码处理单元13a。这能够有助于减少系统中的变化量。此外,能够通过调整参数来实现精确的编码控制。因此,这对于避免危险区域同时最小化对图像质量的损害是有用的。
图10是图示了根据第三示例的编码控制方法的流程的流程图。首先,缓冲器管理部件11更新虚拟发送缓冲器占用量Rbj和虚拟接收缓冲器占用量dj(S301)。接着,阈值判断部件122a确定虚拟发送缓冲器占用量Rbj是否大于阈值th2a(S302)。当确定虚拟发送缓冲器占用量Rbj大于阈值th2a(S302中为“是”)时,阈值判断部件122a通过将指定的反应参数reacN乘以0.50来计算反应参数reac,并输出到量化值确定部件121a(S304)。
在步骤S302中,当确定虚拟发送缓冲器占用量Rbj等于或小于阈值th2a(S302中为“否”)时,阈值判断部件122a确定虚拟发送缓冲器占用量Rbj是否大于阈值th1a(S303)。当确定虚拟发送缓冲器占用量Rbj大于阈值th1a时(S303中为是),阈值判断部件122a通过将所指定的反应参数reacN乘以0.75来计算反应参数reac,并输出到量化值确定部件121a(S305)。在步骤S303中,当确定虚拟发送缓冲器占用量Rbj等于或小于阈值th1a(S303中为“否”)时,阈值判断部件122a将指定的反应参数reacN作为反应参数reac来输出到量化值确定部件121a(S306)。
在步骤S304、S305、和S306之后,量化值确定部件121a通过使用从阈值判断部件122a接收的更新的反应参数reac以及虚拟接收缓冲器占用量dj来计算量化值Qj,并输出到编码处理单元13a(S307)。其后,编码处理单元13a基于从量化值确定部件121a接收的量化值Qj来对输入数据in_data进行编码(S308)。注意,假定量化值确定部件121a与阈值判断部件122a并行地计算量化值Qj。
图11是图示根据第三示例的虚拟发送缓冲器占用量与编码模式之间的关系的图。如图11所示,当虚拟发送缓冲器占用量Rbj等于或小于阈值th1a时,将反应参数reac设置为指定的reacN。此外,当虚拟发送缓冲器占用量Rbj大于阈值th1a并且等于或小于阈值th2a时,反应参数reac被设置为reacN*0.75,以将量化值Qj增加到比等于或小于阈值th1a的情况更大,以便减少生成的比特量。然而,生成的比特量没有减小到最小值。然后,当虚拟发送缓冲器占用量Rbj大于阈值th2a时,将反应参数reac设置为reacN*0.50。换言之,量化值Qj增加为比等于或小于阈值th2a的情况更大,以便减少生成的比特量。例如,量化值被设置以使得生成的比特量是最小值。
以上方法能够被认为是改变被用于编码控制的反应参数的方法。然后,有可能通过减小反应参数来增加向目标的收敛速度。换言之,当虚拟发送缓冲器占用量Rbj大于阈值th1a并且等于或小于阈值th2a时,设置reacN*ratio1,并且当虚拟发送缓冲器占用量Rbj大于阈值th2a时,设置reacN*ratio2。在这种情况下,ratio 2小于ratio 1。
注意,反应参数在图11中以两个阶段来被更新。然而,反应参数也可以以两个或三个、或更多个阶段中被更新。
此外,在第二示例中,通过调整反应参数来执行编码控制。然而,能够直接调整量化值,而不是调整反应参数。例如,当虚拟发送缓冲器占用量Rbj大于阈值th2a时,与虚拟发送缓冲器占用量Rbj等于或小于阈值th2a的情况下相比,能够使量化值大。
注意,在上面的描述中,当虚拟发送缓冲器占用量Rbj在阈值th1a和阈值th2a之间时,反应参数被设置为等于reacN*ratio1,而与虚拟发送缓冲器占用量Rbj何时增加和减少无关。然而,本发明不限于此。例如,当虚拟发送缓冲器占用量Rbj减小时,控制反应参数以使用正常反应参数reacN。以这种方式,有时可以通过防止量化值的快速变化和通过减缓发送缓冲器的占用量的减少,来减慢返回到正常操作。
如上所述,第三示例对于发送缓冲器是有用的,以避免接近将发生溢出的危险区域,同时最小化对图像质量的损害。此外,第二和第三实施例能够一起使用。
其它实施例
上述的实施例能够被应用于例如车载相机等。换言之,由车载相机拍摄的所拍摄图像需要实时显示在驾驶员座位附近的屏幕上,并且如果显示相对于拍摄时间延迟,则会影响驾驶。因此,需要低延迟。出于此原因,本实施例能够被应用于低延迟视频编码LSI以及以低延迟来传输诸如相机图像的视频图像的系统。具体的,实施例能够被应用于由于需要用于防水的封装而可能不安装诸如DRAM的大容量外部存储器的系统(车载相机、监视相机等)。
此外,在上述的实施例中,本发明已被描述为具有硬件配置,但是本发明不限于此。本发明还能够通过允许诸如中央处理单元(CPU)的处理器执行计算机程序来实现任意过程。
在上述的示例中,程序能够使用各种类型的非暂时性计算机可读介质来被存储并提供给计算机。非暂时性计算机可读介质包括各种类型的有形存储介质。非暂时性计算机可读介质的示例包括磁记录介质(例如,柔性盘、磁带、和硬盘驱动器)、光磁记录介质(例如,光磁盘)、CD-ROM(只读存储器)、CD-R、DC-R/W、DVD(数字多功能盘)、BD(蓝光(注册商标)盘)、半导体存储器(例如掩模ROM、PROM(可编程ROM)、EPROM(可擦除PROM)、闪速ROM、和RAM(随机存取存储器))。此外,还能够由各种类型的暂时性计算机可读介质来将程序提供给计算机。暂时性计算机可读介质的示例包括电信号、光信号、和电磁波。暂时性计算机可读介质能够通过诸如电线和光纤的有线通信路径或通过无线通信路径来将程序提供给计算机。
基于实施例来具体描述了本发明人做出的发明。然而,毋庸置疑,本发明不限于前述实施例,并且能够在不脱离本发明的要旨的范围内进行各种修改和变更。
Claims (19)
1.一种半导体设备,包括:
编码处理单元,其将基于指定的编码控制信息而被编码后的输入数据的被编码流存储到发送缓冲器中;
缓冲器管理单元,其根据在进行所述编码中的生成数据量来计算发送缓冲器占用量和接收缓冲器占用量,所述发送缓冲器占用量指示被存储在所述发送缓冲器中的数据量,所述接收缓冲器占用量指示被存储在接收缓冲器中的数据量,所述接收缓冲器是所述被编码流的目的地;以及
控制信息指定单元,当所述发送缓冲器占用量等于或小于第一阈值时,所述控制信息指定单元针对所述编码处理单元来基于所述接收缓冲器占用量指定所述编码控制信息,以及当所述发送缓冲器占用量大于所述第一阈值时,所述控制信息指定单元将所述编码控制信息指定为与在所述发送缓冲器占用量等于或小于所述第一阈值的情况下相比而进一步减少所述生成数据量。
2.根据权利要求1所述的半导体设备,
其中,当所述发送缓冲器占用量等于或小于所述第一阈值时,所述控制信息指定单元基于所述接收缓冲器占用量来计算所述编码控制信息,并且针对所述编码处理单元来指定所计算的编码控制信息,以及
其中,当所述发送缓冲器占用量大于所述第一阈值时,所述控制信息指定单元针对所述编码处理单元而将预定值指定作为所述编码控制信息。
3.根据权利要求1所述的半导体设备,
其中,比所述第一阈值大出预定值的值被定义为第二阈值,
其中,所述控制信息指定单元基于所述接收缓冲器占用量来指定所述编码控制信息,直到所述发送缓冲器占用量超过所述第二阈值为止,
其中,当所述发送缓冲器占用量超过所述第二阈值时,所述控制信息指定单元将所述编码控制信息指定为与在所述发送缓冲器占用量等于或小于所述第一阈值的情况下相比而进一步减少所述生成数据量,以及
其中,当所述发送缓冲器占用量从大于所述第二阈值的值改变为小于所述第一阈值的值时,所述控制信息指定单元基于所述接收缓冲器占用量来指定所述编码控制信息。
4.根据权利要求1所述的半导体设备,
其中,比所述第一阈值大出预定值的值被定义为第二阈值,以及
其中,当所述发送缓冲器占用量大于所述第一阈值并且等于或小于所述第二阈值时,所述控制信息指定单元将所述编码控制信息指定为使所述生成数据量与在所述发送缓冲器占用量等于或小于所述第一阈值的情况下相比而更小,并且使所述生成数据量与在所述发送缓冲器占用量等于或大于所述第二阈值的情况下相比而更大。
5.根据权利要求1所述的半导体设备,
其中,当所述发送缓冲器占用量等于或小于所述第一阈值时,所述控制信息指定单元通过使用预定的第一参数和所述接收缓冲器占用量来计算所述编码控制信息,
其中,当所述发送缓冲器占用量大于所述第一阈值时,所述控制信息指定单元计算第二参数,以与在所述第一参数的情况下相比而进一步减少所述生成数据量,并且通过使用所述第二参数和所述接收缓冲器占用量来计算所述编码控制信息,以及
其中,所述控制信息指定单元针对所述编码处理单元来指定所计算的编码控制信息。
6.根据权利要求1所述的半导体设备,
其中,所述缓冲器管理单元通过使用在所述发送缓冲器中预先设置的传输速率以及通过使用从所述编码处理单元获得的所述生成数据量,来计算所述发送缓冲器占用量。
7.根据权利要求3所述的半导体设备,
其中,所述第二阈值是通过从所述发送缓冲器的大小中减去所述生成数据量而获得的值。
8.根据权利要求2所述的半导体设备,
其中,所述编码控制信息是量化值。
9.根据权利要求1所述的半导体设备,
其中,所述发送缓冲器的大小小于所述接收缓冲器的大小。
10.一种编码控制方法,包括以下步骤:
基于指定的编码控制信息来对第一输入数据进行编码,并将被编码的输入数据的被编码流存储到发送缓冲器中;
根据在进行所述编码中的生成数据量来计算发送缓冲器占用量和接收缓冲器占用量,所述发送缓冲器占用量指示被存储在所述发送缓冲器中的数据量,所述接收缓冲器占用量指示被存储在接收缓冲器中的数据量,所述接收缓冲器是所述被编码流的目的地;以及
当所述发送缓冲器占用量等于或小于第一阈值时,基于所述接收缓冲器占用量来指定所述编码控制信息,而在所述发送缓冲器占用量大于所述第一阈值时,将所述编码控制信息指定为与在所述发送缓冲器占用量等于或小于所述第一阈值的情况下相比而进一步减少所述生成数据量,以便对所述第一输入数据之后的第二输入数据进行编码。
11.根据权利要求10所述的编码控制方法,进一步包括以下步骤:
当所述发送缓冲器占用量等于或小于所述第一阈值时,基于所述接收缓冲器占用量来计算所述编码控制信息,并且指定所计算的编码控制信息;以及
当所述发送缓冲器占用量大于所述第一阈值时,将预定值指定作为所述编码控制信息。
12.根据权利要求10所述的编码控制方法,进一步包括以下步骤:
将比所述第一阈值大出预定值的值定义为第二阈值;
基于所述接收缓冲器占用量来指定所述编码控制信息,直到所述发送缓冲器占用量超过所述第二阈值为止;
当所述发送缓冲器占用量超过所述第二阈值时,将所述编码控制信息指定为与在所述发送缓冲器占用量等于或小于所述第一阈值的情况下相比而进一步减少所述生成数据量;以及
当所述发送缓冲器占用量从大于所述第二阈值的值改变为小于所述第一阈值的值时,基于所述接收缓冲器占用量来指定所述编码控制信息。
13.根据权利要求10所述的编码控制方法,进一步包括以下步骤:
将比所述第一阈值大出预定值的值定义为第二阈值;以及
当所述发送缓冲器占用量大于所述第一阈值并且等于或小于所述第二阈值时,使所述生成数据量与在所述发送缓冲器占用量等于或小于所述第一阈值的情况下相比而更小,并且使所述生成数据量与在所述发送缓冲器占用量等于或大于所述第二阈值的情况下相比而更大。
14.根据权利要求10所述的编码控制方法,进一步包括以下步骤:
当所述发送缓冲器占用量等于或小于所述第一阈值时,通过使用预定的第一参数和所述接收缓冲器占用量来计算所述编码控制信息;
当所述发送缓冲器占用量大于所述第一阈值时,计算第二参数,以与在所述第一参数的情况下相比而进一步减少所述生成数据量,并且通过使用所述第二参数和所述接收缓冲器占用量来计算所述编码控制信息,以及
指定所计算的编码控制信息。
15.根据权利要求10所述的编码控制方法,进一步包括以下步骤:
通过使用在所述发送缓冲器中预先设置的传输速率以及通过使用所述生成数据量,来计算所述发送缓冲器占用量。
16.根据权利要求12所述的编码控制方法,
其中,所述第二阈值是通过从所述发送缓冲器的大小中减去所述生成数据量而获得的值。
17.根据权利要求11所述的编码控制方法,
其中,所述编码控制信息是量化值。
18.根据权利要求10所述的编码控制方法,
其中,所述发送缓冲器的大小小于所述接收缓冲器的大小。
19.一种相机设备,包括:
编码处理单元,其基于指定的编码控制信息来对输入数据进行编码;
发送缓冲器,其存储被编码的输入数据的被编码流;
缓冲器管理单元,其根据在进行所述编码中的生成数据量来计算发送缓冲器占用量和接收缓冲器占用量,所述发送缓冲器占用量指示被存储在所述发送缓冲器中的数据量,所述接收缓冲器占用量指示被存储在接收缓冲器中的数据量;以及
控制信息指定单元,当所述发送缓冲器占用量等于或小于第一阈值时,所述控制信息指定单元基于所述接收缓冲器占用量来指定所述编码控制信息,而当所述发送缓冲器占用量大于所述第一阈值时,所述控制信息指定单元将所述编码控制信息指定为与在所述发送缓冲器占用量等于或小于所述第一阈值的情况下相比而进一步减少所述生成数据量。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016049101A JP2017168878A (ja) | 2016-03-14 | 2016-03-14 | 半導体装置、符号化制御方法及びカメラ装置 |
| JP2016-049101 | 2016-03-14 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN107197276A true CN107197276A (zh) | 2017-09-22 |
| CN107197276B CN107197276B (zh) | 2023-09-08 |
Family
ID=58464143
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201710116777.8A Active CN107197276B (zh) | 2016-03-14 | 2017-03-01 | 半导体设备、编码控制方法和相机设备 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US10419663B2 (zh) |
| EP (1) | EP3220639B1 (zh) |
| JP (1) | JP2017168878A (zh) |
| KR (1) | KR20170106919A (zh) |
| CN (1) | CN107197276B (zh) |
| TW (1) | TW201801530A (zh) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10645437B2 (en) * | 2017-04-03 | 2020-05-05 | Sling Media Pvt Ltd | Systems and methods for achieving optimal network bitrate |
| US10678718B2 (en) * | 2018-01-16 | 2020-06-09 | Marvell Israel (M.I.S.L) Ltd. | Network device and method of operation |
| US10796660B2 (en) * | 2018-10-12 | 2020-10-06 | Samsung Display Co., Ltd. | Content adaptive display interface |
| TWI697003B (zh) * | 2018-10-15 | 2020-06-21 | 大陸商合肥沛睿微電子股份有限公司 | 記憶體裝置與控制方法 |
| US10911791B2 (en) * | 2019-01-09 | 2021-02-02 | Netflix, Inc. | Optimizing encoding operations when generating a buffer-constrained version of a media title |
| WO2022157921A1 (ja) * | 2021-01-22 | 2022-07-28 | 富士通株式会社 | 画像処理装置、画像処理方法及び画像処理プログラム |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6061404A (en) * | 1997-01-27 | 2000-05-09 | Sony Corporation | Method and apparatus for encoding digital signal |
| CN1723709A (zh) * | 2003-10-29 | 2006-01-18 | 索尼株式会社 | 视频编码设备和视频编码控制方法 |
| JP2007329681A (ja) * | 2006-06-07 | 2007-12-20 | Canon Inc | 映像データ送信装置 |
| JP2010288166A (ja) * | 2009-06-15 | 2010-12-24 | Panasonic Corp | 動画像符号化装置、放送波記録装置及び、プログラム |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1034538B1 (en) * | 1998-06-12 | 2004-12-15 | Koninklijke Philips Electronics N.V. | Transferring compressed audio via a playback buffer |
| US7151856B2 (en) | 2002-04-25 | 2006-12-19 | Matsushita Electric Industrial Co., Ltd. | Picture coding apparatus and picture coding method |
| JP4490046B2 (ja) | 2002-04-25 | 2010-06-23 | パナソニック株式会社 | 画像符号化装置及び画像符号化方法 |
| US7406124B1 (en) * | 2002-05-30 | 2008-07-29 | Intervideo, Inc. | Systems and methods for allocating bits to macroblocks within a picture depending on the motion activity of macroblocks as calculated by an L1 norm of the residual signals of the macroblocks |
| US20050157783A1 (en) * | 2004-01-15 | 2005-07-21 | Sony Corporation | Adaptive bandwidth allocation method and system for AV signal distribution |
| US7936938B2 (en) * | 2004-09-07 | 2011-05-03 | Canon Kabushiki Kaisha | Methods and devices for encoding a digital image signal and associated decoding methods and devices |
| JP2008271213A (ja) * | 2007-04-20 | 2008-11-06 | Hitachi Kokusai Electric Inc | 画像符号化装置 |
| WO2010097946A1 (ja) * | 2009-02-27 | 2010-09-02 | 富士通株式会社 | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム |
| WO2016185520A1 (ja) * | 2015-05-15 | 2016-11-24 | オリンパス株式会社 | 圧縮画像データ送信装置、圧縮画像データ送受信システム、圧縮画像データ送信方法およびプログラム |
-
2016
- 2016-03-14 JP JP2016049101A patent/JP2017168878A/ja active Pending
-
2017
- 2017-02-01 US US15/421,503 patent/US10419663B2/en active Active
- 2017-03-01 CN CN201710116777.8A patent/CN107197276B/zh active Active
- 2017-03-07 KR KR1020170028953A patent/KR20170106919A/ko not_active Withdrawn
- 2017-03-08 TW TW106107468A patent/TW201801530A/zh unknown
- 2017-03-14 EP EP17160739.3A patent/EP3220639B1/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6061404A (en) * | 1997-01-27 | 2000-05-09 | Sony Corporation | Method and apparatus for encoding digital signal |
| CN1723709A (zh) * | 2003-10-29 | 2006-01-18 | 索尼株式会社 | 视频编码设备和视频编码控制方法 |
| JP2007329681A (ja) * | 2006-06-07 | 2007-12-20 | Canon Inc | 映像データ送信装置 |
| JP2010288166A (ja) * | 2009-06-15 | 2010-12-24 | Panasonic Corp | 動画像符号化装置、放送波記録装置及び、プログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20170106919A (ko) | 2017-09-22 |
| EP3220639B1 (en) | 2019-02-20 |
| JP2017168878A (ja) | 2017-09-21 |
| US20170264820A1 (en) | 2017-09-14 |
| TW201801530A (zh) | 2018-01-01 |
| US10419663B2 (en) | 2019-09-17 |
| CN107197276B (zh) | 2023-09-08 |
| EP3220639A1 (en) | 2017-09-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107197276B (zh) | 半导体设备、编码控制方法和相机设备 | |
| JP4554927B2 (ja) | ビデオトランスコーディングにおけるレート制御方法およびシステム | |
| CN104272737B (zh) | 图像编码方法和装置及其相关图像解码方法和装置 | |
| US9313488B2 (en) | Hypothetical reference decoder | |
| US20140294096A1 (en) | Video image data delivery device, method and system | |
| ITTO20090486A1 (it) | Controllore dinamico della velocita' di trasmissione indipendente dal gruppo di immagini | |
| CN103339959A (zh) | 动态视频切换 | |
| JP5330672B2 (ja) | 映像符号化装置及び映像符号化方法 | |
| US20140044370A1 (en) | Image compressing apparatus and image decompressing apparatus | |
| US11197044B2 (en) | Communication apparatus, media distribution system, media distribution method, and non-transitory computer readable medium | |
| JP2002320228A (ja) | 信号処理装置 | |
| KR20200058431A (ko) | 송신 장치 및 송신 방법, 그리고 프로그램 | |
| TWI575939B (zh) | 基於策略的影像編碼 | |
| US20190089759A1 (en) | Video encoding circuit and wireless video transmission apparatus and method | |
| US20110317758A1 (en) | Image processing apparatus and method of processing image and video | |
| JP4788250B2 (ja) | 動画像信号の符号化装置、動画像信号の符号化方法およびコンピュータ読み取り可能な記録媒体 | |
| US10298651B2 (en) | Encoding device, decoding device, computer program product, and streaming system | |
| CN101489127A (zh) | 视频编码设备以及视频编码方法 | |
| JP2006180036A (ja) | 動画符号化伝送制御装置および動画符号化伝送制御方法 | |
| CN104365096A (zh) | 执行图像数据的压缩的方法及装置 | |
| JP5385230B2 (ja) | 期限時刻までにデータの送信を完了するデータ送信装置、プログラム及び方法 | |
| WO2020255940A1 (ja) | 画像処理装置および画像処理方法 | |
| JP5206382B2 (ja) | 画像処理装置、画像処理方法およびプログラム | |
| JP6648898B2 (ja) | ビデオ符号化データ変換装置、ビデオ符号化データ変換方法及びビデオ符号化データ変換プログラム | |
| US20170374365A1 (en) | Image transmission system and method of controlling same |
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 |