WO2010097946A1 - 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム - Google Patents
動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム Download PDFInfo
- Publication number
- WO2010097946A1 WO2010097946A1 PCT/JP2009/053739 JP2009053739W WO2010097946A1 WO 2010097946 A1 WO2010097946 A1 WO 2010097946A1 JP 2009053739 W JP2009053739 W JP 2009053739W WO 2010097946 A1 WO2010097946 A1 WO 2010097946A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- sub
- picture
- encoding
- buffer
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 51
- 238000004590 computer program Methods 0.000 title claims description 13
- 238000009795 derivation Methods 0.000 claims abstract description 13
- 238000013139 quantization Methods 0.000 claims description 94
- 238000012545 processing Methods 0.000 claims description 51
- 230000005540 biological transmission Effects 0.000 claims description 23
- 238000012937 correction Methods 0.000 claims description 16
- 230000007423 decrease Effects 0.000 claims description 7
- 238000013459 approach Methods 0.000 claims description 5
- 230000001131 transforming effect Effects 0.000 claims description 2
- 230000007704 transition Effects 0.000 description 79
- 230000008569 process Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 17
- 230000008878 coupling Effects 0.000 description 16
- 238000010168 coupling process Methods 0.000 description 16
- 238000005859 coupling reaction Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 16
- 230000033001 locomotion Effects 0.000 description 15
- 238000013523 data management Methods 0.000 description 11
- 238000007562 laser obscuration time method Methods 0.000 description 7
- 239000013598 vector Substances 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000000945 filler Substances 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23424—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
-
- 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/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/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/177—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 group of pictures [GOP]
-
- 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/42—Methods 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/436—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2401—Monitoring of the client buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25833—Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/065—Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
Definitions
- the embodiment disclosed herein is a moving image coding that generates a plurality of pieces of data obtained by dividing moving image data in parallel and generates bitstream data with a smaller amount of data than the moving image data at high speed.
- the present invention relates to an apparatus, a moving image encoding method, and a moving image encoding computer program.
- Video data generally has a very large amount of data. Therefore, when a device that handles moving image data is to transmit moving image data to another device or to store moving image data in a storage device, by encoding the moving image data, Compress the amount of data.
- the moving image data is divided into a plurality of sub-data, and each sub-data is encoded in parallel using a plurality of encoders, and then each encoded data
- the decoding device when the encoded moving image data is transmitted to the decoding device, the decoding device must be able to decode the encoded moving image data. Therefore, it is assumed that the decoding apparatus has a buffer having a predetermined capacity for temporarily storing the encoded moving image data.
- the moving image data encoding device is required to encode moving image data so that the amount of data stored in the buffer always falls within the predetermined capacity range.
- a virtual buffer included in the decoding device is referred to as a standard decoder buffer.
- MPEG Moving Picture Experts Group
- the concept regarding the transition of the occupied amount of encoded moving image data in the standard decoder buffer is defined as Video Buffering Verifier (VBV).
- VBV In VBV, after encoded moving image data is accumulated in the standard decoder buffer by an initial delay amount at the maximum transmission bit rate, data for one picture is instantaneously extracted from the standard decoder buffer at a constant time interval.
- the model is adopted.
- the occupied amount of the encoded moving image data transmitted to the standard decoder buffer in the standard decoder buffer is the maximum allowable value and the minimum value of the standard decoder buffer. Must be within tolerance.
- bitstream data may not meet standard decoder buffer specifications. This problem occurs for the following reason. That is, it is defined that the bit stream data is always stored in the standard decoder buffer at the maximum transmission bit rate until the transmission of the bit stream data is completed.
- the recovery amount of the buffer before the encoded moving image data combined on the back side is combined and the dividing point is divided. In some cases, the motion may not be consistent between the recovery amounts of the buffer when treated as continuous video data that has not been processed.
- the occupied amount of the encoded image data on the rear side in the standard decoder buffer is This is because it does not match the occupation amount of the bit stream data.
- the initial decoder amount at each divided point is calculated based on the simulation result of the transition of the standard decoder buffer occupancy so as to satisfy the standard decoder buffer specification.
- a technique for encoding moving image data has been proposed.
- the standard decoder buffer occupancy is included in the combined section so that it falls within the maximum allowable value and the minimum allowable value of the buffer.
- the technology for simulating the transition of the buffer occupancy when the simulation result indicates that the standard decoder buffer specification is violated, performs the simulation while adjusting the parameter for determining the allocated amount of coded bits for each picture. Need to repeat. For this reason, a moving image encoding apparatus using the technology may take a long time for encoding processing of moving image data.
- the technique of re-encoding the decoded data after once decoding the data included in the combined section requires extra time for executing the re-encoding process. Further, this technique does not adjust the buffer amount at the time when the divided moving image data are combined. For this reason, if the setting at the time of combining is inappropriate, the amount of encoded bits allocated to a specific picture is extremely small, and as a result, there is a risk that image quality will be rapidly deteriorated.
- the present specification provides a moving image encoding apparatus, a moving image encoding method, and a moving image encoding program that can encode moving image data in a short time while satisfying the standard decoder buffer. Objective.
- a video encoding device includes a storage unit that stores moving image data including at least first and second sub data each including a plurality of pictures, and the moving image data by encoding the moving image data.
- a processing unit that generates bit stream data having a data amount smaller than the data amount of the image data; and an output unit that outputs the bit stream data.
- the processing unit transmits the bit stream data to the virtual decoder at a predetermined transmission rate, accumulates the bit stream data in the buffer of the decoder, and stores each bit included in the bit stream data at a predetermined time interval.
- the data corresponding to the last picture included in the first sub-bitstream data in which the first sub-data is encoded is The first occupancy amount of the bit stream data in the decoder buffer at the first time point extracted from the buffer is the second sub bit stream in which the second sub data is encoded at the first time point.
- a target value for the first occupancy is determined so that the data is equal to or greater than the second occupancy in the decoder buffer.
- a bundle target derivation function and an allocation amount of coded bits for each picture included in the first sub data are determined so that the first occupation amount becomes a target value, and the first sub data is determined according to the allocation amount.
- the first encoding function for generating the first sub bitstream data by encoding the second subbitstream data by encoding the second subdata, and the second encoding for generating the second subbitstream data An encoding function and a combining function for generating bit stream data by combining the first sub bit stream data and the second sub bit stream data are realized.
- data that is less than the data amount of the moving image data is encoded by encoding moving image data that includes at least first and second sub data each including a plurality of pictures.
- a video encoding method for generating bitstream data having a quantity is provided.
- bit stream data is transmitted to a virtual decoder at a predetermined transmission rate and stored in a buffer of the decoder, and is included in the bit stream data at predetermined time intervals.
- the data corresponding to the picture of the first sub-bitstream data encoded with the first sub-data is sequentially extracted from the decoder buffer
- the data corresponding to the last picture included in the first sub-bitstream data encoded with the first sub-data is The first occupancy of the bitstream data in the decoder buffer at the first time retrieved from the decoder buffer is the second occupancy of the second sub-data encoded at the first time.
- the target value of the first occupation amount so that the sub bit stream data is equal to or greater than the second occupation amount occupied in the decoder buffer.
- the first sub bitstream data is generated, the second subdata is encoded, the second subbitstream data is generated, and the first subbitstream data and the second subbitstream data are generated. Generating the bitstream data by combining the bitstream data.
- data that is smaller than the data amount of the moving image data is encoded by encoding moving image data that includes at least first and second sub data each including a plurality of pictures.
- a moving picture encoding computer program for causing a computer to generate bitstream data having a quantity.
- This computer program transmits bitstream data to a virtual decoder at a predetermined transmission rate and stores it in a buffer of the decoder, and also stores each picture included in the bitstream data at a predetermined time interval.
- the data corresponding to the last picture included in the first sub-bitstream data in which the first sub-data is encoded is The first occupancy amount of the bit stream data in the decoder buffer at the first time point extracted from the buffer is the second sub bit stream in which the second sub data is encoded at the first time point.
- the first occupancy is such that the data is greater than or equal to the second occupancy in the decoder buffer.
- a standard value is determined, an allocation amount of coded bits for each picture included in the first sub-data is determined so that the first occupation amount becomes a target value, and the first sub-data is determined according to the allocation amount.
- the moving picture coding apparatus, the moving picture coding method, and the moving picture coding program disclosed in this specification are capable of coding moving picture data in a short time while satisfying the standard decoder buffer. Play.
- FIG. 1 is a schematic configuration diagram of a moving image encoding apparatus according to an embodiment.
- FIG. 2 is a functional block diagram of the processing unit of the video encoding device showing functions implemented for executing the process of encoding the video data.
- FIG. 3A is a diagram showing an example of transition of the occupation amount occupied by one sub bitstream data in the standard decoder buffer.
- FIG. 3B is a diagram illustrating an example of the transition of the occupation amount that each of the two sub-bitstream data to be combined occupies in the standard decoder buffer.
- FIG. 3C is a diagram illustrating an example of transition of the occupation amount occupied by the bit stream data in which the two sub bit stream data are combined into one standard decoder buffer.
- FIG. 3A is a diagram showing an example of transition of the occupation amount occupied by one sub bitstream data in the standard decoder buffer.
- FIG. 3B is a diagram illustrating an example of the transition of the occupation amount that each of the two sub-bitstream data to be combined
- FIG. 4 is a diagram illustrating an example of the transition of the occupation amount occupied by the sub-bitstream data on the rear side of the two sub-bitstream data to be combined in the standard decoder buffer near the transition time.
- FIG. 5 is a functional block diagram of the encoding unit.
- FIG. 6A is a graph showing an example of transition of the lower limit value of the occupation amount of the standard decoder buffer.
- FIG. 6B is a graph showing an example of transition of the upper limit value of the occupation amount of the standard decoder buffer.
- FIG. 7 is a diagram illustrating a correspondence relationship between the transition of the occupation amount occupied by the bit stream data in the standard decoder buffer at the transition time and the combined two sub bit stream data included in the bit stream data.
- FIG. 6A is a graph showing an example of transition of the lower limit value of the occupation amount of the standard decoder buffer.
- FIG. 6B is a graph showing an example of transition of the upper limit value of the occupation amount of the standard decoder buffer
- FIG. 8 is a diagram showing an operation flowchart of a moving image data encoding process controlled by a computer program executed on the processing unit of the moving image encoding device.
- FIG. 9 is a diagram illustrating an operation flowchart of sub-data encoding processing by each encoding unit, which is controlled by a computer program executed on the processing unit of the moving image encoding device.
- This video encoding device combines video data generated by dividing video data into a plurality of sub-data and encoding each sub-data using different encoders into a single bit-stream data. To do.
- this moving image encoding apparatus controls the encoding bit allocation amount for the front sub-bitstream data of the two sub-bitstream data to be combined. Further, this moving picture encoding apparatus inserts an invalid bit string that is extracted when the last picture is decoded, between the front sub-bitstream data and the rear sub-bitstream data.
- the moving picture encoding apparatus can occupy the occupation amount occupied by the bit stream data in the standard decoder buffer at the time when the last picture included in the front side sub bit stream data is decoded, and the rear side sub bit stream data. Eliminates the difference from the occupation of the standard decoder buffer.
- the picture included in the moving image data to be encoded may be either a field acquired by the interlace method or a frame acquired by the progressive method.
- FIG. 1 is a schematic configuration diagram of a moving image encoding apparatus 1 according to an embodiment. As illustrated in FIG. 1, the moving image encoding apparatus 1 includes a storage unit 11, a processing unit 12, and an input / output unit 13.
- the storage unit 11 includes, for example, at least one of a semiconductor memory, a magnetic disk device, and an optical disk device. And the memory
- the storage unit 11 stores moving image data to be encoded.
- the storage unit 11 may store bit stream data generated by encoding moving image data by the processing unit 12.
- the input / output unit 13 includes, for example, a communication interface for connecting the moving image encoding apparatus 1 to a communication network (not shown) and its control circuit. Then, the input / output unit 13 outputs the bit stream data generated by the processing unit 12 encoding the moving image data to another device via the communication network. Further, the input / output unit 13 may acquire moving image data to be encoded from another device via a communication network, and pass the moving image data to the processing unit 12.
- the processing unit 12 includes one or a plurality of processors, a memory, and its peripheral circuits. Then, the processing unit 12 encodes the moving image data read from the storage unit 11 or the moving image data acquired via the input / output unit 13.
- FIG. 2 is a functional block diagram of the processing unit 12 showing functions realized for encoding moving image data.
- the processing unit 12 includes a control unit 21, a dividing unit 22, and n encoding units 23-1, 23-2,. . . 23-n and (n-1) convergence target derivation units 24-1, 24-2,. . . , 24- (n-1) and (n-1) coupling portions 25-1, 25-2,. . . , 25- (n-1).
- n is an integer of 2 or more.
- Each of these units included in the processing unit 12 is a functional module implemented by a computer program executed on a processor included in the processing unit 12.
- Each of these units included in the processing unit 12 may be mounted on the moving image coding apparatus 1 as a separate arithmetic circuit or a single integrated circuit in which these arithmetic circuits are integrated.
- control unit 21 reads the moving image data to be encoded from the storage unit 11 or acquires the moving image data via the input / output unit 13 and passes the moving image data to the dividing unit 22. At this time, when information regarding the content of the moving image data is also acquired together with the moving image data, the information may also be passed to the dividing unit 22.
- the control unit 21 may read a plurality of moving image data from the storage unit 11 or obtain the moving image data via the input / output unit 13 and pass the plurality of moving image data to the dividing unit 22.
- the processing unit 12 encodes a plurality of pieces of moving image data divided in advance by a separate encoding unit 23-m, and combines the sub bit stream data in which each moving image data is encoded, thereby One bit stream data may be generated.
- the dividing unit 22 may be omitted.
- the control unit 21 inputs the plurality of moving image data directly to each encoding unit 23-m.
- the dividing unit 22 generates sub-data by dividing the moving image data received from the control unit 21 according to the number n of the encoding units 23-m included in the processing unit 12. For example, the dividing unit 22 generates n sub-data by dividing the moving image data equally into n pieces with respect to time. In addition, when the division unit 22 receives information on the content of moving image data from the control unit 21, the division unit 22 may vary the time length of each sub-data based on the information. For example, the dividing unit 22 may divide the moving image data so that the time required for the encoding process for each sub-data becomes equal.
- the division unit 22 refers to the information related to the content of the moving image data so as to increase the time length of sub-data including many pictures that require relatively short time for encoding processing such as a still scene.
- the moving image data may be divided.
- the dividing unit 22 may divide the moving image data so as to shorten the time length of sub-data including many pictures that require a relatively long time for encoding processing such as a scene with a lot of motion.
- the dividing unit 22 may extract sub-data that extracts data of a certain length in the moving image data from a plurality of locations in the moving image data and encodes each of the extracted data.
- the dividing unit 22 divides one moving image data obtained by combining the plurality of moving image data by the number n of the encoding units 23-m. Sub data may be created.
- the dividing unit 22 may adjust the length of the sub data so that the number of pictures included in each sub data is a multiple of Group Of Pictures (GOP).
- the GOP is a structure that defines a set of pictures including a plurality of consecutive pictures that are repeated at a constant period. In the GOP, whether an intra coding method is applied to each picture, or an inter coding method. It is stipulated whether or not is applied.
- the intra coding method is a method of coding a picture using only information included in one picture to be coded.
- the inter coding method is a method of coding a picture to be coded using information on a picture to be coded and pictures before and after the picture.
- the dividing unit 22 encodes the generated sub-data in the order of time when the sub-data is reproduced, in the encoding units 23-1, 23-2,. . . 23-n. Further, the dividing unit 22 inputs the number of pictures included in each sub-data to the encoding unit to which the sub-data is input.
- Convergence target derivation units 24-1, 24-2,. . . , 24- (n ⁇ 1) are related to the standard decoder buffer occupancy at the time when the last picture included in the preceding sub-bitstream data of the two sub-bitstream data to be combined is decoded. Calculate the target value.
- the convergence target deriving units 24-1, 24-2,. . . , 24- (n ⁇ 1) have the same configuration and function, and therefore, one convergence target derivation unit 24-m (1 ⁇ m ⁇ n ⁇ 1) will be described below.
- one bit stream data is generated by combining two sub bit stream data, and that the bit stream data is transmitted to the standard decoder buffer.
- the occupation amount occupied by the bit-stream data in the standard decoder buffer is determined so that the back-side sub-bitstream data is stored in the standard decoder buffer up to that point. It is preferable to occupy the occupied amount. If this condition is satisfied, as long as each sub-bitstream data is generated so as to comply with the standard decoder buffer, the occupation amount does not overflow the maximum allowable value of the standard decoder buffer, and the standard decoding is performed. Do not underflow the minimum allowable value of the instrument buffer.
- the decoding time of the last picture of the front sub-bitstream data out of the two sub-bitstream data to be combined is referred to as a transition time.
- the time point at which the subsequent sub bit stream data of the two sub bit stream data to be combined starts to be accumulated in the standard decoder buffer is referred to as a combined time.
- FIG. 3A is a diagram illustrating an example of a transition of the occupation amount occupied by one sub bit stream data SBS m in the standard decoder buffer.
- FIG. 3B is a diagram illustrating an example of transition of the occupation amount occupied by the two sub-bitstream data SBS m and SBS m + 1 to be combined in the standard decoder buffer.
- FIG. 3C shows the occupancy of the bit stream data BS, which is a combination of the two sub-bit stream data SBS m and SBS m + 1 shown in FIG. 3B, in the standard decoder buffer. It is a figure which shows an example of a transition.
- the horizontal axis represents time
- the vertical axis represents the occupation amount of the standard decoder buffer.
- Line 301 represents the maximum allowable value of the standard decoder buffer occupancy.
- Time t 0 represents the time when the sub bit stream data SBS m starts to be accumulated in the standard decoder buffer.
- the period t d represents the initial buffer delay amount
- the period t f0 represents the picture interval determined by the frame rate
- the period t f0 is 1/30 second, for example.
- a graph 310 represents a transition of the occupation amount occupied by the sub bitstream data SBS m in the standard decoder buffer.
- the graph 320, the next sub-bit stream data SBS m + 1 that is coupled to the sub-bit stream data SBS m is the transitions in occupancy of occupying a standard decoder buffer To express.
- a graph 330 represents a transition of the occupation amount occupied by the bit stream data BS in the standard decoder buffer.
- the time t tr represents the transition time when the last picture of the front sub-bitstream data SBS m is decoded
- the time t j represents the rear sub-bitstream. It represents the time when data SBS m + 1 starts to be accumulated in the standard decoder buffer.
- the occupied amount of the sub-bitstream data SBS m in the standard decoder buffer from the time t 0 until the initial buffer delay amount t d elapses is the maximum transmission bit rate per unit time. Increase with.
- the initial buffer delay amount t d has elapsed from time t 0
- the data d 1 corresponding to the first picture is extracted from the standard decoder buffer. Therefore, the occupation amount decreases by d 1 . From that point on, every time the picture interval t f0 elapses, data for one picture is retrieved from the standard decoder buffer.
- the amount of occupancy is the unit time from the time when the data for one picture is extracted until the data for the next picture is extracted.
- the maximum transmission bit rate per hit increases.
- the occupation amount no longer increases, and each picture interval t f0 has passed one picture worth of data. Decrease.
- the occupation amount becomes zero.
- the sub bit stream data SBS m + 1 is accumulated in the standard decoder buffer after the sub bit stream data SBS m .
- it is considered from defined reference decoder buffer and be consecutive after the time t e bitstream data BS is transmitted to a standard decoder buffer. Therefore, as indicated by the dotted line 311, the occupation amount occupied by the bitstream data BS in the standard decoder buffer after the time t e until the next picture is decoded after the time t e is also as follows. Is considered to increase at the maximum transmission bit rate per unit time.
- the occupation amount occupied by the sub-bitstream data SBS m + 1 in the standard decoder buffer is the maximum transmission bit per unit time after the combination time t j until the initial delay amount t d elapses. Increase at the rate.
- the residual occupation amount S r of the bit-stream data BS at the transition time t tr is the sub-bit-stream data SBS m +1 is larger than the occupation amount S tr at the time of transition occupied in the standard decoder buffer.
- the occupied amount of the bit stream data BS in the standard decoder buffer is the occupied amount of the sub bit stream data SBS m + 1 in the standard decoder buffer.
- the absolute value ⁇ S r of the difference between the remaining occupation amount Sr and the transition occupation amount Str is the sub-bit stream data SBS m + 1 to be the maximum allowable value near the standard decoder buffer.
- ⁇ S r is added to the occupation amount occupied by the sub-bitstream data SBS m + 1 in the standard decoder buffer, so that the occupation amount occupied by the bit stream data BS in the standard decoder buffer is the maximum of the standard decoder buffer. It will exceed the allowable value.
- the residual occupation amount S r of the bit-stream data BS at the transition time t tr becomes the sub-bit-stream data SBS m It is smaller than the occupied amount S tr at the time of transition of +1 .
- the occupation amount occupied by the bit stream data BS in the standard decoder buffer is the remaining occupation amount S r from the occupation amount occupied by the sub bit stream data SBS m + 1 in the standard decoder buffer.
- the sub bit stream data SBS m + 1 is generated so that the occupied amount of the sub bit stream data SBS m + 1 in the standard decoder buffer at any time is close to the minimum allowable value of the standard decoder buffer.
- ⁇ S r is subtracted from the occupation amount occupied by the sub-bitstream data SBS m + 1 in the standard decoder buffer, so that the occupation amount occupied by the bit stream data BS in the standard decoder buffer is the minimum of the standard decoder buffer. It falls below the allowable value.
- the convergence target derivation unit 24-m generates the sub bit stream data generated by the encoding unit 23- (m + 1) at the transition time regarding the sub bit stream data SBS m generated by the encoding unit 23-m.
- the occupation amount at transition occupied by the SBS m + 1 in the standard decoder buffer is obtained as one target value.
- the convergence target deriving unit 24-m also converges the target of the remaining occupation amount of the bit stream data BS obtained by combining the sub bit stream data SBS m and the sub bit stream data SBS m + 1 at the transition time in the standard decoder buffer. Determine the value.
- This convergence target value is not less than the occupation amount at the time of transition and not more than the maximum allowable value of the standard decoder buffer.
- the convergence target derivation unit 24-m receives the initial buffer delay amount, the maximum transmission bit rate, and the inter-frame time between the coupling points from the control unit 21. .
- the inter-frame time is a period from the transition time to the time when the data corresponding to the first picture of the sub bitstream data SBS m + 1 is extracted from the standard decoder buffer.
- FIG. 4 is a diagram showing a change in the occupation amount occupied by the sub bitstream data SBS m + 1 in the standard decoder buffer in the vicinity of the transition time.
- time t j represents the combined time
- time t tr represents the transition time.
- time t 1 represents the time at which data corresponding to the first picture of the sub bitstream data SBS m + 1 is retrieved from the standard decoder buffer.
- the duration t d is the initial buffer delay
- the period t f represents a linkage point frame time.
- the graph 401 represents the occupation amount occupied by the sub bitstream data SBS m + 1 in the standard decoder buffer.
- a graph 402 represents an occupation amount of the bit stream data BS, which is a combination of the sub bit stream data SBS m and the sub bit stream data SBS m + 1, in the standard decoder buffer.
- the occupation amount of the sub-bitstream data SBS m + 1 accumulated in the standard decoder buffer from time t j to time t 1 is the initial buffer delay amount t d Multiplied by the maximum transmission bit rate.
- the occupation amount of the sub bitstream data SBS m + 1 accumulated in the standard decoder buffer from the transition time t tr to the time t 1 is obtained by multiplying the inter-frame time t f by the maximum transmission bit rate. Value.
- the convergence target deriving unit 24-m can calculate the transition occupation amount S tr according to the following equation.
- br is the maximum transmission bit rate.
- the convergence target deriving unit 24-m calculates a convergence target value by adding a predetermined bias to the transition occupation amount Str after calculating the transition occupation amount Str .
- the predetermined bias has 0 or a positive value.
- the predetermined bias is that the occupation amount occupied by the bit stream data BS in the standard decoder buffer after the data corresponding to the last picture of the sub bit stream data SBS m at the transition time t tr is extracted Set to be greater than or equal to S tr .
- the predetermined bias is that, at the transition time t tr , before the data corresponding to the last picture of the sub bit stream data SBS m is extracted, the occupation amount occupied by the bit stream data BS in the standard decoder buffer is Is set to be less than or equal to the maximum allowable value. Therefore, for example, the predetermined bias may be a value that is three times the standard deviation of the variation of the number of encoded bits obtained by encoding one picture or one GOP with respect to the number of allocated bits. it can.
- the convergence target deriving unit 24-m passes the transition occupation amount to the coupling unit 25-m.
- the convergence target derivation unit 24-m passes the convergence target value to the encoding unit 23-m.
- Encoding units 23-1, 23-2,. . . 23-n encodes the input sub-data, thereby sub-bitstream data SBS 1 , SBS 2 ,. . . , Generate SBS n .
- FIG. 5 is a functional block diagram of the encoding unit 23-m. As shown in FIG. 5, the encoding unit 23-m includes a data management unit 31, an orthogonal transform / quantization unit 32, a variable-length encoding unit 33, a buffer upper / lower limit control unit 34, an information amount And a control unit 35.
- the data management unit 31 passes the sub-data received from the dividing unit 22 to the orthogonal transform / quantization unit 32 one by one according to the order of the pictures to be encoded.
- the data management unit 31 also inputs a signal indicating whether the picture passed to the orthogonal transform / quantization unit 32 is inter-coded or intra-coded to the orthogonal transform / quantization unit 32.
- the data management unit 31 stores the current picture number, which is the number of the picture currently being encoded, in order to determine the upper limit value and lower limit value of the standard decoder buffer occupancy for each picture. Input to the upper limit / lower limit control unit 34.
- the orthogonal transform / quantization unit 32 performs orthogonal transform on the picture received from the data management unit 31 and quantizes the frequency signal obtained by the orthogonal transform process. As a result, the orthogonal transform / quantization unit 32 generates a quantized signal having a smaller number of bits than that of the original picture.
- the orthogonal transform / quantization unit 32 uses various video coding standards such as MPEG-2, MPEG-4, or H.264.MPEG-4 Advanced Video Coding (H.264 MPEG-4 AVC). According to either of them, the orthogonal transform process and the quantization process may be executed.
- the orthogonal transform / quantization unit 32 first divides the current picture received from the data management unit 31 into a plurality of blocks having a predetermined number of pixels. This block is hereinafter referred to as a macro block.
- the macro block includes, for example, 16 ⁇ 16 pixels.
- the orthogonal transform / quantization unit 32 performs a difference operation between each macroblock and the predicted image. Then, the orthogonal transform / quantization unit 32 generates a difference value corresponding to each pixel in the macroblock obtained by the difference calculation as a prediction error signal.
- the orthogonal transform / quantization unit 32 performs the inter-coded prediction image or intra-coding in accordance with a signal indicating whether the current picture received from the data management unit 31 is inter-coded or intra-coded.
- One of the predicted images for use is selected.
- a predicted image for inter coding is created from a picture that has already been coded.
- a prediction image for intra coding is created from an already coded macroblock of the current picture.
- the orthogonal transform / quantization unit 32 obtains a frequency signal representing a horizontal frequency component and a vertical frequency component of the prediction error signal by orthogonally transforming the prediction error signal of each macroblock. For example, the orthogonal transform / quantization unit 32 performs a discrete cosine transform (Discrete Cosine Transform, DCT) on the prediction error signal as an orthogonal transform process, thereby generating a set of DCT coefficients for each macroblock as a frequency signal.
- DCT discrete cosine Transform
- the orthogonal transform / quantization unit 32 quantizes the frequency signal according to the quantization parameter determined by the information amount control unit 35.
- This quantization process is a process that represents a signal value included in a certain section as one signal value.
- the fixed interval is called a quantization width.
- the orthogonal transform / quantization unit 32 quantizes the frequency signal by truncating a predetermined number of lower bits corresponding to the quantization width from the frequency signal.
- the quantization width is determined by the quantization parameter.
- the orthogonal transform / quantization unit 32 determines a quantization width to be used according to a function representing a quantization width value with respect to a quantization parameter value.
- the function can be a monotonically increasing function with respect to the value of the quantization parameter, and is set in advance.
- a plurality of quantization matrices that define quantization widths corresponding to the frequency components in the horizontal direction and the vertical direction are prepared in advance and stored in the storage unit 11.
- the orthogonal transform / quantization unit 32 selects a specific quantization matrix among the quantization matrices stored in the storage unit 11 according to the quantization parameter.
- the orthogonal transform / quantization unit 32 refers to the selected quantization matrix and determines the quantization width for each frequency component of the frequency signal.
- the orthogonal transform / quantization unit 32 selects a quantization matrix having a larger quantization width for each frequency component as the quantization parameter value increases. Since the orthogonal transform / quantization unit 32 can reduce the number of bits used to represent each frequency component of the frequency signal by executing the quantization process, the amount of information included in each macroblock can be reduced. . The orthogonal transform / quantization unit 32 supplies the quantized signal to the variable length coding unit 33.
- the orthogonal transform / quantization unit 32 performs inverse quantization by multiplying the quantized signal by a predetermined number corresponding to the quantization width determined by the quantization parameter in order to generate a predicted image. By this inverse quantization, the frequency signal of each macroblock, for example, a set of DCT coefficients is restored. Thereafter, the orthogonal transform / quantization unit 32 performs inverse orthogonal transform processing on the frequency signal. For example, when DCT processing is performed in the orthogonal transform unit 22, the orthogonal transform / quantization unit 32 performs inverse DCT processing on the inversely quantized signal. By performing the inverse quantization process and the inverse orthogonal transform process on the quantized signal, a prediction error signal having the same level of information as the prediction error signal before encoding is reproduced.
- the orthogonal transform / quantization unit 32 adds the reproduced prediction error signal corresponding to the pixel to each pixel value of the motion compensated prediction image, which will be described later, for the picture to be inter-coded.
- the orthogonal transform / quantization unit 32 regenerates the prediction corresponding to each pixel value of the prediction image generated based on the already encoded macroblock for the intra-encoded picture. Add error signals. By executing these processes for each macroblock, the orthogonal transform / quantization unit 32 obtains a predicted picture for the current picture.
- the orthogonal transform / quantization unit 32 temporarily stores the predicted picture as a new reference picture in a memory included in the processing unit 12. Then, the orthogonal transform / quantization unit 32 uses the reference picture to create a predicted image. Note that the orthogonal transform / quantization unit 32 stores a predetermined number of reference pictures, and when the number of reference pictures exceeds the predetermined number, discards the old reference pictures in order.
- the orthogonal transform / quantization unit 32 obtains a motion vector using each macroblock of the current picture and a reference picture that has already been encoded in order to create a prediction image for inter coding.
- the motion vector represents the amount of spatial movement between the macroblock of the current picture and the block of the reference picture that is most similar to the macroblock.
- the orthogonal transform / quantization unit 32 executes, for example, block matching between the macroblock of interest of the current picture and each reference picture, so that the reference picture that most closely matches the macroblock and its reference are obtained from each reference picture. Determine the area on the picture.
- the orthogonal transform / quantization unit 32 then identifies the position of the macroblock of the current picture, the amount of movement in the horizontal and vertical directions of the area that most closely matches the macroblock, and identification information that indicates the reference picture to which the area belongs. Let each of the vectors be the motion vectors.
- the orthogonal transform / quantization unit 32 obtains a motion vector for each macroblock included in the current picture. Then, the orthogonal transform / quantization unit 32 generates a motion-compensated block-unit predicted image by performing motion compensation based on the motion vector obtained for the reference picture.
- the motion compensation is a process of moving the position of the block of the most similar reference picture so as to cancel out the amount of positional deviation between the macro block and the block of the reference picture most similar to the macro block. It is.
- the orthogonal transform / quantization unit 32 interpolates the target macroblock of the current picture by interpolation from the pixel values included in the already encoded macroblock adjacent to the left side or the upper side of the target macroblock. A prediction image for encoding is generated.
- variable length encoding unit 33 encodes the quantized signal and the motion vector received from the orthogonal transform / quantization unit 32 to generate a set of bits in which the data amount is compressed with respect to the original picture. Then, the variable length coding unit 33 concatenates the bit sets generated for each picture included in the sub-data input to the coding unit 23-m according to the execution order of the coding process, thereby Sub bitstream data corresponding to the subdata is generated. For this purpose, for example, the variable-length encoding unit 33 executes variable-length encoding processing for assigning a variable-length codeword that becomes shorter as the signal value with a higher occurrence probability occurs with respect to the quantized signal.
- variable length coding unit 33 can perform Huffman coding processing or arithmetic coding processing as the variable length coding processing.
- the variable length coding unit 33 outputs the generated sub bitstream data to the combining unit 25-m.
- the variable length encoding unit 33 notifies the information amount control unit 35 of the encoding bit length actually assigned to each picture, each macroblock, or each GOP included in the generated sub bitstream data.
- the buffer upper / lower limit control unit 34 determines the limit value of the occupation amount that the bit stream data occupies in the standard decoder buffer. Specifically, the buffer upper limit / lower limit control unit 34 determines the lower limit value of the occupation amount of the standard decoder buffer at the time when the encoded data corresponding to the current picture to be encoded is extracted from the standard decoder buffer. decide. Further, the buffer upper limit / lower limit control unit 34 determines the upper limit value of the occupancy amount of the standard decoder buffer when the encoded data corresponding to the current picture to be encoded is accumulated in the standard decoder buffer.
- the buffer upper limit / lower limit control unit 34 receives the initial set upper limit value and the initial set lower limit value of the standard decoder buffer from the control unit 21 and the encoding unit 23-m. The number of pictures included in the sub data is input.
- the buffer upper limit / lower limit control unit 34 receives the number of the current picture to be encoded from the data management unit 31. Further, the buffer upper limit / lower limit control unit 34 receives the convergence target at the transition time at which the last picture included in the sub-bitstream data generated by the encoding unit 23-m is decoded from the convergence target deriving unit 24-m. A value is entered.
- the buffer upper limit / lower limit control unit 34 performs standard decoding on the bit stream data BS obtained by combining the sub bit stream data SBS m and SBS m + 1 generated by the encoding units 23-m and 23- (m + 1), respectively. Sets the lower limit for the occupation amount in the instrument buffer. Specifically, the buffer upper limit / lower limit control unit 34, at the transition time from the sub bit stream data SBS m to SBS m + 1 , the occupation amount occupied by the bit stream data BS in the standard decoder buffer falls below the convergence target value. Decide the lower limit so that there is no.
- the buffer upper limit / lower limit control unit 34 encodes a lower limit value of the occupation amount of the bit stream data BS at the time when each picture of the sub bit stream data SBS m is extracted from the standard decoder buffer, to be assigned to each picture. Set so that the number of bits does not fluctuate rapidly.
- the buffer upper limit / lower limit control unit 34 inputs the lower limit value from the control unit 21 until the elapsed time after the sub bit stream data SBS m starts to be accumulated in the standard decoder buffer reaches a predetermined control start time.
- the elapsed time t is calculated according to the following formula.
- n p represents the number of the current picture that is acquired from the data management unit 31 and that is the target of the encoding process.
- fr represents the number of pictures included in the sub-data that are retrieved from the standard decoder buffer per second.
- t d represents an initial buffer delay amount from when the sub bit stream data SBS m starts to be accumulated in the standard decoder buffer until data corresponding to the first picture is extracted.
- the buffer upper limit / lower limit control unit 34 monotonically increases the lower limit value so that the lower limit value approaches the convergence target value as the elapsed time t increases.
- the control start time is set to a value greater than or equal to 0 and smaller than a predetermined control end time.
- the control start time is set so that deterioration in image quality due to a decrease in the number of encoded bits accompanying an increase in the lower limit value for each picture is suppressed to the extent that the observer is not aware.
- the control start time is set to an elapsed time corresponding to a value less than half of the number of pictures included in the sub data.
- the control end time can be set to a predetermined timing before the transition time from the sub bit stream data SBS m to the sub bit stream data SBS m + 1 and after the control end time.
- the interval between the control start time and the control end time is preferably as long as possible.
- the buffer upper limit / lower limit control unit 34 can set the lower limit value L np for the current picture, for example, according to the following equation.
- t p represents the time corresponding to the current picture.
- t start represents the control start time at which the lower limit value correction starts
- t end represents the control end time at which the lower limit value correction ends.
- S target represents a convergence target value
- L ini represents an initial setting lower limit value.
- the encoding unit 23-m cannot determine the encoded bit allocation amount for each picture so as to exceed the initial set upper limit value. Therefore, the encoding unit 23-m calculates the remaining occupation amount of the bit stream data BS when the data corresponding to the last picture included in the sub bit stream data SBS m is extracted from the standard decoder buffer. Cannot be close to. In such a case, the buffer upper limit / lower limit control unit 34 corrects the upper limit value to be higher than the convergence target value.
- the buffer upper limit / lower limit control unit 34 sets the upper limit value for all pictures to the maximum allowable value of the occupation amount of the standard decoder buffer.
- the buffer upper limit / lower limit control unit 34 sets the upper limit value at the time when the picture is taken out from the standard decoder buffer after the predetermined control start time and before the control end time to be higher than the convergence target value. It may be gradually increased until Note that the control start time related to the setting of the upper limit value and the control start time related to the setting of the lower limit value do not have to match. Similarly, the control end time related to the setting of the upper limit value and the control end time related to the setting of the lower limit value may not match. However, it is preferable to set the upper limit value and the lower limit value so that a difference corresponding to the number of encoded bits for at least one picture is always provided between the upper limit value and the lower limit value.
- FIG. 6A is a graph showing an example of transition of the lower limit value of the standard decoder buffer set by the buffer upper limit / lower limit control unit 34.
- FIG. 6B is a graph showing an example of transition of the upper limit value of the standard decoder buffer set by the buffer upper limit / lower limit control unit 34.
- the horizontal axis represents time
- the vertical axis represents the occupation amount of the standard decoder buffer.
- a line 601 represents the upper limit value of the standard decoder buffer occupation amount
- a line 602 represents the lower limit value of the standard decoder buffer occupation amount.
- dotted lines 603 and 604 represent the convergence target value and the transition occupation amount, respectively.
- the graph 605, the sub-bit stream data SBS m + 1 generated by the encoding unit 23-m sub-bit stream data SBS m and the next coding unit produced by the 23- (m + 1) is coupled It represents the transition of the occupation amount occupied by the bit stream data BS in the standard decoder buffer.
- the lower limit value 602 of the standard decoder buffer occupancy is the control start time t 1 from the time t 0 when the sub bitstream data SBS m starts to be accumulated in the standard decoder buffer. Until the initial set lower limit. Thereafter, the lower limit value 602 increases linearly until the control end time t 2 after the control start time t 1 . At the control end time t 2 , the lower limit value 602 reaches the convergence target value 603 set to a value equal to or larger than the transition occupation amount 604 and is kept constant after time t 2 .
- the lower limit value Since the lower limit value is set in this way, the occupation amount occupied by the bit stream data BS in the standard decoder buffer at the transition time t tr when the last picture of the sub bit stream data SBS m is decoded is surely the sub bit. It becomes higher than the occupied amount at the time of transition of the stream data SBS m + 1 .
- the upper limit value 601 of the standard decoder buffer occupancy is sufficiently high so that the occupancy 605 does not exceed the upper limit 601 even if the lower limit 602 is set to the convergence target value 603. Therefore, the buffer upper limit / lower limit control unit 34 does not correct the upper limit value.
- a line 611 represents the upper limit value of the standard decoder buffer occupation amount
- a line 612 represents the lower limit value of the standard decoder buffer occupation amount
- a dotted line 613 represents the convergence target value.
- the lower limit value 612 of the standard decoder buffer occupancy is from time t 0 when the sub-bitstream data starts to be accumulated in the standard decoder buffer to control start time t 1 .
- the initial setting lower limit value is set. Thereafter, the lower limit value 612 increases linearly until the control end time t 2 after the control start time t 1 . At the control end time t 2 , the lower limit value 612 reaches the convergence target value 613.
- the upper limit value 611 of the occupation amount of the standard decoder buffer is set to the initial set upper limit value from time t 0 to control start time t 3 . Thereafter, the upper limit value 611 increases linearly until the control end time t 4 after the control start time t 3 . Then the control end time t 4, the upper limit value 611 reaches the maximum allowable value of the standard decoder buffer, kept at time t 4 after constant.
- the buffer upper / lower limit control unit 34 notifies the information amount control unit 35 of the upper limit value and the lower limit value for the current picture.
- the information amount control unit 35 determines a quantization parameter for controlling the number of encoded bits assigned to the picture encoded by the orthogonal transform / quantization unit 32.
- the information amount control unit 35 uses various quantization parameter determination methods in which the value of the quantization parameter decreases as the value of the target information amount corresponding to the number of encoded bits allocated to the picture increases. Any of them can be adopted. As such a method, the information amount control unit 35 performs encoding assigned to the next picture from the plan of the number of encoded bits actually assigned to the already encoded picture and the target number of encoded bits. A feedback type method for determining the number of bits may be employed. Further, the information amount control unit 35 calculates a statistic indicating the nature of the picture from the motion prediction process in the orthogonal transform / quantization unit 32, and determines the number of coding bits to be assigned to the next picture based on the statistic. A feedforward type method may be employed. Further, the information amount control unit 35 may use a method in which such a feedback type method and a feed forward type method are combined.
- the information amount control unit 35 obtains the basic target information amount of each picture in accordance with the method adopted in the standard test model 5 of MPEG-2.
- the maximum transmission bit rate and the frame rate are input to the information amount control unit 35 from the control unit 21.
- the information amount control unit 35 receives picture type information indicating whether the current picture to be encoded is a picture that is inter-coded or a picture that is intra-coded, from the data management unit 31. Further, an upper limit value and a lower limit value for the current picture are input to the information amount control unit 35 from the buffer upper limit / lower limit control unit 34.
- the information amount control unit 35 when the encoded bit sequence corresponding to the current picture is transmitted to the standard decoder buffer, the occupation amount of the standard decoder buffer does not exceed the upper limit value. So as to obtain the basic target information amount. Further, the information amount control unit 35, when the encoded bit string corresponding to the current picture is extracted from the standard decoder buffer according to these input parameters, the occupation amount of the standard decoder buffer does not fall below the lower limit value. So as to obtain the basic target information amount.
- the information amount control unit 35 does not cause the standard decoder buffer occupancy to fall below the modified lower limit value.
- the correction information amount for each picture is obtained.
- the information amount control unit 35 calculates the final target information amount by subtracting the corrected target information amount from the basic target information amount.
- the information amount control part 35 calculates
- the basic target information amount and quantization parameter calculation method for MPEG-2 standard test model 5 are specified at http://www.mpeg.org/MPEG/MSSG/tm5/Ch10/Ch10.html. Refer to URL.
- the information amount control unit 35 may determine the quantization parameter using a rate distortion function representing the relationship between the target information amount and the quantization parameter as disclosed in Japanese Patent Application Laid-Open No. 2008-252562. Also in this case, when the lower limit value of the buffer occupancy amount is corrected from the initial setting lower limit value, the information amount control unit 35 subtracts the correction information amount for each picture from the target information amount to obtain the target information amount. Correct it.
- the information amount control unit 35 first calculates the estimated complexity for the current picture.
- the complexity of a picture that is intra-coded, a picture that is inter-coded by unidirectional prediction, and a picture that is inter-coded by bi-directional prediction is calculated by the following equations.
- a picture to be intra-coded is referred to as an I picture.
- a picture that is inter-coded using information of a previous picture in time is called a P picture.
- a picture that is inter-coded using information of both the previous picture and the subsequent picture is called a B picture.
- Xi is the complexity for the I picture
- Xp is the complexity for the P picture
- Xb is the complexity for the B picture.
- Si is the number of bits generated by encoding the immediately preceding picture when the immediately preceding encoded picture is an I picture.
- Sp is the number of bits generated by encoding the immediately preceding picture when the immediately preceding encoded picture is a P picture.
- Sb is the number of bits generated by encoding the immediately preceding picture when the immediately preceding encoded picture is a B picture.
- Qi, Qp, and Qb are the quantization parameters of all macroblocks used when encoding the previous picture when the previous picture is an I picture, a P picture, and a B picture, respectively. This is an average quantization parameter calculated by averaging.
- the initial values of Xi, Xp, and Xb are set as follows as an example.
- bitrate is the maximum transmission bit rate and represents the amount of information (bit / s) per second given to encoding.
- the information amount control unit 35 based on the calculated complexity Xi, Xp, Xb, according to the following equation, the basic target information amount Ti for the I picture, the basic target information amount Tp for the P picture, and the basic for the B picture A target information amount Tb is calculated.
- the immediately preceding picture is a B picture
- Sj Sb.
- the remaining number of bits R is updated using the remaining number of bits R calculated for the previous GOP as follows: .
- R is set to 0 for the first GOP of the moving image data.
- picturerate is the number of pictures (Hz) scanned per second in the moving image data to be encoded.
- Np and Nb are the number of remaining unencoded P pictures and B pictures in the GOP, respectively, in the encoding order.
- the function max (a, b) is a function that outputs the larger value of the variables a and b.
- the information amount control unit 35 sets target information for a picture encoded after the control start time of the lower limit value of the standard decoder buffer occupancy so that the standard decoder buffer occupancy does not become less than the lower limit.
- the amount is adjusted using the correction information amount ⁇ T. That is, when the current picture is encoded after the control start time, the information amount control unit 35 calculates the correction information amount ⁇ T. If the current picture is an I picture, the information amount control unit 35 obtains a target information amount T for the current picture by subtracting the correction information amount ⁇ T from the basic target information amount Ti calculated by the equation (5).
- the information amount control unit 35 sets a value obtained by subtracting the correction information amount ⁇ T from the basic target information amount Tp as the target information amount T for the current picture. Furthermore, if the current picture is a B picture, the information amount control unit 35 sets a value obtained by subtracting the correction information amount ⁇ T from the basic target information amount Tb as the target information amount T for the current picture.
- the correction information amount ⁇ T corresponds to the difference between the lower limit value when the previous picture is extracted from the standard decoder buffer and the lower limit value when the current picture is extracted from the standard decoder buffer.
- the correction information amount ⁇ T is calculated by the following equation when the lower limit value is obtained according to the equation (3).
- S target represents a convergence target value calculated by the convergence target deriving unit 24-m
- L ini represents an initial setting lower limit value.
- the N a is encoded between the control start time buffer upper and lower control unit 34 starts the adjustment of the lower limit value of the occupancy of the standard decoder buffer, to the control end time adjustment of the lower limit value The number of pictures to be played.
- the information amount control unit 35 may set the correction information amount ⁇ T for the I picture that has a large influence on the coding of other pictures to 0. The number of this case, in order to determine the correction information amount ⁇ T for P-pictures and B-pictures, N a in equation (6), P picture and B picture to be coded between the control start time to control the end time The sum of
- the information amount control unit 35 determines a quantization parameter based on the target information amount T. For this purpose, the information amount control unit 35 calculates the degree of fullness d ij , d pj , and d bj of the standard decoder buffer before the j-th macroblock is encoded. Note that the degree of satisfaction d ij corresponds to an I picture, the degree of satisfaction d pj corresponds to a P picture, and the degree of satisfaction d bj corresponds to a B picture. The degree of satisfaction d ij , d pj , d bj is calculated according to the following equation.
- B j ⁇ 1 is the number of bits generated by encoding all the macroblocks from the first to the (j ⁇ 1) th.
- MBN is the number of macroblocks included in a picture.
- D i0 , d p0 , and d b0 are initial values of satisfaction. Note that the degree of satisfaction d iMBN , d pMBN , and d bMBN when a specific picture is encoded up to the last macroblock are initial values d i0 , d p0 , and d b0 for the following same type of pictures: Become.
- the information amount control unit 35 determines a quantization parameter for the j-th macroblock by using the satisfaction levels d ij , d pj , and d bj according to the following equation.
- d j is d ij if the current picture is an I picture
- d pj if the current picture is a P picture
- d bj if the current picture is a B picture.
- the information amount control unit 35 passes the obtained quantization parameter to the orthogonal transform / quantization unit 32.
- the information amount control unit 35 at the transition time calculated from the actual coded bits for each picture included in a sub-bit stream data SBS m received from the variable length coding unit 33, a sub-bit stream data SBS m
- the remaining occupation amount of the bit stream data BS to be included is notified to the combining unit 25-m.
- the information amount control unit 35 starts from the start of accumulation of the sub bitstream data SBS m in the standard decoder buffer until the last picture of the sub bit stream data SBS m is decoded. Multiply the period length by the maximum transmission bit rate.
- the information amount control unit 35 from the integrated value, by subtracting the total number of coded bits of all the pictures included in the sub-bit stream data SBS m, to calculate the residual fullness.
- the coupling portions 25-1, 25-2,. . . , 25- (n-1) are coupled to the coupling portions 25-1, 25-2,. . . 25- (n-1), the two sub-bitstream data are combined according to the time order of reproduction.
- the coupling portion 25-1, and the sub-bit stream data SBS 1 output from the coding unit 23-1, the sub-bit stream data SBS 2 output from the coding unit 23-2 Is entered.
- the combining unit 25-1 combines the sub bit stream data SBS 2 after the sub bit stream data SBS 1 .
- the combining unit 25-1 outputs the sub bit stream data combined into one.
- the combining unit 25-m (where 2 ⁇ m ⁇ n ⁇ 1) includes the sub bit stream data output from the combining unit 25- (m ⁇ 1) and the encoding unit 23- (m + 1).
- the sub bit stream data SBS m + 1 output from is input.
- the combining unit 25-m combines the sub bit stream data SBS m + 1 after the sub bit stream data output from the combining unit 25- (m ⁇ 1).
- the combining unit 25-m outputs the sub bit stream data combined into one.
- the combining unit 25- (n-1) outputs bit stream data in which all the sub bit stream data generated by the respective encoding units are combined.
- This bit stream data is obtained by encoding moving image data acquired by the processing unit 12.
- the coupling portions 25-1, 25-2,. . . , 25- (n-1) have the same configuration and function, and therefore, one coupling portion 25-m will be described below.
- Coupling unit 25-m the difference in residual fullness notified from the information-amount control unit 35 of the encoding unit 23-m and S r, the transition time of occupancy of S tr received from the target convergence derivation unit 24-m [Delta] S Find r . If the difference ⁇ S r is not 0, the combining unit 25-m transmits the invalid bit string corresponding to the difference ⁇ S r to the sub bit stream data output from the combining unit 25- (m ⁇ 1) and the sub bit stream data. Inserted between bit stream data SBS m + 1 . This invalid bit string is fetched from the standard decoder buffer together with data corresponding to the last picture when the last picture of the sub-bitstream data SBS m is decoded.
- This invalid bit string is preferably a bit string that does not affect the image quality of the decoded picture.
- this invalid bit string can be Filler data in the Network Abstraction Layer (NAL) format defined in H.264 MPEG-4 AVC.
- this invalid bit string can be a stuffing byte defined in MPEG-2.
- FIG. 7 is a diagram illustrating a correspondence relationship between the transition of the occupation amount of the bit stream data in the standard decoder buffer at the transition time and the sub bit stream data combined by the combining unit 25-m.
- the schematic structure of the bit stream data 701 is shown on the upper side of FIG.
- a graph 710 showing the transition of the occupation amount occupied by the bit stream data 701 in the standard decoder buffer is shown.
- the horizontal axis represents time
- the vertical axis represents the occupation amount.
- Time t tr represents the transition time.
- the bit stream data 701 includes front side sub bit stream data 702 and rear side sub bit stream data 703.
- bit stream data 701 has an invalid bit string 704 between the two sub bit stream data.
- the occupation amount of the standard decoder buffer is the valid data amount. reduced by an amount S v corresponding to the data 705.
- the invalid bit string 704 is extracted from the standard decoder buffer together with the valid data 705, so that the standard decoder buffer occupancy further decreases by an amount ⁇ S r corresponding to the invalid bit string 704.
- the occupation amount after the effective data 705 corresponding to the last picture included in the front-side sub bitstream data 702 at the transition time t tr is extracted from the standard decoder buffer is the back-side sub-bitstream data 703. It agrees with the transition occupancy S tr due to.
- FIG. 8 shows an operation flowchart of a moving image data encoding process controlled by a computer program executed on the processing unit 12 of the moving image encoding device 1.
- n is an integer greater than or equal to 2, and is equal to the number of encoding parts.
- the dividing unit 22 inputs each sub-data to each encoding unit 23-m (1 ⁇ m ⁇ n) according to the time order of reproduction.
- the convergence target deriving unit 24-k (1 ⁇ k ⁇ n ⁇ 1) of the processing unit 12 respectively encodes the sub-bitstream data SBS k generated by the encoding unit 23-k into the encoding unit 23- (k +
- the transition occupation amount and the convergence target value at the transition time to the sub-bitstream data SBS k + 1 generated in 1) are calculated (step S102).
- the occupation amount during transition is an occupation amount occupied by the sub bitstream data SBS k + 1 in the standard decoder buffer at the transition time.
- the convergence target value is a target value of the occupation amount occupied by the bit stream data BS obtained by combining the sub bit stream data SBS k and the sub bit stream data SBS k + 1 at the transition time in the standard decoder buffer.
- the convergence target deriving unit 24-k notifies the transition unit occupation amount to the coupling unit 25-k.
- the convergence target deriving unit 24-k notifies the convergence target value to the encoding unit 23-k of the processing unit 12.
- Each encoding unit 23-m (1 ⁇ m ⁇ n) is based on the convergence target value notified of the input sub-data or the upper limit value and lower limit value of the standard decoder buffer set by the control unit 21. Each picture included in the sub-data is encoded. Then, each encoding unit 23-m generates sub bit stream data in which each picture included in the sub data is encoded (step S103). At that time, each encoding unit 23-k (1 ⁇ k ⁇ n ⁇ 1) performs standard decoding at the transition time when the generated bit stream data obtained by combining the sub bit stream data SBS k and SBS k + 1 is changed.
- the encoding unit 23-n is a sub-bit stream data SBS n as occupied amount of the sub-bit stream data SBS n occupy the standard decoder buffer falls between the maximum allowed value and a minimum allowable value of the standard decoder buffer Generate. Then, the encoding unit 23-1 and the encoding unit 23-2 output the generated sub-bitstream data to the combining unit 25-1.
- the encoding unit 23-m (3 ⁇ m ⁇ n) outputs the generated sub-bitstream data to the combining unit 25- (m ⁇ 1).
- Each combining unit 25-k (1 ⁇ k ⁇ n ⁇ 1) receives the actual residual occupation amount S r notified from the information amount control unit 35 of the encoding unit 23-k and the convergence target deriving unit 24-k. A difference ⁇ S r from the received transition occupation amount S tr is obtained (step S104). Then, the combining unit 25-k outputs the invalid bit string corresponding to the difference ⁇ S r from the sub bit stream data output from the combining unit 25- (k ⁇ 1) and the encoding unit 23- (k + 1). Insert between the received sub-bitstream data. Each combining unit 25-k combines the two sub bitstream data (step S105). Then, when all the combining units finish combining the sub bitstream data, bitstream data in which moving image data is encoded is created. Then, the processing unit 12 ends the moving image encoding process.
- FIG. 9 shows sub-data encoding processing by each encoding unit 23-k (1 ⁇ k ⁇ n ⁇ 1) controlled by a computer program executed on the processing unit 12 of the moving image encoding device 1. An operation
- movement flowchart is shown.
- the buffer upper limit / lower limit control unit 34 of the encoding unit 23-k performs standard processing on each picture of the input sub-data according to the convergence target value received from the convergence target deriving unit 24-k.
- the upper limit value and the lower limit value of the decoder buffer are determined (step S201).
- the buffer upper limit / lower limit control unit 34 is configured so that the lower limit value approaches the convergence target value as the end of the sub bit stream data obtained by encoding the sub data to which the position of the picture is input is closer. Determine the lower limit for each picture.
- the buffer upper / lower limit control unit 34 corrects the upper limit value for each picture so as to be higher than the convergence target value.
- the buffer upper limit / lower limit control unit 34 notifies the information amount control unit 35 of the encoding unit 23-k of the upper limit value and the lower limit value.
- the information amount control unit 35 determines a target information amount corresponding to the encoded bit allocation amount for each picture (step S202). At that time, the information-amount control unit 35, the sub-bit stream data SBS k + 1 generated by the sub-bit stream data SBS k and the encoding unit 23- (k + 1) generated by the encoding unit 23-k is The condition is that the occupied amount of the combined bitstream data in the standard decoder buffer is included between the upper limit value and the lower limit value. Further, the information amount control unit 35 calculates a correction information amount corresponding to the difference between the lower limit values for a picture set with a lower limit value different from the lower limit value for the previous encoded picture, and sets target information.
- the target information amount is corrected by subtracting the correction information amount from the amount (step S203). And the information amount control part 35 calculates
- the orthogonal transform / quantization unit 32 performs orthogonal transform processing on each picture of the input sub data to obtain a frequency signal. Then, the orthogonal transform / quantization unit 32 quantizes the frequency signal with the quantization width determined according to the quantization parameter notified from the information amount control unit 35 (step S205). The orthogonal transform / quantization unit 32 passes the quantized signal obtained by the quantization process to the variable length coding unit 33 of the coding unit 23-k. Then, the variable length coding unit 33 performs variable length coding processing on the quantized signal received from the orthogonal transform / quantization unit 32 (step S206).
- variable length encoding unit 33 combines the encoded bit string obtained for each picture included in the sub data input to the encoding unit, thereby converting the sub bit stream data obtained by encoding the sub data. Generate (step S207). Then, the variable length encoding unit 33 outputs the generated sub bitstream data to the corresponding combining unit (step S208). Further, the variable length coding unit 33 notifies the information amount control unit 35 of the number of coding bits actually assigned to each picture of the generated sub bitstream data (step S209). Then, the encoding unit 23-k ends the sub data encoding process.
- the buffer upper limit / lower limit control unit 34 sets the upper limit value and the lower limit value of the standard decoder buffer to the upper limit value and the lower limit value determined by the control unit 21, respectively. Set to the value itself. Further, the processing in step S203 is omitted. As for other operations, the encoding unit 23-n operates in the same manner as the other encoding units.
- bit stream data generated by the moving image encoding device 1 can be, for example, data conforming to MPEG-2, MPEG-4, or H.264 MPEG-4 AVC. Therefore, the bit stream data generated by the video encoding device 1 can be decoded by a conventional video decoding device.
- this moving image encoding apparatus is capable of encoding bit allocation with respect to the front sub-bitstream data among the bitstream data generated by combining the two sub-bitstream data by the combining unit. To control. As a result, the moving picture encoding apparatus adjusts the occupation amount of the combined bit stream data in the standard decoder buffer at the transition time at which the last picture of the front side sub bit stream data is decoded. Specifically, the moving picture encoding apparatus determines the occupation amount occupied by the combined bit stream data at the transition time in the standard decoder buffer as a sub-bitstream on the rear side accumulated in the standard decoder buffer by the transition time. Make it higher than the amount of data occupied.
- the moving picture encoding apparatus further includes an invalid bit string extracted when the last picture of the front sub-bitstream data is decoded between the front sub-bitstream data and the rear sub-bitstream data. insert.
- the moving picture encoding apparatus is configured to calculate the occupation amount occupied by the combined bit stream data in the standard decoder buffer and the occupation amount occupied by the subsequent sub bit stream data in the standard decoder buffer at the transition time. The difference can be eliminated. Therefore, this moving picture coding apparatus can satisfy the standard decoder buffer specifications without having to simulate the transition of the occupation amount or re-encode after decoding the encoded picture. Therefore, this moving image encoding apparatus can encode moving image data in a short time.
- this moving image encoding apparatus since this moving image encoding apparatus gradually corrects the lower limit value of the occupied amount of the combined bit stream data in the standard decoder buffer, the number of encoded bits allocated to each picture included in the bit stream data Does not decrease rapidly. Therefore, this moving image encoding apparatus can prevent image quality deterioration due to encoding over the entire moving image data.
- this moving image encoding apparatus may encode moving image data at a variable bit rate.
- the occupation amount of the bit stream data occupying the standard decoder buffer only needs to be less than the minimum allowable value of the occupation amount. Therefore, each combiner is invalid even if the remaining occupation amount of the bit stream data at the transition time is larger than the occupation amount at the time of transition occupied by the sub bit stream data on the back side accumulated in the standard decoder buffer by the transition time. It is not necessary to insert a bit string.
- the invalid bit string inserted by the combining unit may only have an integer multiple of bytes depending on the type of the standard. is there.
- the bitstream data in which two subbitstream data at the transition time are combined occupies the remaining occupancy in the standard decoder buffer, and the transition occupied by the subbitstream data on the rear side of the two subbitstream data The difference from the time occupancy is in bit units. Therefore, if the difference is not an integer multiple of bytes, the coupling unit cannot completely match the remaining occupation amount at the transition time with the occupation amount at the transition time even if an invalid bit string is inserted.
- the occupation amount occupied by the bit stream data in the standard decoder buffer is between the maximum allowable value and the minimum allowable value of the standard decoder buffer. It may not fit.
- the buffer upper limit / lower limit control unit of each encoding unit sets the lower limit value of the standard decoder buffer at the transition time higher by a predetermined margin amount than the convergence target value.
- the buffer upper limit / lower limit control unit of each encoding unit preferably sets the upper limit value of the standard decoder buffer by a predetermined margin amount lower than the maximum allowable value of the standard decoder buffer.
- the predetermined margin amount is an amount corresponding to the above error, and may be, for example, 8 bits.
- each coupling unit obtains the total of the above errors from the previous coupling unit, and the absolute value of a value obtained by adding the error generated in the coupling unit to the total of the obtained errors is always equal to or less than a predetermined margin amount. It is preferable to determine the length of the invalid bit string so that
- This image encoding device is used for various purposes.
- the image encoding device is incorporated in a moving image data distribution server, a video transmission device, a videophone system, a computer, or a mobile phone.
- the encoded moving image data created by this moving image encoding device is converted into a moving image such as an audio signal by the processing unit. Together with other signals acquired at the same time as the data, it is converted into a data stream according to a predetermined communication standard. Then, the moving image data distribution server incorporating the image encoding device distributes the data stream to the moving image decoding device via the communication line.
- a computer program that causes a computer to realize the functions of the control unit, the division unit, the encoding unit, the convergence target derivation unit, and the combining unit included in the processing unit of the moving image encoding apparatus is stored on a computer-readable medium. It may be provided in a recorded form.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Computer Graphics (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
また、結合区間に含まれるデータを一旦復号した後に、その復号されたデータを再符号化する技術は、その再符号化処理を実行するための時間を余計に必要とする。さらに、この技術は、分割された各動画像データが結合される時点におけるバッファ量の調整を行わない。そのため、その結合時点の設定が不適切であった場合、特定のピクチャに対して割り当てられる符号化ビット量が極端に少なくなり、その結果として急激な画質劣化が生じてしまうおそれがあった。
上記の一般的な記述及び下記の詳細な記述の何れも、例示的かつ説明的なものであり、請求項のように、本発明を制限するものではないことを理解されたい。
11 記憶部
12 処理部
13 入出力部
21 制御部
22 分割部
23-1、23-2、...、23-n 符号化部
24-1、24-2、...、24-(n-1) 収束目標導出部
25-1、25-2、...、25-(n-1) 結合部
31 データ管理部
32 直交変換・量子化部
33 可変長符号化部
34 バッファ上限・下限制御部
35 情報量制御部
この動画像符号化装置は、動画像データを複数のサブデータに分割し、サブデータごとに異なる符号化器を用いて符号化することにより生成したサブビットストリームデータを一つのビットストリームデータに結合する。この動画像符号化装置は、標準復号器バッファの規定を満たすために、結合される二つのサブビットストリームデータのうちの前側のサブビットストリームデータに対する符号化ビット割当量を制御する。さらにこの動画像符号化装置は、前側のサブビットストリームデータと後側のサブビットストリームデータの間に、その最後のピクチャが復号されるときに合わせて取り出される無効ビット列を挿入する。これにより、この動画像符号化装置は、前側のサブビットストリームデータに含まれる最後のピクチャが復号された時点でビットストリームデータが標準復号器バッファに占める占有量と、後側のサブビットストリームデータが標準復号器バッファに占める占有量との差をなくす。
なお、符号化対象となる動画像データに含まれるピクチャは、インターレース方式により取得されるフィールド、または、プログレッシブ方式により取得されるフレームの何れであってもよい。
処理部12が有する、これらの各部は、処理部12が有するプロセッサ上で実行されるコンピュータプログラムによって実装される機能モジュールである。処理部12が有するこれらの各部は、それぞれ別個の演算回路あるいはそれら演算回路が集積された一つの集積回路として動画像符号化装置1に実装されてもよい。
また制御部21は、符号化対象となる動画像データを記憶部11から読み込み、あるいは入出力部13を介して取得し、その動画像データを分割部22に渡す。その際、その動画像データの内容に関する情報も動画像データとともに取得される場合、その情報も分割部22に渡してもよい。また制御部21は、複数の動画像データを記憶部11から読み込み、あるいは入出力部13を介して取得し、それら複数の動画像データを分割部22に渡してもよい。さらに、処理部12は、予め分割された複数の動画像データを別個の符号化部23-mにより符号化し、それぞれの動画像データが符号化されたサブビットストリームデータを結合することにより、一つのビットストリームデータを生成してもよい。この場合、分割部22は省略されてもよい。そして制御部21は、それら複数の動画像データを直接各符号化部23-mに入力する。
また分割部22は、各サブデータに含まれるピクチャの枚数が、Group Of Pictures(GOP)の倍数となるように、サブデータの長さを調整してもよい。なお、GOPは、一定周期で繰り返される、連続する複数のピクチャを含むピクチャの組を規定する構造であり、GOPでは、各ピクチャに対してイントラ符号化方法が適用されるのか、インター符号化方法が適用されるのかが規定されている。なお、イントラ符号化方法は、符号化対象の1枚のピクチャ内に含まれる情報のみを用いてそのピクチャを符号化する方法である。一方、インター符号化方法は、符号化対象のピクチャと、その前後のピクチャの情報を用いて、符号化対象のピクチャを符号化する方法である。
図3(a)~図3(c)において、横軸は時間を表し、縦軸は標準復号器バッファの占有量を表す。また、線301は、標準復号器バッファの占有量の最大許容値を表す。また時刻t0は、サブビットストリームデータSBSmが標準復号器バッファに蓄積開始される時刻を表す。さらに期間tdは初期バッファ遅延量を表し、期間tf0はフレームレートによって定められるピクチャ間隔を表し、例えば、期間tf0は1/30秒である。また図3(a)及び図3(b)において、グラフ310は、サブビットストリームデータSBSmが標準復号器バッファに占める占有量の遷移を表す。また図3(b)及び図3(c)において、グラフ320は、サブビットストリームデータSBSmに結合される次のサブビットストリームデータSBSm+1が標準復号器バッファに占める占有量の遷移を表す。さらに図3(c)において、グラフ330は、ビットストリームデータBSが、標準復号器バッファに占める占有量の遷移を表す。そして図3(b)及び図3(c)において、時刻ttrは前側のサブビットストリームデータSBSmの最後のピクチャが復号された遷移時刻を表し、時刻tjは、後側のサブビットストリームデータSBSm+1が標準復号器バッファに蓄積開始される結合時刻を表す。
遷移時占有量及び収束目標値を決定するために、収束目標導出部24-mには、制御部21から初期バッファ遅延量と、最大伝送ビットレートと、結合点フレーム間時間とが入力される。なお結合点フレーム間時間は、遷移時刻からサブビットストリームデータSBSm+1の最初のピクチャに対応するデータが標準復号器バッファから取り出される時刻までの期間である。
ここで、標準復号器バッファの定義により、時刻tjから時刻t1までの間に標準復号器バッファに蓄積される、サブビットストリームデータSBSm+1の占有量は、初期バッファ遅延量tdに最大伝送ビットレートを乗じた値となる。また、遷移時刻ttrから時刻t1までの間に標準復号器バッファに蓄積される、サブビットストリームデータSBSm+1の占有量は、結合点フレーム間時間tfに最大伝送ビットレートを乗じた値となる。従って、収束目標導出部24-mは、図4に示されるように、遷移時占有量Strを以下の式に従って算出できる。
図5は、符号化部23-mの機能ブロック図である。図5に示されるように、符号化部23-mは、データ管理部31と、直交変換・量子化部32と、可変長符号化部33と、バッファ上限・下限制御部34と、情報量制御部35とを有する。
さらにデータ管理部31は、各ピクチャに対する標準復号器バッファの占有量の上限値及び下限値を決定するために、現在符号化処理の対象となっているピクチャの番号である現ピクチャ番号を、バッファ上限・下限制御部34に入力する。
直交変換・量子化部32は、それぞれのマクロブロックと、予測画像との差分演算を実行する。そして直交変換・量子化部32は、その差分演算により得られたマクロブロック内の各ピクセルに対応する差分値を、予測誤差信号として生成する。その際、直交変換・量子化部32は、データ管理部31から受け取った現在のピクチャをインター符号化するか、イントラ符号化するかを示す信号に従って、インター符号化用の予測画像またはイントラ符号化用の予測画像の何れか一方を選択する。なお、後述するように、インター符号化用の予測画像は、既に符号化されたピクチャから作成される。一方、イントラ符号化用の予測画像は、現在のピクチャの既に符号化されたマクロブロックから作成される。
直交変換・量子化部32は、量子化処理を実行することにより、周波数信号の各周波数成分を表すために使用されるビットの数を削減できるので、各マクロブロックに含まれる情報量を低減できる。直交変換・量子化部32は、量子化信号を可変長符号化部33に供給する。
直交変換・量子化部32は、現在のピクチャに含まれる各マクロブロックに対して、それぞれ動きベクトルを求める。そして直交変換・量子化部32は、参照ピクチャを求めた動きベクトルに基づいて動き補償することにより、動き補償されたブロック単位の予測画像を生成する。なお、動き補償は、動きベクトルで表された、マクロブロックとそれに対して最も類似する参照ピクチャのブロックの位置ずれ量を相殺するように、その最も類似する参照ピクチャのブロックの位置を移動する処理である。
可変長符号化部33は、生成したサブビットストリームデータを結合部25-mへ出力する。また可変長符号化部33は、生成したサブビットストリームデータに含まれる各ピクチャ、各マクロブロックあるいは各GOPに対して実際に割り当てられた符号化ビット長を情報量制御部35に通知する。
上限値及び下限値を決定するために、バッファ上限・下限制御部34には、制御部21から標準復号器バッファの初期設定上限値及び初期設定下限値と、符号化部23-mに入力されたサブデータに含まれるピクチャ数が入力される。またバッファ上限・下限制御部34には、データ管理部31から符号化処理の対象となる現在のピクチャの番号が入力される。さらに、バッファ上限・下限制御部34には、収束目標導出部24-mから、符号化部23-mにより生成されたサブビットストリームデータに含まれる最後のピクチャが復号される遷移時刻における収束目標値が入力される。
図6(a)及び図6(b)において、横軸は時間を表し、縦軸は標準復号器バッファの占有量を表す。また、図6(a)において、線601は、標準復号器バッファの占有量の上限値を表し、線602は、標準復号器バッファの占有量の下限値を表す。さらに点線603及び604は、それぞれ、収束目標値及び遷移時占有量を表す。そしてグラフ605は、符号化部23-mによって生成されたサブビットストリームデータSBSmと次の符号化部23-(m+1)によって生成されたサブビットストリームデータSBSm+1が結合されたビットストリームデータBSが標準復号器バッファに占める占有量の遷移を表す。
図6(b)に示されるように、標準復号器バッファの占有量の下限値612は、サブビットストリームデータが標準復号器バッファに蓄積開始される時刻t0から、制御開始時刻t1までの間、初期設定下限値に設定される。その後、下限値612は、制御開始時刻t1を過ぎると、制御終了時刻t2までの間直線的に増加する。そして制御終了時刻t2では、下限値612は、収束目標値613に達する。一方、標準復号器バッファの占有量の上限値611は、時刻t0から制御開始時刻t3までの間、初期設定上限値に設定される。その後、上限値611は、制御開始時刻t3を過ぎると、制御終了時刻t4までの間直線的に増加する。そして制御終了時刻t4では、上限値611は、標準復号器バッファの最大許容値に達し、時刻t4以降一定に保たれる。
Xi = (160 * bitrate) / 115
Xp = (60 * bitrate) / 115
Xb = (42 * bitrate) / 115
ただし、bitrateは、最大伝送ビットレートであり、符号化に与えられた1秒あたりの情報量(bit/s)を表す。
R = R-Sj
ただし直前のピクチャがIピクチャであれば、Sj=Siである。また直前のピクチャがPピクチャであれば、Sj=Spである。あるいは、直前のピクチャがBピクチャであれば、Sj=Sbである。
また、GOPの最初のピクチャ、すなわち、Iピクチャを符号化する際に、ビット数の残量Rは、前のGOPについて計算されたビット数の残量Rを用いて次のように更新される。
R = G + R
G = bitrate * N / picturerate
ただしNは、GOPに含まれるピクチャの枚数である。なお、動画像データの最初のGOPに対して、Rは0に設定される。さらに、picturerateは、符号化対象の動画像データにおいて、1秒間に走査されるピクチャの枚数(Hz)である。
また(5)式において、Np、Nbは、それぞれ、符号化順序における、GOP内の符号化されていない残りPピクチャとBピクチャの枚数である。また、関数max(a,b)は、変数aとbのうちの大きい方の値を出力する関数である。
ただし、補正情報量ΔTは、1枚前に符号化されるピクチャが標準復号器バッファから取り出されるときの下限値と、現在のピクチャが標準復号器バッファから取り出されるときの下限値の差に対応する値とすることが好ましい。例えば、補正情報量ΔTは、下限値が(3)式に従って求められる場合、次式により算出される。
最後に、情報量制御部35は、この充足度dij、dpj、dbjを用いて、次式により、j番目のマクロブロックに対する量子化パラメータを決定する。
なお、結合部25-1、25-2、...、25-(n-1)は、同一の構成及び機能を有するため、以下では、一つの結合部25-mについて説明する。
図7に示されるように、ビットストリームデータ701は、前側のサブビットストリームデータ702と、後側のサブビットストリームデータ703とを有する。さらにビットストリームデータ701は、それら二つのサブビットストリームデータの間に無効ビット列704を有する。このうち、前側のサブビットストリームデータ702に含まれる最後のピクチャに対応する有効データ705が標準復号器バッファから取り出されると、グラフ710に示されるように、標準復号器バッファの占有量がその有効データ705に相当する量Svだけ減少する。遷移時刻ttrにおいて、有効データ705とともに無効ビット列704も標準復号器バッファから取り出されるので、標準復号器バッファの占有量は、無効ビット列704に相当する量ΔSrだけさらに減少する。そのため、遷移時刻ttrにおける、前側のサブビットストリームデータ702に含まれる最後のピクチャに対応する有効データ705が標準復号器バッファから取り出された後の占有量は、後側のサブビットストリームデータ703による遷移時占有量Strと一致する。
また処理部12の収束目標導出部24-k(1≦k≦n-1)は、それぞれ、符号化部23-kにより生成されたサブビットストリームデータSBSkから符号化部23-(k+1)により生成されたサブビットストリームデータSBSk+1への遷移時刻における遷移時占有量及び収束目標値を算出する(ステップS102)。この遷移時占有量は、上記のように、遷移時刻においてサブビットストリームデータSBSk+1が標準復号器バッファに占める占有量である。さらに収束目標値は、遷移時刻においてサブビットストリームデータSBSkとサブビットストリームデータSBSk+1が結合されたビットストリームデータBSが標準復号器バッファに占める占有量の目標値である。収束目標導出部24-kは、遷移時占有量を結合部25-kに通知する。また収束目標導出部24-kは、収束目標値を処理部12の符号化部23-kに通知する。
そして全ての結合部がサブビットストリームデータの結合を終了することにより、動画像データが符号化されたビットストリームデータが作成される。そして処理部12は、動画像符号化処理を終了する。
なお、符号化部23-nでは、上記のステップS201において、バッファ上限・下限制御部34が、標準復号器バッファの上限値及び下限値を、それぞれ、制御部21により決定される上限値及び下限値そのものに設定する。また上記のステップS203の処理は省略される。その他の動作に関しては、符号化部23-nは、他の符号化部と同様に動作する。
Claims (8)
- それぞれ複数のピクチャを含む少なくとも第1のサブデータと第2のサブデータを含む動画像データを記憶する記憶部と、
前記動画像データを符号化することにより、当該動画像データのデータ量よりも少ないデータ量を持つビットストリームデータを生成する処理部と、
前記ビットストリームデータを出力する出力部とを有し、
前記処理部は、
前記ビットストリームデータが所定の伝送レートで仮想的な復号器に伝送され、かつ該復号器のバッファに蓄積されるとともに、所定の時間間隔で前記ビットストリームデータに含まれるそれぞれのピクチャに相当するデータが前記バッファから順次取り出されるとしたときに、前記第1のサブデータが符号化された第1のサブビットストリームデータに含まれる最後のピクチャに相当するデータが前記バッファから取り出された第1の時点において前記ビットストリームデータが前記バッファに占める第1の占有量が、該第1の時点において前記第2のサブデータが符号化された第2のサブビットストリームデータが前記バッファに占める第2の占有量以上となるように、前記第1の占有量の目標値を決定する収束目標導出機能と、
前記第1の占有量が前記目標値となるように、前記第1のサブデータに含まれるそれぞれのピクチャに対する符号化ビットの割当量を決定し、該割当量に従って前記第1のサブデータを符号化することにより、前記第1のサブビットストリームデータを生成する第1の符号化機能と、
前記第2のサブデータを符号化することにより、前記第2のサブビットストリームデータを生成する第2の符号化機能と、
前記第1のサブビットストリームデータと前記第2のサブビットストリームデータを結合することにより、前記ビットストリームデータを生成する結合機能と、
を実現する動画像符号化装置。 - 前記結合機能は、前記第1の時点における前記第1の占有量から前記第2の占有量を引いた差に相当する長さを持つビット列を前記第1のサブビットストリームデータと前記第2のサブビットストリームデータの間に挿入する、請求項1に記載の動画像符号化装置。
- 前記ビット列は、前記仮想的な復号器において前記第1のサブビットストリームデータに含まれる最後のピクチャが復号されるときに、該最後のピクチャに相当するデータとともに前記バッファから取り出され、かつ該最後のピクチャの復号に影響しない無効ビット列である、請求項2に記載の動画像符号化装置。
- 前記第1の符号化機能は、
前記第1のサブビットストリームデータに含まれる第1のピクチャに相当するデータが前記バッファから取り出されたときに、前記ビットストリームデータが前記バッファに占める占有量の下限値を、前記第1のピクチャの位置が前記第1のサブビットストリームデータの最後に近いほど前記目標値に近づくように増加させる占有量制限値決定機能と、
前記第1のピクチャが前記バッファから取り出されたときに、前記ビットストリームデータが前記バッファに占める占有量が前記下限値以上となるように、前記第1のピクチャに対する符号化ビットの割当量を決定する情報量制御機能と
を含む請求項1~3の何れか一項に記載の動画像符号化装置。 - 前記占有量制限値決定機能は、前記第1のサブビットストリームデータに含まれる第2のピクチャに相当するデータが前記仮想的なバッファに蓄積されたときに、前記ビットストリームデータが前記仮想的なバッファに占める占有量の事前に定められた上限値が前記目標値未満となる場合、該上限値を前記目標値よりも高く修正する、請求項4に記載の動画像符号化装置。
- 前記第1の符号化機能は、
前記第1のサブビットストリームデータに含まれる複数のピクチャのそれぞれについて、該ピクチャの各画素に対応する信号を直交変換することにより周波数信号を生成し、該周波数信号を、前記符号化ビットの割当量が大きくなるほど小さくなる量子化幅で前記周波数信号を量子化する量子化機能と、
前記量子化された前記周波数信号を可変長符号化することにより、前記第1のサブビットストリームデータを生成する可変長符号化機能とをさらに含み、
前記情報量制御機能は、前記第1のサブビットストリームデータに含まれる前記第1のピクチャに対する前記下限値である第1の下限値と、該第1のピクチャの一つ前に符号化されるピクチャに対する第2の下限値との差に相当する補正量を、前記第1の下限値と前記第2の下限値とが等しいときに前記第1のピクチャに対して割り当てられる符号化ビットの基本量から減らすことにより、前記第1のピクチャに対する前記符号化ビットの割当量を決定する、
請求項4または5に記載の動画像符号化装置。 - それぞれ複数のピクチャを含む少なくとも第1のサブデータと第2のサブデータを含む動画像データを符号化することにより、当該動画像データのデータ量よりも少ないデータ量を持つビットストリームデータを生成する動画像符号化方法であって、
前記ビットストリームデータが所定の伝送レートで仮想的な復号器に伝送され、かつ該復号器のバッファに蓄積されるとともに、所定の時間間隔で前記ビットストリームデータに含まれるそれぞれのピクチャに相当するデータが前記バッファから順次取り出されるとしたときに、前記第1のサブデータが符号化された第1のサブビットストリームデータに含まれる最後のピクチャに相当するデータが前記バッファから取り出された第1の時点において前記ビットストリームデータが前記バッファに占める第1の占有量が、該第1の時点において前記第2のサブデータが符号化された第2のサブビットストリームデータが前記バッファに占める第2の占有量以上となるように、前記第1の占有量の目標値を決定し、
前記第1の占有量が前記目標値となるように、前記第1のサブデータに含まれるそれぞれのピクチャに対する符号化ビットの割当量を決定し、該割当量に従って前記第1のサブデータを符号化することにより、第1のサブビットストリームデータを生成し、
前記第2のサブデータを符号化することにより、第2のサブビットストリームデータを生成し、
前記第1のサブビットストリームデータと前記第2のサブビットストリームデータを結合することにより、前記ビットストリームデータを生成する、
ことを含む動画像符号化方法。 - それぞれ複数のピクチャを含む少なくとも第1のサブデータと第2のサブデータを含む動画像データを符号化することにより、当該動画像データのデータ量よりも少ないデータ量を持つビットストリームデータをコンピュータに生成させる動画像符号化用コンピュータプログラムであって、
前記ビットストリームデータが所定の伝送レートで仮想的な復号器に伝送され、かつ該復号器のバッファに蓄積されるとともに、所定の時間間隔で前記ビットストリームデータに含まれるそれぞれのピクチャに相当するデータが前記バッファから順次取り出されるとしたときに、前記第1のサブデータが符号化された第1のサブビットストリームデータに含まれる最後のピクチャに相当するデータが前記バッファから取り出された第1の時点において前記ビットストリームデータが前記バッファに占める第1の占有量が、該第1の時点において前記第2のサブデータが符号化された第2のサブビットストリームデータが前記バッファに占める第2の占有量以上となるように、前記第1の占有量の目標値を決定し、
前記第1の占有量が前記目標値となるように、前記第1のサブデータに含まれるそれぞれのピクチャに対する符号化ビットの割当量を決定し、該割当量に従って前記第1のサブデータを符号化することにより、第1のサブビットストリームデータを生成し、
前記第2のサブデータを符号化することにより、第2のサブビットストリームデータを生成し、
前記第1のサブビットストリームデータと前記第2のサブビットストリームデータを結合することにより、前記ビットストリームデータを生成する、
ことをコンピュータに実行させる命令を含む動画像符号化用コンピュータプログラム。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011501428A JP5152402B2 (ja) | 2009-02-27 | 2009-02-27 | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム |
PCT/JP2009/053739 WO2010097946A1 (ja) | 2009-02-27 | 2009-02-27 | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム |
CN200980156661.0A CN102318345B (zh) | 2009-02-27 | 2009-02-27 | 动态图像编码装置、动态图像编码方法 |
KR1020117019839A KR101280700B1 (ko) | 2009-02-27 | 2009-02-27 | 동화상 부호화 장치, 동화상 부호화 방법 및 동화상 부호화용 컴퓨터 프로그램 |
EP09840799.2A EP2403248B1 (en) | 2009-02-27 | 2009-02-27 | Moving picture encoding device, moving picture encoding method, and moving picture encoding computer program |
US13/206,023 US9025664B2 (en) | 2009-02-27 | 2011-08-09 | Moving image encoding apparatus, moving image encoding method, and moving image encoding computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/053739 WO2010097946A1 (ja) | 2009-02-27 | 2009-02-27 | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/206,023 Continuation US9025664B2 (en) | 2009-02-27 | 2011-08-09 | Moving image encoding apparatus, moving image encoding method, and moving image encoding computer program |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010097946A1 true WO2010097946A1 (ja) | 2010-09-02 |
Family
ID=42665174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2009/053739 WO2010097946A1 (ja) | 2009-02-27 | 2009-02-27 | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US9025664B2 (ja) |
EP (1) | EP2403248B1 (ja) |
JP (1) | JP5152402B2 (ja) |
KR (1) | KR101280700B1 (ja) |
CN (1) | CN102318345B (ja) |
WO (1) | WO2010097946A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11749805B2 (en) | 2020-01-28 | 2023-09-05 | Ricoh Company, Ltd. | Liquid composition for forming electrochemical device, method of manufacturing electrodes, method of manufacturing electrochemical device and electrodes |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9973768B2 (en) * | 2010-03-16 | 2018-05-15 | Texas Instruments Incorporated | CABAC decoder with decoupled arithmetic decoding and inverse binarization |
WO2011138900A1 (ja) | 2010-05-06 | 2011-11-10 | 日本電信電話株式会社 | 映像符号化制御方法および装置 |
BR112012028184A2 (pt) * | 2010-05-07 | 2016-08-02 | Nippon Telegraph & Telephone | método de controle de codificação de vídeo, aparelho de codificação de vídeo e programa de codificação de vídeo |
CA2798354C (en) | 2010-05-12 | 2016-01-26 | Nippon Telegraph And Telephone Corporation | A video encoding bit rate control technique using a quantization statistic threshold to determine whether re-encoding of an encoding-order picture group is required |
US9888244B2 (en) * | 2011-10-05 | 2018-02-06 | Texas Instruments Incorporated | Methods and systems for encoding of multimedia pictures |
US9819964B2 (en) * | 2012-05-04 | 2017-11-14 | Environmental Systems Research Institute, Inc. | Limited error raster compression |
US9002126B2 (en) * | 2012-05-04 | 2015-04-07 | Environmental Systems Research Institute (ESRI) | Limited error raster compression |
JP6094126B2 (ja) * | 2012-10-01 | 2017-03-15 | 富士通株式会社 | 動画像復号装置 |
US20140321532A1 (en) * | 2013-04-26 | 2014-10-30 | Devadutta Ghat | Techniques for coordinating parallel video transcoding |
WO2015134825A1 (en) * | 2014-03-07 | 2015-09-11 | Sensor Electronic Technology, Inc. | Ultraviolet surface illuminator |
US9979970B2 (en) * | 2014-08-08 | 2018-05-22 | Qualcomm Incorporated | System and method for determining buffer fullness for display stream compression |
KR101650696B1 (ko) | 2015-11-06 | 2016-08-24 | 연규수 | 스포트 용접용 팁의 제조 방법 |
JP2017168878A (ja) * | 2016-03-14 | 2017-09-21 | ルネサスエレクトロニクス株式会社 | 半導体装置、符号化制御方法及びカメラ装置 |
CN107846263B (zh) * | 2017-11-01 | 2020-07-14 | 南京莱斯电子设备有限公司 | 一种基于分段计算的信源二进制算术编码方法和编码系统 |
US11509938B2 (en) * | 2019-11-05 | 2022-11-22 | Hfi Innovation Inc. | Method and apparatus of signaling subpicture information in video coding |
CN117319661B (zh) * | 2023-09-26 | 2024-04-12 | 中移凯普(北京)技术服务有限公司 | 一种用于视觉传达展示的图像传输系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001054118A (ja) * | 1999-06-01 | 2001-02-23 | Sony Corp | 符号化装置及び符号化方法並びに多重化装置及び多重化方法 |
JP2002165214A (ja) * | 1997-06-19 | 2002-06-07 | Victor Co Of Japan Ltd | 画像信号符号化方法 |
JP2004297829A (ja) | 2001-05-30 | 2004-10-21 | Victor Co Of Japan Ltd | Mpegデータ再生装置 |
JP2005136633A (ja) * | 2003-10-29 | 2005-05-26 | Sony Corp | 動画像符号化装置および動画像符号化制御方法 |
JP2006054529A (ja) * | 2004-08-10 | 2006-02-23 | Victor Co Of Japan Ltd | Mpeg画像データ記録装置及びmpeg画像データ記録方法 |
JP2008085673A (ja) | 2006-09-27 | 2008-04-10 | Toshiba Corp | 動画像符号化装置及びその方法 |
JP2008252562A (ja) | 2007-03-30 | 2008-10-16 | Renesas Technology Corp | 動画像符号化制御方法および動画像符号化装置 |
JP2009004897A (ja) * | 2007-06-19 | 2009-01-08 | Panasonic Corp | 動画像符号化装置 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8929152D0 (en) * | 1989-12-22 | 1990-02-28 | Gen Electric | A digital augmentation system for actv-ii |
CA2065979C (en) * | 1991-06-10 | 1999-01-19 | Stephen Patrick Thompson | Mode dependent minimum fifo fill level controls processor access to video memory |
GB9424429D0 (en) * | 1994-12-02 | 1995-01-18 | Philips Electronics Uk Ltd | Audio/video timing discrepancy management |
GB9424436D0 (en) * | 1994-12-02 | 1995-01-18 | Philips Electronics | Video editing buffer management |
JP3668556B2 (ja) * | 1996-06-13 | 2005-07-06 | ソニー株式会社 | ディジタル信号符号化方法 |
US5953020A (en) * | 1997-06-30 | 1999-09-14 | Ati Technologies, Inc. | Display FIFO memory management system |
KR100555164B1 (ko) * | 1997-07-25 | 2006-03-03 | 소니 가부시끼 가이샤 | 편집 장치, 편집 방법, 재부호화 장치, 재부호화 방법, 스플라이싱 장치 및 스플라이싱 방법 |
DE69838869T2 (de) * | 1997-10-03 | 2008-12-04 | Sony Corp. | Vorrichtung und Verfahren zum Spleißen von codierten Datenströmen sowie Vorrichtung und Verfahren zur Erzeugung von codierten Datenströmen |
JP4232209B2 (ja) * | 1998-01-19 | 2009-03-04 | ソニー株式会社 | 圧縮画像データの編集装置及び圧縮画像データの編集方法 |
JPH11261958A (ja) * | 1998-03-09 | 1999-09-24 | Sony Corp | 映像編集装置及び映像編集方法 |
FI106998B (fi) * | 1999-01-15 | 2001-05-15 | Nokia Mobile Phones Ltd | Bittinopeuden ohjaus multimedialaitteessa |
US6418474B1 (en) * | 1999-04-16 | 2002-07-09 | Peerless Systems Corporation | Data transfer protocol flow controller and method |
US6574193B1 (en) * | 1999-07-28 | 2003-06-03 | Veraz Networks Ltd. | Congestion control using variable rate encoding based on queue fill |
US6873654B1 (en) * | 2000-05-16 | 2005-03-29 | Redrock Semiconductor, Inc | Method and system for predictive control for live streaming video/audio media |
JP2001359153A (ja) * | 2000-06-15 | 2001-12-26 | Nec Corp | 無線通信システム、基地局及び移動局 |
GB0104785D0 (en) * | 2001-02-27 | 2001-04-18 | Pace Micro Tech Plc | MPEG decoder video in the form of cue and/or review streams of data |
EP2403263A3 (en) * | 2002-04-26 | 2012-01-25 | Sony Corporation | Encoding device and method, decoding device and method, editing device and method, recoding medium, and program |
US7940843B1 (en) * | 2002-12-16 | 2011-05-10 | Apple Inc. | Method of implementing improved rate control for a multimedia compression and encoding system |
US7830889B1 (en) * | 2003-02-06 | 2010-11-09 | Juniper Networks, Inc. | Systems for scheduling the transmission of data in a network device |
US7420919B1 (en) * | 2003-11-10 | 2008-09-02 | Cisco Technology, Inc. | Self converging communication fair rate control system and method |
JP4717452B2 (ja) * | 2005-01-31 | 2011-07-06 | ルネサスエレクトロニクス株式会社 | データ多重化装置 |
US20060265485A1 (en) * | 2005-05-17 | 2006-11-23 | Chai Sek M | Method and apparatus for controlling data transfer in a processing system |
US20070116117A1 (en) * | 2005-11-18 | 2007-05-24 | Apple Computer, Inc. | Controlling buffer states in video compression coding to enable editing and distributed encoding |
KR20070074985A (ko) * | 2006-01-11 | 2007-07-18 | 삼성전자주식회사 | 표시 장치 및 그것의 구동 방법 |
US20080059154A1 (en) * | 2006-09-01 | 2008-03-06 | Nokia Corporation | Encoding an audio signal |
JP2008066851A (ja) * | 2006-09-05 | 2008-03-21 | Sony Corp | 情報処理装置および情報処理方法、記録媒体、並びに、プログラム |
US8126475B2 (en) * | 2006-10-09 | 2012-02-28 | Motorola Mobility, Inc. | Apparatus and method for uplink scheduling on shared channels |
JP4900945B2 (ja) * | 2007-01-18 | 2012-03-21 | キヤノン株式会社 | 記録装置、及び記録方法 |
JP4773377B2 (ja) * | 2007-01-29 | 2011-09-14 | ルネサスエレクトロニクス株式会社 | 通信システム、通信装置及びフロー制御方法 |
KR100928324B1 (ko) * | 2007-10-02 | 2009-11-25 | 주식회사 아이브이넷 | 압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영방법 및 이에 적합한 디코딩 장치 |
JP5078852B2 (ja) * | 2007-12-06 | 2012-11-21 | キヤノン株式会社 | 動画像符号化装置及び動画像符号化方法 |
US9167007B2 (en) * | 2008-06-06 | 2015-10-20 | Amazon Technologies, Inc. | Stream complexity mapping |
US20100020654A1 (en) * | 2008-07-28 | 2010-01-28 | Mediatek Inc. | Method and apparatus for data buffer control of optical disc player |
US20100074111A1 (en) * | 2008-09-22 | 2010-03-25 | Krishnaprasad Vijayanand | Method of data traffic shaping, apparatus and wireless device |
US8527649B2 (en) * | 2010-03-09 | 2013-09-03 | Mobixell Networks Ltd. | Multi-stream bit rate adaptation |
-
2009
- 2009-02-27 CN CN200980156661.0A patent/CN102318345B/zh active Active
- 2009-02-27 WO PCT/JP2009/053739 patent/WO2010097946A1/ja active Application Filing
- 2009-02-27 EP EP09840799.2A patent/EP2403248B1/en active Active
- 2009-02-27 KR KR1020117019839A patent/KR101280700B1/ko active IP Right Grant
- 2009-02-27 JP JP2011501428A patent/JP5152402B2/ja not_active Expired - Fee Related
-
2011
- 2011-08-09 US US13/206,023 patent/US9025664B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002165214A (ja) * | 1997-06-19 | 2002-06-07 | Victor Co Of Japan Ltd | 画像信号符号化方法 |
JP2001054118A (ja) * | 1999-06-01 | 2001-02-23 | Sony Corp | 符号化装置及び符号化方法並びに多重化装置及び多重化方法 |
JP2004297829A (ja) | 2001-05-30 | 2004-10-21 | Victor Co Of Japan Ltd | Mpegデータ再生装置 |
JP2005136633A (ja) * | 2003-10-29 | 2005-05-26 | Sony Corp | 動画像符号化装置および動画像符号化制御方法 |
JP2006054529A (ja) * | 2004-08-10 | 2006-02-23 | Victor Co Of Japan Ltd | Mpeg画像データ記録装置及びmpeg画像データ記録方法 |
JP2008085673A (ja) | 2006-09-27 | 2008-04-10 | Toshiba Corp | 動画像符号化装置及びその方法 |
JP2008252562A (ja) | 2007-03-30 | 2008-10-16 | Renesas Technology Corp | 動画像符号化制御方法および動画像符号化装置 |
JP2009004897A (ja) * | 2007-06-19 | 2009-01-08 | Panasonic Corp | 動画像符号化装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11749805B2 (en) | 2020-01-28 | 2023-09-05 | Ricoh Company, Ltd. | Liquid composition for forming electrochemical device, method of manufacturing electrodes, method of manufacturing electrochemical device and electrodes |
Also Published As
Publication number | Publication date |
---|---|
CN102318345A (zh) | 2012-01-11 |
KR101280700B1 (ko) | 2013-07-01 |
EP2403248B1 (en) | 2018-07-04 |
EP2403248A1 (en) | 2012-01-04 |
US20110292995A1 (en) | 2011-12-01 |
JP5152402B2 (ja) | 2013-02-27 |
JPWO2010097946A1 (ja) | 2012-08-30 |
KR20110105875A (ko) | 2011-09-27 |
CN102318345B (zh) | 2014-07-30 |
EP2403248A4 (en) | 2014-11-05 |
US9025664B2 (en) | 2015-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5152402B2 (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム | |
JP5072893B2 (ja) | 画像符号化方法および画像復号化方法 | |
US7301999B2 (en) | Quantization method and system for video MPEG applications and computer program product therefor | |
JP5472105B2 (ja) | 画像処理装置及び画像処理方法 | |
US9479781B2 (en) | Motion video encoding apparatus, motion video encoding method, and motion video encoding computer program | |
KR20090108026A (ko) | 비디오 코딩 표준에 대한 개선된 비디오율 제어 | |
JP4853647B2 (ja) | 動画像変換方法、動画像変換装置、動画像変換システムおよびサーバ装置並びにプログラム | |
JP2005072742A (ja) | 符号化装置及び符号化方法 | |
KR100588795B1 (ko) | 부호화 장치 및 부호화 방법 | |
JP5708490B2 (ja) | 動画像符号化装置、動画像符号化方法および動画像符号化プログラム | |
JP2004523985A (ja) | ビデオ符号化方法及びこれに対応する符号化装置 | |
JP5136470B2 (ja) | 動画像符号化装置及び動画像符号化方法 | |
JP2007235989A (ja) | 画像処理装置および画像処理方法、プログラム、並びに、記録媒体 | |
JP3889552B2 (ja) | 符号量割り当て装置および方法 | |
JP4193080B2 (ja) | 符号化装置及び方法 | |
JP2009246489A (ja) | 映像信号切替装置 | |
JP4844595B2 (ja) | 階層符号化装置、非階層符号化変換装置、階層符号化プログラム、および非階層符号化変換プログラム | |
JP4035747B2 (ja) | 符号化装置および符号化方法 | |
JP6874844B2 (ja) | 動画像符号化装置、動画像符号化方法、及び、動画像符号化プログラム | |
JP4539028B2 (ja) | 画像処理装置および画像処理方法、記録媒体、並びに、プログラム | |
JP4390009B2 (ja) | 符号化装置及び方法、画像処理システム | |
KR20010060591A (ko) | 동영상 부호화기의 비트율 제어장치 | |
JP2002330441A (ja) | 符号化方法、符号化方法のプログラム、符号化方法のプログラムを記録した記録媒体及び符号化装置 | |
JP2004312087A (ja) | 動画像符号化装置 | |
JP2001145108A (ja) | 画像情報変換装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200980156661.0 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09840799 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2011501428 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2009840799 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 20117019839 Country of ref document: KR Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |