WO2005025226A1 - 映像符号化装置、映像符号化制御方法及び映像符号化制御プログラム - Google Patents

映像符号化装置、映像符号化制御方法及び映像符号化制御プログラム Download PDF

Info

Publication number
WO2005025226A1
WO2005025226A1 PCT/JP2004/013083 JP2004013083W WO2005025226A1 WO 2005025226 A1 WO2005025226 A1 WO 2005025226A1 JP 2004013083 W JP2004013083 W JP 2004013083W WO 2005025226 A1 WO2005025226 A1 WO 2005025226A1
Authority
WO
WIPO (PCT)
Prior art keywords
encoding
processing
frame
video
time
Prior art date
Application number
PCT/JP2004/013083
Other languages
English (en)
French (fr)
Inventor
Ikuo Tsukagoshi
Shinji Takada
Koichi Goto
Original Assignee
Sony Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corporation filed Critical Sony Corporation
Priority to KR1020067004232A priority Critical patent/KR101121613B1/ko
Priority to US10/569,886 priority patent/US8665966B2/en
Priority to EP04772897A priority patent/EP1662794A4/en
Priority to CN200480028220XA priority patent/CN1860792B/zh
Publication of WO2005025226A1 publication Critical patent/WO2005025226A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field

Definitions

  • Video coding apparatus video coding control method, and video coding control program
  • the present invention relates to a video encoding device, a video encoding control method, and a video encoding control program, and is suitably applied to a video encoding device that performs software encoding.
  • Such a software codec is different from the hardware codec described above, and only by changing the video processing program, it has become an international standard such as MPEG (Moving Picture Eperts Group) 1/2/4 and JPEG 2000. There is an advantage that it can easily cope with the compression encoding method or various other compression encoding methods. Also, even if a new compression encoding method is developed, the latest compression encoding method can be easily supported simply by updating the video processing program accordingly.
  • Patent Document 1 JP-A-2003-61097 In software encoding, the CPU alternately processes video encoding (video encoding thread or process) and audio encoding (audio encoding thread or process) in a time-division manner. Since the delay or loss of speech is easily perceived by the user, it is common that the speech coding thread is processed preferentially. For example, during one frame period (130 seconds), one frame of audio is processed first, and then one frame of image is processed. ⁇
  • FIG. 8 shows the processing state of software encoding.
  • Video data and audio data input from the outside are temporarily stored in the video input buffer and the audio input buffer, respectively.
  • the CPU first executes a speech coding thread, reads out one frame of speech data from a speech input buffer, compresses and encodes the data, and outputs the data.
  • the CPU executes a video encoding thread, reads one frame of video data from the video input buffer, compresses and encodes the data, and outputs the data.
  • the CPU sequentially encodes video data and audio data in a time-division manner for each frame period.
  • the processing time of audio compression encoding does not change much, whereas the compression encoding of video depends on the complexity (picture, motion, etc.) of the input video to be encoded. Accordingly, the processing time varies greatly.
  • the processing time is short for images with relatively flat portions and few movements, such as the sky and walls, while the pattern is complicated and fast-moving, such as for sports broadcasting, and panning and moving at an appropriate speed.
  • Processing time increases for a video that is zoomed. This increase in processing time may make it impossible to complete the encoding process within one frame period
  • this frame period is a period in which the (N + 1) th frame should be processed originally.However, since the overrunning frame has been processed, it is possible to process the (N + 1) th frame. Can not. Therefore, the CPU skips the encoding process on the N + 1st frame and performs the encoding process on the next N + 2nd frame.
  • the present invention has been made in view of the above points, and has a simple configuration, a video coding apparatus, a video coding control method, and a video coding method capable of avoiding deterioration of video display quality due to overrun of video coding processing.
  • This is to propose an encoding control program.
  • encoding means for encoding a video by a first encoding method for each frame, and an actual encoding processing time required for encoding the frame are detected.
  • Processing time detecting means for calculating a processing delay time of a frame coding process based on a predetermined coding expected processing time and a coding actual processing time given to the coding process;
  • the processing delay time is equal to or greater than a predetermined threshold value
  • the load control means is provided in the video encoding device.
  • a second encoding processing method is performed on the next frame of the plurality of continuous frames.
  • the encoding processing is performed by the third encoding processing method that has a lower encoding processing load than that.
  • the overrun value is large and the overrun cannot be recovered in one frame, the overrun is reliably recovered in several frames by further reducing the encoding processing load of subsequent frames. be able to.
  • the processing time of a frame after an overrun occurs is shortened by controlling the encoding load of the next frame to be reduced according to the occurrence of a delay in the video encoding process.
  • FIG. 1 is a block diagram showing an overall configuration of a signal processing device according to the present invention.
  • FIG. 2 is a block diagram showing a system diagram of the signal processing device.
  • FIG. 3 is a timing chart for explaining overrun recovery according to the present invention.
  • FIG. 4 is a block diagram showing a processing diagram of normal linking.
  • FIG. 5 is a block diagram showing a processing diagram of the recovery encoding mode 1.
  • FIG. 6 is a block diagram showing the processing diagram for recovery encoding mode 2.
  • FIG. 7 is a flowchart showing an overrun recovery procedure according to the present invention.
  • FIG. 8 is a timing chart for explaining frame skipping due to overrun.
  • reference numeral 1 denotes a signal processing device as a video encoding device according to the present invention as a whole, and a CPU 2 for controlling the signal processing device 1 is provided with a low-level memory 3 and a signal input / output unit 4. And the network interface 5 are connected. CPU 2 and local memory 3 are directly connected by a high-speed local path.
  • the CPU 2 reads and executes a codec program stored in a ROM (not shown) so that encoding and decoding of video and audio signals are processed by software. ing.
  • the signal processing device 1 converts an analog video signal and an analog audio signal input from the outside into an A / D (An a 1 og / D igita 1) converter of the signal input / output unit 4 at the time of video and audio encoding. Digital conversion is performed at 4 A to generate digital video data and digital audio data (hereinafter abbreviated as video data and audio data), which are temporarily stored in the local memory 3.
  • the CPU 2 sequentially reads the video data and the audio data stored in the local memory 3 and, according to the codec program described above, for example, an internationally standardized compression method such as MPEG 1, 2/4, or various other methods. Compression encoding is performed by the video / audio compression method to generate encoded video data and encoded audio data.
  • an internationally standardized compression method such as MPEG 1, 2/4, or various other methods.
  • Compression encoding is performed by the video / audio compression method to generate encoded video data and encoded audio data.
  • the network interface 5 packetizes (buckets) the encoded video data and the encoded audio data according to a predetermined format, and sends them to an external storage medium or a destination device.
  • the signal processing device 1 restores the bucket of coded video data and coded audio data supplied from the external storage medium or the transmission source device by the network interface 5 ( (De-bucketizing) and temporarily store it in local memory 3.
  • the CPU 2 as an encoding means sequentially reads out the compressed video data and the compressed audio data stored in the local memory 3 and decodes them according to the above codec program to generate video data and audio data.
  • the CPU 2 stores the video data and the audio data in the local memory 3, sequentially reads them out, and supplies them to the signal input / output unit 4.
  • the DZA (Digital / Ana1og) converter 4B of the signal input / output unit 4 converts the video data and the audio data into analog to generate an analog video signal and an analog audio signal, and outputs these to the outside.
  • the signal processing device 1 executes the encoding process and the decoding process on the video signal and the audio signal by the software deck.
  • the video data and audio data supplied from the A / D converter 4 A (Fig. 1) of the signal input / output unit 4 are stored in the video input buffer 3 A and audio input buffer 3 B of the local memory 3, respectively. Is done.
  • the video input buffer controller 10 A of the codec program executed by the CPU 2 constantly monitors the video input buffer 3 A, and has a size of two frames. 1 frame in input buffer 3 A
  • a start command is sent to the video encoding thread 11A of the codec program, and one frame of video data is sent from the video input buffer 3A. Transfer the data to video coding thread 11A.
  • the video encoding thread 11A reads one frame of video data from the video input buffer 3A in response to a start command supplied from the video input buffer controller 1OA, compresses and encodes this, and compresses and encodes it. And outputs a feedback message to the video input buffer controller 10A as an end sign to end the thread.
  • the audio input buffer controller 10 B of the code program constantly monitors the audio input buffer 3 B, and when one frame of audio data is accumulated in the audio input buffer 3 B. In response to this, a start command is sent to the audio encoding thread 11B of the codec program, and one frame of audio data is transferred from the audio input buffer 3B to the audio encoding thread 11B. Let it.
  • the audio encoding thread 11 B reads out one frame of audio data from the audio input buffer 3 B in response to a start command supplied from the audio input buffer controller 10 B, compresses and encodes the data, and encodes the data into the local memory.
  • the audio stream is output to the audio stream output buffer 3D, and a feedback message as an end sign is returned to the audio input buffer controller 10B to terminate the thread.
  • the audio encoding thread 11B is processed in preference to the video encoding thread 11A.
  • the bucketizer 5A of the network interface 5 reads out the encoded video data and the encoded audio data from the video stream output buffer 3C and the audio stream output buffer 3D, and outputs them as a bucket.
  • the de-bucketizer 5B of the network interface 5 restores the encoded video data and the encoded audio data from the bucket supplied from the outside, and the video stream input buffer 3E and the audio stream of the local memory 3. Store in input buffer 3F.
  • the video stream input buffer controller 10 C of the codec program executed by the CPU 2 constantly monitors the video stream input buffer 3 E, and encodes one access unit in the video stream input buffer 3 E.
  • a start command is sent to the video decoding thread 12 A of the codec program executed by the CPU 2 in response to this, and one access is made from the video stream input buffer 3 E.
  • Unit of encoded video data is transferred to video decoding thread 12A.
  • the video decoding thread 12A reads the coded video data for one access unit from the video stream input buffer 3E according to the start command supplied from the video stream input buffer controller 10C, and decodes it. Output to the video output buffer 3 G of the local memory 3 and return a feedback message as an end sign to the video stream input buffer controller 10 C to end the thread.
  • the audio stream input buffer controller 10D of the codec program constantly monitors the audio stream input buffer 3F, and the audio stream input buffer 3F stores encoded audio data for one access unit.
  • a start command is sent to the audio decoding thread 12 B of the codec program, and one access unit from the audio stream input buffer 3 F is sent.
  • the encoded audio data is transferred to the audio decoding thread 12B.
  • the audio decoding thread 12B reads the encoded audio data for one access unit from the audio stream input buffer 3F in response to the start command supplied from the audio stream input buffer controller 10D, and This is decoded and output to the audio output buffer 3H of the local memory 3, and a feedback message as an end sign is returned to the audio stream input buffer controller 1 OD to terminate the thread.
  • the signal processing apparatus 1 executes the audio encoding thread and the video encoding thread alternately for one frame during one frame period while giving priority to the audio encoding thread during encoding. Encoding processing.
  • the CPU 2 as the processing time detecting means acquires time information at the start timing and the end timing of the video coding thread from a system time clock (not shown), and obtains one frame from the time difference between the start timing and the end timing.
  • the actual encoding processing time per system is calculated.
  • CPU 2 as a delay calculating means calculates a processing delay time by subtracting a predicted coding expected processing time from the actual coding processing time.
  • CPU 2 ⁇ as the encoding load control means executes overrun recovery assuming that overrun has occurred.
  • the CPU 2 interrupts the encoding process for the N-th frame in which the overrun has occurred, and encodes the audio data corresponding to the (N + 1) -th frame in the next frame period, as in the past.
  • the coding of the Nth frame is completed by restarting the coding of the image data. .
  • the CPU 2 immediately starts the encoding process for the (N + 1) -th frame.
  • the CPU 2 as the coding load control means applies a coding processing method with a lower processing load than the normal coding processing to the N + 1st frame.
  • This encoding processing method with a lower load than usual is called Ricaparian coding mode 1.
  • the normal encoding processing method is called normal coding.
  • Figures 4 and 5 show the processing diagram of normal encoding and recovery encoding mode 1.In this recovery capping mode 1, the CPU 2 determines the search range of the motion vector in predictive coding. By narrowing it, the processing cycle of motion vector search is reduced and the processing load is reduced, thereby shortening the encoding processing time per frame.
  • the processing time was shortened by applying the recovery encoding mode 1
  • the encoding of the (N + 1) th frame was not completed within one frame period. If it cannot be recovered, the CPU 2 temporarily suspends the encoding for the (N + 1) th frame, and in the next frame period, first encodes the audio data corresponding to the (N + 1) th frame, N + Resume encoding of video data of the first frame.
  • the CPU 2 starts the encoding process for the next N + 1-th frame.
  • the CPU 2 as the coding load control means A coding method with a lower processing load than coding mode 1 is applied. This encoding method is called recovery encoding mode 2.
  • the CPU 2 stops a series of return processing systems of frame reproduction by inverse quantization, inverse transform coding, and motion compensation as shown in the processing diagram shown in FIG.
  • This return processing system reconstructs the reference frame in the frame memory in order to predict the next frame.
  • the CPU 2 stops the return processing system in the recovery coding mode 2 to further reduce the encoding processing time as compared with the keyed 1.
  • the CPU 2 encodes the next frame as an I picture (intra-coded picture) for which no motion prediction is performed, and sets GO P ( G roup Of Picture) is reconstructed.
  • the CPU 2 of the signal processing device 1 enters from the start step of the routine RT1 and moves to the next step SP1.
  • step SP1 the CPU 2 determines the encoding thread end timing for the immediately preceding video frame and the encoding thread start timing for the current video frame from the OS (Operating System) or hardware. Obtain directly and memorize each. And CPU 2 has already memorized, By calculating the difference between the start time and end time of the previous frame, the processing delay time TN required for encoding the immediately preceding frame is calculated, and the TN is added to the overrun cumulative processing time, and the SP 2 Move on to Here, the accumulated processing delay time is set to “0” at the start of the processing.
  • OS Operating System
  • step SP2 the CPU 2 determines whether or not an overrun has occurred based on the calculated cumulative processing delay time and the value of the overrun counter.
  • step SP2 if the value obtained by dividing the accumulated processing delay time by the overrun counter value is smaller than the target time TGT (TarGetTime) given as a video coding thread at system startup, This indicates that no overrun has occurred.At this time, the CPU 2 moves to step SP3, encodes this frame by normal encoding, resets the accumulated processing delay time to "0 J, and simultaneously sets the overrun counter. Reset to "1" and return to step SP 1.
  • TGT TargetTime
  • step SP2 a target time TGT (Tar G et Time) in which a value obtained by dividing the accumulated processing delay time by the overrun force center value is given as a video coding thread at system startup. If it is greater than this, this indicates that an overrun has occurred, and at this time, the CPU 2 proceeds to step SP 4 and sets the value of the overrun counter for counting the number of frames in which the overrun has occurred. Is added to “1” and the process proceeds to next step SP5.
  • TGT Tor G et Time
  • step SP5 the CPU 2 determines the number of overrun frames based on the count value of the overrun counter.
  • step SP 5 If it is determined in step SP 5 that the number of overrun frames is one, the CPU 2 proceeds to step SP 6 and executes encoding by applying the recovery encoding mode 1 to the next frame. Return to step SP 1.
  • step SP 5 determines whether the number of overrun frames is one. If it is determined in step SP 5 that the number of overrun frames is not one, the CPU 2 moves to step SP 7 and applies recovery encoding mode 2 to the next frame to perform encoding. Run and then the next file Specify encoding in the I picture for the frame, reconstruct the GOP, and return to step SP1.
  • the signal processing device 1 executes the audio encoding thread and the video encoding thread alternately for one frame in one frame period while giving priority to the audio encoding thread.
  • the signal processing device 1 detects that an overrun has occurred in the video encoding thread, the signal processing device 1 immediately follows the frame in which the overrun has occurred and then immediately follows the next frame. Start encoding the frame.
  • the signal processing device 1 applies the recovery encoding mode 1 with a light processing load to the next frame to shorten the encoding processing time per frame and recover the overrun. .
  • the signal processing device 1 further applies the recovery encoding mode with a lighter processing load to the next frame.
  • the overrun can be reliably recovered within a finite frame period (for example, within 3 frame periods) from the occurrence of overrun without causing frame skip due to overrun. .
  • the signal processing device 1 can avoid frame skipping due to overrun in this way, so that the processing capacity and operation clock of the CPU 2 and peripheral devices can be reduced, and the overall system configuration and power consumption can be reduced. According to the above configuration, the signal processing device 1 reduces the encoding processing load on the subsequent frames in response to the occurrence of the overrun, thereby reducing the display quality of the video due to frame skipping. Can be avoided.
  • mode 1 in which the search range of the motion vector is narrowed
  • mode 2 in which reference frame reconstruction processing for inter-frame prediction is omitted.
  • the present invention is not limited to this, and various other encoding processes with reduced processing loads may be used in combination.
  • the present invention is not limited to this, and only the encoding function is used.
  • the present invention may be applied to a signal encoding device having only a decoding function.
  • the video encoding device, the video encoding control method, and the video encoding control program of the present invention include, for example, a method of digitizing a digitalized content or an analog video signal, and then compressing and encoding the video or the video via the Internet.
  • the present invention can be applied to recording and playback devices such as real-time distribution or reception, real-time distribution and reception at home or in a limited network environment, and time shifting (PVR: Personal Video Recoding).

Abstract

本発明は、簡易な構成で、映像符号化処理のオーバーランによる映像の表示品質劣化を回避し得る映像符号化装置を実現する。映像をフレーム毎に第1の符号化処理する符号化手段と、フレームの符号化処理に要した符号化実処理時間を検出する処理時間検出手段と、符号化処理に与えられる符号化予想処理時間と符号化実処理時間とに基づいてフレームの符号化処理の処理遅延時間を算出する遅延算出手段と、フレームについての処理遅延時間が所定の閾値以上のとき、第1の符号化処理方法よりも処理負荷の低い第2の符号化処理方法で次のフレームを符号化処理さえる符号化負荷制御手段とを映像符号化装置に設けたことにより、オーバーラン発生後のフレームの処理時間を短縮してオーバーランを回復し、オーバーラン発生によるフレームスキップを防止して映像の表示品質劣化を回避することができる。

Description

明 細 書 映像符号化装置、 映像符号化制御方法及び映像符号化制御プログラム 技術分野
本発明は、 映像符号化装置、 映像符号化制御方法及び映像符号化制御プロダラ ムに関し、 ソフトウエア符号化を行う映像符号化装置に適用して好適なものであ る。 背景技術
従来、 映像信号の圧縮符号化 ·復号装置においては、 専用の映像処理用ハード ウェアを用いて符号化処理 (エンコーディング) ゃ復号処理 (コーディング) を 行っていた。 これをハードウェアコーデックと呼ぶ (例えば、 特許文献 1参照) これに対して、 近年のコンピュータ技術の発達に伴い、 汎用の CPU ( C e n t r a l P r o c e s s i n g Un i t) 上で映像処理プログラムを 実行することにより、 上述した符号化処理ゃ復号処理を行うこと (これをソブト ウェアコーデックと呼ぶ) が実用化されている。
かかるソフトウェアコーデックにおいては、 上述したハードウヱアコ一デック とは異なり、 映像処理プログラムを変更するだけで、 MP EG (Mo v i n g P i c t u r e E p e r t s G r o u p) 1 / 2 / 4や J P E G 2000 等の国際標準化された圧縮符号化方式、 あるいはその他の種々の圧縮符号化方法 に容易に対応できるという利点がある。 また、 新たな圧縮符号化方法が開発され た場合でも、 これに応じて映像処理プログラムを更新するだけで、 容易に最新の 圧縮符号化方法に対応することができる。 特許文献 1 特開 200 3— 6 1 097公報。 ソフトウェアエンコーディングにおいては、 C P Uは映像の符号化処理 (映像 符号化スレッ ドないしはプロセス) と音声の符号化処理 (音声符号化スレッ ドな いしはプロセス) とを時分割で交互に処理していく。 音声はその遅延や欠落がュ 一ザに感知されやすいため、 音声符号化スレツ ドが優先的に処理されることが一 般的である。 例えば 1フレーム期間 (1 3 0秒) の間に、 まず 1フレーム分の 音声を処理し、 その後に画像 1フレームを処理する。 ·
図 8はソフトウエアェンコ一ディングの処理状態を示し、 外部から入力された 映像データ及ぴ音声データは、 それぞれ一旦映像入カバッファ及ぴ音声入カバッ ファに格納される。' C P Uは、 まず音声符号化スレッ ドを実行し、 音声入力バッ ファから 1フレーム分の音声データを読み出して圧縮符号化した後出'力する。 続 いて C P Uは映像符号化スレツドを実行し、 映像入力バッファから映像データを 1フレーム読み出して圧縮符号化した後出力する。 このようにして C P Uは、 映 像データ及ぴ音声データを 1フレーム期間毎に時分割で順次符号化していく。 ここで、 音声の圧縮符号化処理においては、 その処理時間があまり変化しない のに対し、 映像の圧縮符号化処理においては、 符号化しょうとする入力映像の複 雑度 (絵柄や動き等) に応じて、 その処理時間が大幅に変化する。
例えば、 空や壁面等の、 比較的平坦な部分が多ぐ動きの少ない映像では処理時 間が短いのに対し、 スポーツ中継等の、 絵柄が複雑で動きが速く、 しかも適度な 速度でパンやズームを行うような映像では、 処理時間が増大する。 この処理時間 の増大によって、 1フレーム期間内に符号化処理を完了できなくなる場合がある
。 このような処理遅延をオーバーランと呼ぶ。
すなわち図 8において、 N番目のフレームが極端に複雑で、 1フレーム期間内 に符号化が完了しなかったものとする (オーバーランの発生) 。 この場合 C P U は、 オーバーランを生じた N番目のフレームに対する符号化処理の完了が、 N + 1番目のフレームを符号化すべきタイミングにまで食い込んでしまう。 尚、 ビデ ォ、 オーディォの各符号化スレッドの切換えは、 通常、 O S ( O p e r a t— i n g S y s t e m) によもコンテクスト ·スィツチにより行われる。
ここでこのフレーム期間は、 本来は N + 1番目のフレームを処理すべき期間で あるが、 オーバーランを生じたフレームを処理したがために、 N + 1番目のフレ ームを処理することができない。 このため C P Uは、 当該 N + 1番目のフレーム に対する符号化処理をスキップし、 次の N + 2番目のフレームから符号化処理を 行う。
このように従来のソフトウエアェンコ一ディングにおいては、 画像符号化処理 においてオーバーランが発生した場合、 次のフレームに対する符号化をスキップ するようになされている。 しかしながら、 このようなフレームスキップが発生す ると、 表示される映像がコマ送り状態となり、 映像の表示品質が損なわれる'とい う問題がある。
かかるオーバーランを回避するために'は、 複数の C P Uを並列動作さ^:たり、 C P Uの動作クロックを上昇する等が考えられるが、 これにより装置全体が複雑 化したり、 消費電力が上昇してしまうという問題がある。 発明の開示
本発明は以上の点を考慮してなされたもので、 簡易な構成で、 映像符号化処理 のオーバーランによる映像の表示品質劣化を回避し得る映像符号化装置、 映像符 号化制御方法及び映像符号化制御プログラムを提案しようとするものである。 かかる課題を解 ¾するため本発明においては、 映像をフレーム毎に第 1の符号 化処理方法で符号化処理する符号化手段と、 フレームの符号化処理に要した符号 化実処理時間を検出する処理時間検出手段と、 符号化処理に与えられる所定の符 号化予想処理時間と符号化実処理時間とに基づいてフレームの符号化処理の処理 遅延時間を算出する遅延算出手段と、 フレームについての処理遅延時間が所定の 閾値以上のとき、 第 1の符号化処理方法より符号化処理負荷の低い第 2の符号化 処理方法で次のフレームを符号化処理するよう符号化手段に指示する符号化負荷 制御手段とを映像符号化装置に設けるようにする。 符号化処理の遅延発生に応じて、 次フレームの符号化負荷が低減するように制 御することにより、 オーバーラン発生後のフレームの処理時間を短縮してオーバ 一ランを回復し、 オーバーラン発生によるフレームスキップを防止して映像の表 示品質劣化を回避することができる。
また本発明においては、 連続する複数のフレームについての処理遅延時間の累 積値が所定の閾値以上のとき、 当該連続する複数のフレームの次のフレームに対 して、 第 2の符号化処理方法よりも符号化処理負荷の低い第 3の符号化処理方法 で符号化処理するようにした。
オーバーランの値が大きく、 1フレームでは当該オーバーランを回復し得なか つた場合でも、 以降のフレームの符号化処理負荷をさらに低減することで、 数フ レームの間に確実にオーバーランを回復することができる。
上述のように本発明によれば、 映像符号化処理の遅延発生に応じて、 次フレー ムの符号化負荷が低減するように制御することにより、 オーバーラン発生後のフ レームの処理時間を短縮してオーバーランを回復し、 オーバーラン ¾生によるフ レームスキップを防止して映像の表示品質劣化を回避し得る映像符号化装置、 映 像符号化制御方法並びに映像符号化制御プログラムを実現することができる。 図面の簡単な説明
図 1は、 本発明による信号処理装置の全体構成を示すプロック図である。 図 2は、 信号処理装置のシステムダイアグラムを示すプロック図である。 図 3は、 本発明によるオーバーランリカバリの説明に供するタイミングチヤ一 トである。
図 4は、 ノーマルェンコ一ディングの処理ダイヤグラムを示すブロック図であ る。
図 5は、 リカバリェンコーディングモード 1の処理ダイヤグラムを示すブロッ ク図である。
図 6は、 リカバリエンコーディングモード 2の処理ダイヤグラムを示すブロッ ク図である。
図 7は、 本発明によるオーバーランリカパリ処理手順を示すフローチャートで ある。
図 8は、 オーバーランによるフレームスキップの説明に供するタイミングチヤ 一トである。 発明を実施するための最良の形態
以下、 図面について、 本発明の,実施の形態を詳述する。
(1) 信号処理装置の全体構成
図 1において、 1は全体として本発明による映像符号化装置としての信号処理 装置を示し、 当該信号処理装置 1を統括的に制御する CPU 2に対して、 ロー力 ルメモリ 3、 信号入出力部 4及びネットワークインターフェース 5が接続されて いる。 CPU 2とローカルメモリ 3の間は、 高速のローカルパスで直結されてい る。
そして信号処理装置 1においては、 図示しない ROMに格納されたコーデック プログラムを CPU 2が読み出して実行することにより、 映像及び音声信号に対 する符号化及ぴ復号をソフトウエアで処理するように'なされている。
すなわち信号処理装置 1は映像及び音声の符号化時において、 外部から入力さ れたアナログ映像信号及びアナログ音声信号を、 信号入出力部 4の A/D ( An a 1 o g/D i g i t a 1 ) コンパータ 4 Aでディジタル変換してディジタ ル映像データ及びディジタル音声データ (以下、 映像データ及び音声データと省 略する) を生成し、 これを一旦ローカルメモリ 3に格納する。
CPU 2は、 ローカルメモリ 3に格納した映像データ及ぴ音声データを順次読 み出し、 上述したコーデックプログラムに従って、 例えば MP EG 1,2/4等 の国際標準化された圧縮方式、 あるいはその他の種々の映像音声圧縮方式で圧縮 符号化して符号化映像データ及ぴ符号化音声データを生成する。
そして CPU 2は、 この符号化映像データ及び符号化音声データを一旦ロー力 ルメモリ 3に格納した後順次読み出し、 ネットワークインタ一フェース 5に供給 する。 ネットワークインターフェース 5は、 符号化映像データ及び符号化音声デ —タを所定のフォーマットに従ってパケット化 (バケツタイズ) 'し、 これを外部 の記憶媒体や伝送先の機器に送出する。
一方、 信号処理装置 1は映像及び音声の復号時において、 外部の記憶媒体や伝 送元の機器から供給される、 バケツト化された符号化映像データ及び符号化音声 データをネットワークインターフェース 5で復元 (デバケツタイズ) し、 これを 一旦ローカルメモリ 3に格納する。
符号化手段としての C P U 2は、 ローカルメモリ 3に格納した圧縮映像データ 及び圧縮音声データを順次読み出し、 上述したコーデックプログラムに従って復 号して映像データ及ぴ音声データを生成する。
そして C P U 2は、 この映像データ及び音声データをー且ローカルメモリ 3に 格納した後順次読み出し、 信号入出力部 4に供給する。 信号入出力部 4の DZA (D i g i t a l /A n a 1 o g ) コンバータ 4 Bは映像データ及ぴ音声データ をアナログ変換してアナログ映像信号及びアナログ音声信号を生成し、 これらを' 外部に出力する。 '
かくして信号処理装置 1は、 ソフトウヱアコ一デックによって映像信号及び音 声信号に対する符号化処理及び復号処理を実行する。
次に、 上述した信号処理装置 1におけるソフトウヱアコ一デックによる映像信 号及び音声信号に対する符号化処理及び復号処理を、 図 2に示すシステムダイァ グラムを用いて詳細に説明する。
符号化時において、 信号入出力部 4の A/Dコンバータ 4 A (図 1 ) から供給 された映像データ及び音声データは、 ローカルメモリ 3のビデオ入力バッファ 3 A及びオーディオ入力バッファ 3 Bにそれぞれ格納される。
図 2において、. C P U 2によつて実行されるコーデックプログラムのうちのビ デォ入力バッファコントローラ 1 0 Aは、 ビデオ入力バッファ 3 Aを常に監視し ており、 2フレーム分のサイズをもつ当該ビデオ入力バッファ 3 Aに 1フレーム 分の映像データが蓄積されると、 これに応じて、 コーデックプログラムのうちの ビデオ符号化スレツド 1 1 Aに対してスタートコマンドを送出するとともに、 ビ デォ入力バッファ 3 Aから 1フレーム分の映像データをビデオ符号化スレツド 1 1 Aに転送させる。
ビデオ符号化スレッ ド 1 1 Aは、 ビデオ入力パッファコントローラ 1 O Aから 供給されるスタートコマンドに応じて、 ビデオ入力バッファ 3 Aから 1フレーム 分の映像データを読み出し、 これを圧縮符号化してローカルメモリ 3のビデオス トリーム出力バッファ 3 Cに出力するとともに、 ビデオ入力バッファコントロー ラ 1 0 Aに対して終了サインとしてのフィードバックメッセージを返送してスレ ッドを終了する。
同様に、 コー^ックプログラムのうちのオーディォ入力バッファコントローラ 1 0 Bは、 オーディオ入力バッファ 3 Bを常に監視しており、 当該オーディォ入 '力バッファ 3 Bに 1フレーム分の音声データが蓄積されると、 これに応じてコー デックプログラムのうちのオーディオ符号化スレツ ド 1 1 Bにスタートコマンド を送出するとともに、 オーディオ入力バッファ 3 Bから 1フレーム分の音声デー タをオーディオ符号化スレツド 1 1 Bに転送させる。
オーディオ符号化スレツド 1 1 Bは、 オーディオ入力バッファコントローラ 1 0 Bから供給されるスタートコマンドに応じて、 オーディオ入力バッファ 3 Bか ら 1フレーム分の音声データを読み出し、 これを圧縮符号化してローカルメモリ 3のオーディオストリーム出力バッファ 3 Dに出力するとともに、 オーディオ入 力バッファコントローラ 1 0 Bに対して終了サインとしてのフィードバックメッ セージを返送してスレツドを終了する。 ―
ここで、 オーディオ符号化スレッ ド 1 1 Bはビデオ符号化スレッ ド 1 1 Aより も優先して処理される。
そして、 ネットワークインターフェース 5のバケツタイザ 5 Aは、 ビデオス ト リーム出力バッファ 3 C及びオーディォストリーム出力バッファ 3 Dから符号化 映像データ及び符号化音声データを読み出してバケツト化し出力する。 一方、 復号時において、 ネットワークインターフェース 5のデバケツタイザ 5 Bは、 外部から供給されるバケツトから符号化映像データ及び符号化音声データ を復元して、 ローカルメモリ 3のビデオストリーム入力バッファ 3 E及びオーデ ィォス トリーム入力バッファ 3 Fに格納する。
C P U 2によって実行されるコーデックプログラムのうちのビデオストリーム 入力バッファコントローラ 1 0 Cは、 ビデオストリーム入力バッファ 3 Eを常に 監視しており、 当該ビデオストリーム入力バッファ 3 Eに 1アクセスュニット分 の符号化映像データが蓄積されると、 これに応じて、 C P U 2によって実行され るコーデックプログラムのうちのビデオ復号スレツド 1 2 Aに対してスタートコ マンドを送出するとともに、 ビデオストリーム入力バッファ 3 Eから 1アクセス ュニット分の符号化映像データをビデオ復号スレツド 1 2 Aに転送させる。
ビデオ復号スレツド 1 2 Aは、 ビデオストリーム入力バッファコントローラ 1 0 Cから供給されるスタートコマンドに応じて、 ビデオストリーム入力バッファ 3 Eから 1アクセスュニット分の符号化映像データを読み出し、 これを復号して ローカルメモリ 3のビデオ出力バッファ 3 Gに出力するとともに、 ビデオストリ ーム入力バッファコントローラ 1 0 Cに対して終了サインとしてのフィードバッ クメッセージを返送してスレツドを終了する。
同様に、 コーデックプログラムのうちのオーディオストリーム入力バッファコ ントローラ 1 0 Dはオーディオス トリーム入力バッファ 3 Fを常に監視しており 、 当該オーディォストリーム入力バッファ 3 Fに 1アクセスュニット分の符号化 音声データが蓄積されると、 これに応じて, コーデックプログラムのうちのォー ディォ復号スレツド 1 2 Bに対してスタートコマンドを送出するとともに、 ォー ディォストリーム入力バッファ 3 Fから 1アクセスュニット分の符号化音声デー タをオーディオ復号スレッ ド 1 2 Bに転送させる。
オーディオ復号スレツド 1 2 Bは、 オーディォストリーム入力バッファコント ローラ 1 0 Dから供給されるスタートコマンドに応じて、 オーディオストリーム 入力バッファ 3 Fから 1アクセスュニット分の符号化音声データを読み出し、 こ れを復号してローカルメモリ 3のオーディオ出力バッファ 3 Hに出力するととも に、 オーディオストリーム入力バッファコントローラ 1 O Dに対して終了サイン としてのフィードバックメッセージを返送してスレツドを終了する。
( 2 ) 本発明によるオーバーランリカバリ ,
上述したようにこの信号処理装置 1では、 符号化時において、 オーディオ符号 化スレツドを優先しながら、 1フレーム期間にオーディオ符号化スレツド及ぴビ デォ符号化スレツドを交互にそれぞれ 1フレーム分実行して符号化処理を行うよ うに されている。
これに加えてこの信号処理装置 1では、 映像符号化処理において符号化遅延 ( オーバーラン) が発生した場合、 スレッ ド実行順序の変更や映像符号化処理の負 荷を低減することにより、 符号化スキップを行うことなくオーバーランを回復 ( 以下、 これをオーバーランリ力パリと呼ぶ) するようになされている。
すなわち処理時間検出手段としての C P U 2は、 映像符号化スレツドの開始タ ィミング及び終了タイミングにおける時間情報をシステムタイムクロック (図示 せず) から取得し、 この開始タイミング及び終了タイミングの時間差から 1フレ ーム当たりの符号化実処理時間を算出する。 さらに遅延算出手段としての C P U 2は、 この符号化実処理時間からあらかじめ予想されている符号化予想処理時間 を減算した処理遅延時間を算出する。' '
そして符号化負荷制御手段としての C P U 2 ·は、 この処理遅延時間が 「0」 よ り大きい場合、 オーバーランが発生しているものとしてオーバーランリカパリを 実行する。
次に、 このオーバーランリカバリの処理例を、 図 3に示すタイミングチャート を用いて説明する。 図 3において、 N番目のフレームが極端に複雑で、 1フレー ム期間内に符号化が完了しなかったものとする (オーバーランの発生) 。 この場 合 C P U 2は従来と同様に、 オーバーランを生じた N番目のフレームに対する符 号化処理を中断し、 次のフレーム期間において、 まず N + 1番目のフレームに対 応する音声データを符号化した後、 オーバーランが生じた N番目のフレームの映 像データの符号化を再開することにより、 当該 N番目のフレームの符号化を完了 する。 .
再開した N番目のフレームの符号化完了に続いて CPU 2は、 即座に N+ 1番 '目のフレームに対する符号化処理を開始する。 このとき符号化負荷制御手段とし ての CPU2は、 この N+ 1番目のフレームに対して、 通常の符号化処理よりも 処理負荷の低い符号化処理方法を適用する。 この、 通常よりも負荷の低い符号化 処理方法をリカパリェンコ一ディングモード 1と呼ぶ。 これに対して通常の符号 化処理方法をノーマルェンコ一ディングと呼ぶ。 図 4及び図 5に、 ノーマルェン コーディング及ぴリカバリエンコーディングモード 1の処理ダイヤグラムを示す このリカパリェンコ一ディングモード 1において C P U 2は、 予測符号化にお ける動きべクトルの捜索範囲をノーマルェンコ一ディングょりも狭めることによ つて動きべクトル探索の処理サイクルを削減して処理負荷を低減し、 これにより 1フレーム当たりの符号化処理時間を短縮する。
このようにリカバリエンコーディングモード 1を適用して符号化処理時間を短 縮した結果、 1フレーム期間内に当該 N+ 1番目のフレームの符号化処理が完了 した場合 (図示せず) 、 C PU 2は次の N+ 2番目以降のフレームに対し、 ノー マルェンコ一ディングを適用して処理を行う。
これに対して図 3に示すように、 リカバリエンコーディングモード 1を適用し て処理時間短縮を図ったものの、 N+ 1番目のフレームが 1フレーム期間内で符 号化が完了しなかった (オーバーランを回復できなかった) 場合、 CPU 2は、 当該 N+ 1番目のフレームに対する符号化を一旦中断し、 次のフレーム期間にお いて、 まず N+ 1番目のフレームに対応する音声データを符号化した後、 N+ 1 番目のフレームの映像データの符号化を再開する。
そして、 再開した N+ 1番目のフレームの符号化完了に続いて CPU2は、 次 の N+ 2番目のフレームに対する符号化処理を開始する。 このとき符号化負荷制 御手段としての CPU 2は、 この N + 2番目のフレームに対して、 リカパリェン コーディングモード 1よりもさらに処理負荷の低い符号化処理方法を適用する。 この符号化処理方法をリカバリエンコーディングモ ド 2と呼ぶ。
このリカバリェンコーディングモード 2において C PU 2は、 図 6に示す処理 ダイヤグラムのように、 逆量子化〜逆変換符号化〜動き補償によるフレームの再 生の一連の戻り処理系を停止する。 この戻り処理系は、 次のフレームを予測する ために参照フレームをフレームメモリ上に再構築する処理である。 CPU 2はリ カバリェンコーディングモード 2において、 この戻り処理系を停止することによ り、 キード 1に比べてさらに符号化処理時間を短縮する。
かくして C PU 2は図 3に示すように、 リカバリェンコーディングモード 1を 適用してもオーバーランを回復できなかった場合、 次のフレームに対してさちに 処理負荷の低いモード 2を適用することにより、 オーバーランの発生から 3フレ ーム期間以内で確実にオーバーランを回復するようになされている。
ここで、 オーバーランリカバリのためにリカバリエンコーディングモード 2を 適用した場合、 フレームメモリには動き予測用の参照フレームが記録されない状 態となり、 これにより次のフレームはこの参照フレームを用いた動き予測を行う ことができなくなる。
このため C PU 2はリカバリエンコーディングモード 2を適用した場合、 その 次のフレームを、 動き予測を行わない Iピクチャ (イントラ符号化ピクチャ) と して符号化するとともに、 このフレームを起点として GO P (G r o u p O f P i c t u r e) を再構築する。
次に、 上述したコーデックプログラムにおけるオーバーランリカパリの処理手 順を、 図 7に示すフローチャードを用いて説明する。 信号処理装置 1の CPU2 は、 ルーチン RT 1の開始ステップから入って次のステップ S P 1へ移る。
ステップ S P 1において CPU 2は、 一つ前の映像フレームに対する符号化ス レツ ド終了タイミングと、 現在の映像フレームに対する符号化スレツ ド開始タイ ミングを OS (O p e r a t i n g S y s t em) あるいはハードウ土ァから 直接取得し、 それぞれ記憶する。 そして CPU 2は、 既に記憶してある、 一つ前 のフレームの開始時刻と終了時刻との差分をとることで、 一つ前のフレームの符 母化に要した処理遅延時間 TNを算出し、 当該 TNをオーバーラン累積処理時間 に加算し、 S P 2に移る。 ここで、 累積処理遅延時間は処理開始時においては 「 0」 に」 設定されている。
ステップ S P 2において C PU 2は、 算出した累積処理遅延時間とォーパーラ ンカウンタの値から、 オーバーラン発生の有無を判定する。
ステップ S P 2において、 累積処理遅延時間をオーバーランカウンタ値で割つ た値がシステム起動時にビデオ符号化スレツドとして与えられる目標時間 TGT (T a r G e t T i me) よりも小さい場合、 このことはオーバーランが発生 していないことを表しており、 このとき CPU2はステップ S P 3に移り、 この フレームをノーマルエンコードで符号化するとともに、 累積処理遅延時間を 「0 J にリセット、 同時にオーバーランカウンタを 「1」 にリセットしてステップ S P 1に戻る。
これに対してステップ S P 2において、 累積処理遅延時間をオーバーラン力ゥ ンタ値で割った値がシステム起動時にビデオ符号化スレ'ッドとして与えられる目 標時間 TGT (T a r G e t T i m e ) よりも大きい場合、 このことはオーバ 一ランが発生していることを表しており、 このとき CPU 2はステップ S P 4に 移り、 オーバーランの発生フレーム数をカウントするためのオーバーランカウン タの値に 「1」 を加算して、 次のステップ S P 5に移る。
ステップ S P 5において CPU 2は、 オーバーランカウンタのカウント値に基 づいて、 オーバーランしたフレーム数を判定する。
ステップ S P 5において、 オーバーランしたフレーム数が 1回であると判定し た場合、 CPU 2はステップ S P 6に移り、. 次のフレームにリカバリエンコーデ ィングモード 1を適用して符号化を実行し、 ステップ S P 1に戻る。
これに対してステップ S P 5において、 オーバーランしたフレーム数が 1回で はないと判定した場合、 CPU 2はステップ S P 7に移り、 次のフレームにリカ バリエンコーディングモード 2を適用して符号化を実行し、 さらに、 その次のフ レームに対して Iピクチャでの符号化を指定するとともに G O Pを再構築してス テツプ S P 1に戻る。
( 3 ) 動作及ぴ効果
以上の構成において、 この信号処理装置 1は、 オーディオ符号化スレッ ドを優 先しながら、 1フレーム期間にオーディオ符号化スレツド及ぴビデオ符号化スレ ッドを交互にそれぞれ 1フレーム分ずつ実行して映像及び音声を符号化していく そして信号処理装置 1は、 ビデオ符号化スレツドにおいてオーバーランが発生 したことを検出すると、 これに応じて、 当該オーバーランが発生したフレームに 続いて、 即座に次のフレームを符号化開始する。 このとき信号処理装置 1は、 次 のフレームに対して処理負荷の軽いリカバリエンコーディングモード 1を適用す ることにより、 1フレーム当たりの符号化処理時間を短縮してオーバーランを回 復しょう,とする。
さらに信号処理装置 1は、 次のフレームにリカバリエンコーディングモード 1 を適用したにもかかわらずオーバーランを回復できなかった場合、 さらにその次 のフレームに対して、 より一層処理負荷の軽いリカバリエンコーディングモード
2を適用することにより、 オーバーランによるフレームスキップを起こすことな く、 オーバーラン発生から有限フレーム期間内 (例えば、 3フレーム期間以内) で確実にオーバーランを回復することができる。 .
また信号処理装置 1は、 このようにしてオーバーランによるフレームスキップ を回避することができるため、 C P U 2や周辺装置の処理能力や動作クロック等 を低減することができ、 システム全体の構成や消費電力を低減することができる 以上の構成によれば、 信号処理装置 1は、 オーバーランの発生に応じて以降の フレームに対する符号化処理負荷を低減することにより、 フレームスキップによ る映像の表示品質劣化を回避することができる。
( 4 ) 他の実施の形態 なお上述の実施の形態に1'おいては、 オーバーランの発生に応じて、 まず動きべ クトルの操索範囲を狭めたリカパリエンコーディングモード 1を適用し、 これに よってもオーバーランから回復できない場合、 次のフレームに対してさらに処理 負荷の軽いモード 2を適用することにより、 オーバーラン発生から 3フレーム期 間以内でォ一パーランを回復し得るようにしたが、 この回復期間は 3フレーム期 間に限らない。 また、 モード 1を複数回連続して適用したり、 あるいはオーバー ラン発生直後からモード 2を適用するなど、 様々なパターンを用いてオーバーラ ン発生以降の映像符号化処理負荷を低減することができる。
また上述の実施の形態においては、 動きべク トルの探索範囲を狭めたモード 1 と、 フレーム間予測のための参照フレーム再構築処理を省いたモード 2の 2種類 のリカバリエンコーディングを用いるようにしたが、 本発明はこれに限らず、 こ の他種々の処理負荷を低減した符号化処理を組み合わせて用いても良い。
さらに上述の実施の形態においては、 映像及び音声に対する符号化及び復号の 両機能を有する信号処理装置に本発明を適用した場合について述べたが、 本発明 はこれに限らず、 符号化機能のみ、 あるいは復号化機能のみを有する信号符号化 装置に適用してもよい。 産業上の利用可能性
本発明の映像符号化装置、 映像符号化制御方法及び映像符号化制御プログラム は、 例えばデジタル化されたコンテンツあるいはアナ口グ映像信号をデジタル化 した後に圧縮符号化してィンターネットを介した動画のリアルタイム配信または 受信、 家庭内あるいは限定されたネットワーク環境でのリアルタイム配信そして 受信、 タイムシフティング (P VR : P e r s o n a l V i d e o R e c o r d i n g) などの録画再生装置等の用途に適用することができる。

Claims

請 求 の 範 囲
1 . 映像をフレーム毎に第 1の符号化処理方法で符号化処理する符号化手段と、 上記フレームの符号化処理に要した符号化実処理時間を検出する処理時間検出 手段と、
上記符号化処理に与えられる所定の符号化予想処理時間と上記符号化実処理時 間とに基づいて、 上記フレームの符号化処理の処理遅延時間を算出する遅延算出 手段と、
上記フレームについての上記処理遅延時間が所定の閾値以上のとき、 上記第 1 の符号化処理方法より符号化処理負荷の低い第 2の符号化処理方法で次のフレー ムを符号化処理するよう上記符号化手段に指示する符号化負荷制御手段と を具えることを特徴とする映像符号化装置。 ·
2 . 上記遅延算出手 Sは、 上記符号化処理に与えられる上記符号化予想処理時間 を上記符号化実処理時間.から減算'することにより、 上記処理遅延時間を算出する ことを特徴とする請求の範囲第 1項に記載の映像符号化装置。
3 . 上記符号化負荷制御手段は、 連続する複数の上記フレームについての上記処 理遅延時間の累積値が所定の閾値以上のとき、 当該連続する複数のフレームの次 のフレームに対して、 上記第 2の符号化処理方法よりも符号化処理負荷の低い第 3の符号化処理方法で符号化処理するよう上記符号化手段に指示する
ことを特徴とする請求の範囲第 1項に記載の映像符号化装置。
4 . 上記符号化負荷制御手段は、 上記フレームについての上記処理遅延時間が所 定の閾値以上のとき、 上記符号化手段に当該フレームに対する符号化処理の終了 後、 連続して次のフレームの符号化処理を開始させる
ことを特徴とする請求の範囲第 1項に記載の映像符号化装置。
5 . 映像をフレーム毎に符号化処理する符号化ステップと、
上記フレームの符号化処理に要した符号化実処理時間を検出する処理時間検出 ステップと、
上記符号化処理に与えられる所定の符号化予想処理時聞と上記符号化実処理時 間とに基づいて、 上記フレームの符号化処理の処理遅延時間を算出する遅延算出 ステップと、
上記フレームについての上記処理遅延時間の平均が所定の予想処理時間を超え る場合、 次の上記フレームに対する符号化処理負荷を低減する符号化負荷制御ス テツプと .
を具えることを特徵とする映像符号化制御方法。
6 . 映像符号化装置に、
映像をフレーム毎に符号化処理する符号化ステップと、
上記フレームの符号化処理に要した符号化実処理時間を検出する処理時間検出' ステップと、
上記符号化処理に与えられる所定の符号化予想処理時間と上記符号化実処理時 間とに基づいて、 上記フレームの符号化処理の処理遅延時間を算出する遅延算出 ステップと、
上記フレームについての上記処理遅延時間の平均が所定の予想処理時間を超え る場合、 次の上記フレームに対する符号化処理負荷を低減する符号化負荷制御ス テツプと
を実行させる映像符号化制御プログラム。
PCT/JP2004/013083 2003-09-02 2004-09-02 映像符号化装置、映像符号化制御方法及び映像符号化制御プログラム WO2005025226A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020067004232A KR101121613B1 (ko) 2003-09-02 2004-09-02 영상 부호화 장치, 영상 부호화 제어 방법 및 영상 부호화 제어 프로그램을 기록한 컴퓨터로 판독가능한 기록 매체
US10/569,886 US8665966B2 (en) 2003-09-02 2004-09-02 Video coding apparatus, method of controlling video coding and program of controlling video coding
EP04772897A EP1662794A4 (en) 2003-09-02 2004-09-02 VIDEO CODING DEVICE, VIDEO CODE CONTROL METHOD AND VIDEO CODING CONTROL PROGRAM
CN200480028220XA CN1860792B (zh) 2003-09-02 2004-09-02 视频编码设备、控制视频编码方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003310638A JP3802521B2 (ja) 2003-09-02 2003-09-02 符号化装置、符号化制御方法及び符号化制御プログラム
JP2003-310638 2003-09-02

Publications (1)

Publication Number Publication Date
WO2005025226A1 true WO2005025226A1 (ja) 2005-03-17

Family

ID=34269653

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/013083 WO2005025226A1 (ja) 2003-09-02 2004-09-02 映像符号化装置、映像符号化制御方法及び映像符号化制御プログラム

Country Status (7)

Country Link
US (1) US8665966B2 (ja)
EP (1) EP1662794A4 (ja)
JP (1) JP3802521B2 (ja)
KR (1) KR101121613B1 (ja)
CN (1) CN1860792B (ja)
TW (1) TWI249958B (ja)
WO (1) WO2005025226A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100466736C (zh) * 2005-12-30 2009-03-04 杭州华三通信技术有限公司 运动图像编码控制方法及编码装置
US7653253B2 (en) * 2006-01-23 2010-01-26 Kabushiki Kaisha Toshiba Moving image decoder
CN112040235A (zh) * 2020-11-04 2020-12-04 北京金山云网络技术有限公司 视频资源的编码方法和装置,视频资源的解码方法和装置

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8711923B2 (en) * 2002-12-10 2014-04-29 Ol2, Inc. System and method for selecting a video encoding format based on feedback data
JP4623650B2 (ja) 2005-09-06 2011-02-02 パナソニック株式会社 動画像符号化装置,動画像符号化方法
JP2007251553A (ja) * 2006-03-15 2007-09-27 Matsushita Electric Ind Co Ltd リアルタイム処理装置及びその方法
JP2008092107A (ja) * 2006-09-29 2008-04-17 Toshiba Corp 情報処理装置及び音声/映像データ再生方法
CN100463525C (zh) * 2006-12-11 2009-02-18 浙江大学 计算复杂度可动态调整的视频编码方法和装置
JP2008216472A (ja) * 2007-03-01 2008-09-18 Matsushita Electric Ind Co Ltd 音声復号化装置及び音声復号化システム
EP2143668A1 (de) 2008-07-09 2010-01-13 Interrroll Holding AG Rollenbahn mit Profilschiene
CN101394554B (zh) * 2008-09-28 2010-06-09 湖北科创高新网络视频股份有限公司 一种自适应跳帧方法和装置
JP5652066B2 (ja) * 2010-09-03 2015-01-14 ヤマハ株式会社 動画圧縮制御装置、動画記録装置及び動画記録再生装置
WO2014179890A1 (en) * 2013-05-09 2014-11-13 Sunnybrook Research Institute Systems and methods for providing visual feedback of touch panel input during magnetic resonance imaging
CN103402086B (zh) * 2013-07-22 2017-02-15 华为技术有限公司 一种用于视频编码系统的性能控制方法及编码器
US9397683B2 (en) * 2014-08-05 2016-07-19 Intel Corporation Reduced digital audio sampling rates in digital audio processing chain
CN105898371A (zh) * 2015-12-07 2016-08-24 乐视云计算有限公司 实时转码的实时控制方法及装置
JP6724581B2 (ja) * 2016-06-15 2020-07-15 富士通株式会社 画像符号化装置、方法、及びプログラム
CN113038139B (zh) * 2021-03-25 2023-05-12 贵州电网有限责任公司 一种应用于机巡图片上传的图像压缩方法
CN113613071B (zh) * 2021-07-30 2023-10-20 上海商汤临港智能科技有限公司 一种图像处理方法、装置、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10200900A (ja) * 1997-01-10 1998-07-31 Nippon Telegr & Teleph Corp <Ntt> 符号化映像の高画質メディア同期再生方法及び装置
JP2000032469A (ja) * 1998-07-13 2000-01-28 Nec Corp 動画像符号化装置
JP2001346216A (ja) * 2000-06-06 2001-12-14 Toshiba Corp 動画像圧縮方法および情報処理装置
JP2001352471A (ja) * 2000-06-07 2001-12-21 Toshiba Corp ビデオカメラ装置
US20020025001A1 (en) 2000-05-11 2002-02-28 Ismaeil Ismaeil R. Method and apparatus for video coding
JP2004007360A (ja) * 2002-03-29 2004-01-08 Seiko Epson Corp 動画像符号化方法、動画像符号化装置および動画像符号化処理プログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5121202A (en) * 1989-05-12 1992-06-09 Nec Corporation Adaptive interframe prediction coded video communications system
US5818969A (en) * 1995-05-12 1998-10-06 Intel Corporation Intelligent start for motion estimation search
JP3588970B2 (ja) * 1997-04-30 2004-11-17 ソニー株式会社 信号符号化方法、信号符号化装置、信号記録媒体及び信号伝送方法
JPH1118083A (ja) * 1997-06-25 1999-01-22 Sony Corp ディジタル信号符号化方法及び装置、信号記録媒体並びに信号伝送方法
JP3407287B2 (ja) * 1997-12-22 2003-05-19 日本電気株式会社 符号化復号システム
JP3184175B2 (ja) 1999-03-05 2001-07-09 日本電気アイシーマイコンシステム株式会社 復号化装置
DE50107201D1 (de) * 2001-06-11 2005-09-29 Abb Schweiz Ag Isolator für ein elektrisches Verschienungssystem sowie ein Isolatorsystem mit solchen Isolatoren
JP2003061097A (ja) 2001-08-09 2003-02-28 Sony Corp 画像符号化装置および方法、記録媒体、並びにプログラム
US20050024486A1 (en) 2003-07-31 2005-02-03 Viresh Ratnakar Video codec system with real-time complexity adaptation

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10200900A (ja) * 1997-01-10 1998-07-31 Nippon Telegr & Teleph Corp <Ntt> 符号化映像の高画質メディア同期再生方法及び装置
JP2000032469A (ja) * 1998-07-13 2000-01-28 Nec Corp 動画像符号化装置
US20020025001A1 (en) 2000-05-11 2002-02-28 Ismaeil Ismaeil R. Method and apparatus for video coding
JP2001346216A (ja) * 2000-06-06 2001-12-14 Toshiba Corp 動画像圧縮方法および情報処理装置
JP2001352471A (ja) * 2000-06-07 2001-12-21 Toshiba Corp ビデオカメラ装置
US20020003576A1 (en) 2000-06-07 2002-01-10 Kazuo Konishi Video camera apparatus
JP2004007360A (ja) * 2002-03-29 2004-01-08 Seiko Epson Corp 動画像符号化方法、動画像符号化装置および動画像符号化処理プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1662794A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100466736C (zh) * 2005-12-30 2009-03-04 杭州华三通信技术有限公司 运动图像编码控制方法及编码装置
US7653253B2 (en) * 2006-01-23 2010-01-26 Kabushiki Kaisha Toshiba Moving image decoder
CN112040235A (zh) * 2020-11-04 2020-12-04 北京金山云网络技术有限公司 视频资源的编码方法和装置,视频资源的解码方法和装置
CN112040235B (zh) * 2020-11-04 2021-03-16 北京金山云网络技术有限公司 视频资源的编码方法和装置,视频资源的解码方法和装置

Also Published As

Publication number Publication date
US8665966B2 (en) 2014-03-04
KR101121613B1 (ko) 2012-04-16
JP2005080123A (ja) 2005-03-24
CN1860792B (zh) 2010-05-12
TWI249958B (en) 2006-02-21
EP1662794A4 (en) 2012-07-25
CN1860792A (zh) 2006-11-08
TW200515820A (en) 2005-05-01
US20070014355A1 (en) 2007-01-18
KR20060131725A (ko) 2006-12-20
EP1662794A1 (en) 2006-05-31
JP3802521B2 (ja) 2006-07-26

Similar Documents

Publication Publication Date Title
WO2005025226A1 (ja) 映像符号化装置、映像符号化制御方法及び映像符号化制御プログラム
JP3732867B2 (ja) 画像伸張装置
JP6207116B2 (ja) 監視ビデオをエンコードするための方法及び装置
JP4519082B2 (ja) 情報処理方法、動画サムネイル表示方法、復号化装置、および情報処理装置
US20020118756A1 (en) Video coding method and data processing device
JP2658832B2 (ja) 動画像復号制御装置
JP4675383B2 (ja) 画像復号化装置および方法、画像符号化装置
US20030169371A1 (en) Memory transfer controller and method of transfer control of video line data and macroblock data
WO2010134238A1 (ja) 映像記録装置
JP3410669B2 (ja) 映像音声処理装置
WO2005079075A1 (en) A method for encoding of decoding video data and an apparatus thereof
KR100726695B1 (ko) 디지털 신호 처리 장치 및 방법과 제공 매체
JP4591549B2 (ja) 再生処理装置、および再生処理方法、並びにプログラム
JPH10322665A (ja) Gopデータの反復読出し制御方法および装置
JP7451131B2 (ja) 画像符号化装置、画像符号化方法、及びプログラム
JP2011182169A (ja) 符号化装置および方法
JPH10164596A (ja) 動き検出装置
JP4449694B2 (ja) 動画像予測符号化装置
JP2001320653A (ja) 画像復号装置及び画像復号方法
JP2005080004A (ja) 動画像符号化装置
JP2002112275A (ja) 画像復号方法、画像復号装置、およびデータ記憶媒体
JP2005286594A (ja) 映像符号化装置
JP2006340238A (ja) 符号化装置及びその制御方法及びプログラム及び記憶媒体
JPH0354983A (ja) 動画像信号の高能率符号化方法
JP2002034040A (ja) 動画像符号化装置におけるフレームメモリ管理方法及びフレームメモリ管理装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200480028220.X

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DPEN Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101)
WWE Wipo information: entry into national phase

Ref document number: 1020067004232

Country of ref document: KR

REEP Request for entry into the european phase

Ref document number: 2004772897

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2004772897

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2004772897

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2007014355

Country of ref document: US

Ref document number: 10569886

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1020067004232

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 10569886

Country of ref document: US