JP2006157871A - Information processing apparatus and method, recording medium, and program - Google Patents

Information processing apparatus and method, recording medium, and program Download PDF

Info

Publication number
JP2006157871A
JP2006157871A JP2005242164A JP2005242164A JP2006157871A JP 2006157871 A JP2006157871 A JP 2006157871A JP 2005242164 A JP2005242164 A JP 2005242164A JP 2005242164 A JP2005242164 A JP 2005242164A JP 2006157871 A JP2006157871 A JP 2006157871A
Authority
JP
Japan
Prior art keywords
decoding
picture
gop
pictures
processing unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005242164A
Other languages
Japanese (ja)
Inventor
Shojiro Shibata
正二郎 柴田
Shuji Tsunashima
修二 綱島
Mototsugu Takamura
元嗣 高村
Kyohei Koyabu
恭平 小藪
Shinjiro Kakita
新次郎 柿田
Mitsuhisa Kaneko
光久 金子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Corp filed Critical Sony Corp
Priority to JP2005242164A priority Critical patent/JP2006157871A/en
Publication of JP2006157871A publication Critical patent/JP2006157871A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology of realizing a reverse-direction fast playback operation without performing complicated band control. <P>SOLUTION: In the case of a reverse double speed playback operation, banks No. 0 to No. 5 are occupied by I and P pictures, which are stored in the decode order. In a timing next to it when I2 pictures are stored in the bank No. 5, B1 pictures are stored in a bank No. 6, B12 pictures are stored in a bank No. 7 in a timing next to it when a display timing of the B1 pictures, and the bank No. 6 is released. B pictures not omitted are alternately stored in the banks No. 6 and 7 in such a way that the display timing of the B pictures is delayed by one frame with respect to the decode timing and the banks are released after display of the B pictures. The banks No. 0 to 5 are released in any slower timing between both the cases when the display of the I, P pictures is finished and the use of the stored I and P pictures as a reference image is completed. The technology is applicable to playback devices. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、情報処理装置および情報処理方法、記録媒体、並びに、プログラムに関し、
特に、複雑なバンクメモリの制御を行うことなく、圧縮符号化データを再生することができるようにした、情報処理装置および情報処理方法、記録媒体、並びに、プログラムに関する。
The present invention relates to an information processing apparatus, an information processing method, a recording medium, and a program.
In particular, the present invention relates to an information processing apparatus, an information processing method, a recording medium, and a program that can reproduce compressed encoded data without controlling complicated bank memory.

映像圧縮技術として、MPEG(Moving Picture Coding Experts Group/Moving Picture Experts Group)が広く用いられている。   MPEG (Moving Picture Coding Experts Group / Moving Picture Experts Group) is widely used as a video compression technique.

MPEGで圧縮符号化されたストリームデータをデコードして再生する場合に、通常の再生以外に、高速再生を実行したり、逆方向に再生する技術がある。   When decoding and reproducing stream data compressed and encoded by MPEG, there is a technique for executing high-speed reproduction or reproducing in the reverse direction in addition to normal reproduction.

例えば、15ピクチャで1GOPを構成するMPEG LongGOPでは、デコーダへの入力においてBピクチャを間引くことで、−3乃至3倍(速度のマイナスは、逆方向の再生であることを示す、以下同様)で高速再生を行うことが可能である(例えば、特許文献1参照)。また、再生スピードごとに、表示したいピクチャ情報のテーブルを持つことで、用意したテーブル分のスピードの再生を行うことができる。   For example, in MPEG LongGOP which constitutes 1 GOP with 15 pictures, the B picture is thinned out at the input to the decoder, so that it is -3 to 3 times (minus the speed indicates reverse playback, and so on). High-speed reproduction can be performed (see, for example, Patent Document 1). Further, by having a table of picture information to be displayed for each reproduction speed, it is possible to perform reproduction at the speed of the prepared table.

特開平8−98142号公報JP-A-8-98142

また、例えば、5フレーム間隔で、間欠的に10フレーム分ずつ圧縮符号化信号を取得し、取得した圧縮符号化信号をすべて復調した後、2つの復号部に5フレーム分ずつ交互に供給して、それぞれ復号処理を実行させた後、復号後のデータをメモリに書き込んで、1フレームおきに読み出すことにより、2倍速の再生信号を得ることができるようにした技術がある(例えば、特許文献2参照)。   Also, for example, a compression-coded signal is acquired intermittently for 10 frames at intervals of 5 frames, and all the acquired compressed-coded signals are demodulated and then alternately supplied to the two decoding units for 5 frames. There is a technique in which, after each decoding process is executed, the decoded data is written in a memory and read out every other frame so that a double-speed reproduction signal can be obtained (for example, Patent Document 2). reference).

特開平8−56334号公報JP-A-8-56334

また、MPEGのストリームは、正方向に再生するのに都合よくできている。例えば、15ピクチャで1GOPを構成するMPEG LongGOPにおける1GOPのコーディングオーダのピクチャの並びは、I(2)B(0)B(1)、P(5)、B(3)、B(4)、P(8)、B(6)、B(7)、P(11)、B(9)、B(10)、P(14)、B(12)、B(13)(ただし、カッコ内の数字は、コーディングオーダをディスプレイオーダに並べ替えた場合の順番を示す)となっていて、Pピクチャの参照する画像は、一つ前のIピクチャまたはPピクチャであり、Bピクチャの参照する画像は、コーディングオーダで1つ前のIピクチャまたはPピクチャと、2つ前のIピクチャまたはPピクチャである。これにより、参照画像用のメモリを2面(2バンク)分予約することで、Pピクチャ、Bピクチャとも、デコードすることができ、メモリを効率よく使用することができるようになっている。   Also, MPEG streams are convenient for playback in the forward direction. For example, the arrangement of pictures in the coding order of 1 GOP in MPEG Long GOP that constitutes 1 GOP with 15 pictures is I (2) B (0) B (1), P (5), B (3), B (4), P (8), B (6), B (7), P (11), B (9), B (10), P (14), B (12), B (13) (however, in parentheses The number indicates the order when the coding order is rearranged into the display order), and the picture referred to by the P picture is the previous I picture or P picture, and the picture referenced by the B picture is The previous I picture or P picture in the coding order and the second previous I picture or P picture. As a result, by reserving two reference picture memories (two banks), both the P picture and the B picture can be decoded, and the memory can be used efficiently.

このように、正方向に再生するのに都合よいMPEGのストリームを逆転再生するために、複数のデコーダを用いて復号処理を実行し、それぞれ、復号対象となるGOPの直前のGOPを付加してデコーダに供給するようにすることにより、逆方向再生であっても、再生されるピクチャの参照画像を正しく用いることができるようにした技術がある(たとえば、特許文献3)。   In this way, in order to reversely play back an MPEG stream that is convenient for playback in the forward direction, a decoding process is executed using a plurality of decoders, and a GOP immediately preceding the GOP to be decoded is added. There is a technique in which a reference image of a picture to be reproduced can be used correctly even in backward reproduction by supplying the data to a decoder (for example, Patent Document 3).

特開平10−150635号公報JP-A-10-150635

例えば、15ピクチャで1GOPを構成するMPEG LongGOPでは、デコーダへの入力においてBピクチャを間引くことで、−3乃至3倍(速度のマイナスは、逆方向の再生であることを示す、以下同様)で高速再生を行うことが可能であるが、ピクチャの表示間隔が不規則となってしまうため、不自然な表示になる。   For example, in MPEG LongGOP which constitutes 1 GOP with 15 pictures, the B picture is thinned out at the input to the decoder, so that it is -3 to 3 times (minus the speed indicates reverse playback, and so on). High-speed playback is possible, but the display interval of pictures becomes irregular, resulting in an unnatural display.

また、複数のデコーダチップを用いてデコードを実行するようになされている場合では、表示対象でないBピクチャを入力段で間引く処理と組み合わせることにより、等間隔の間引きで、更に高速の再生(例えば、2チップで2倍、3チップで4倍、4チップで5倍、5チップで7倍)を実現することができるが、出力処理において、IピクチャまたはPピクチャを間引く処理を行う必要があり、ベースバンドメモリの制御や、デコード済みのデータの中から表示するデータを選択する処理が複雑となってしまう。このため、従来の技術を用いて、動的にスピードを変更させて再生表示させるのは、困難であった。   In addition, when decoding is performed using a plurality of decoder chips, by combining with a process of thinning out B pictures that are not to be displayed at the input stage, even higher-speed playback (for example, 2 times with 2 chips, 4 times with 3 chips, 5 times with 4 chips, 7 times with 5 chips), but in the output processing, it is necessary to thin out I pictures or P pictures, Control of the baseband memory and processing for selecting data to be displayed from decoded data become complicated. For this reason, it has been difficult to reproduce and display by dynamically changing the speed using the conventional technique.

また、上述したように、再生スピードごとに、表示したいピクチャ情報のテーブルを持つことで、用意したテーブル分のスピードの再生を行うことができる。しかしながら、このような処理では、スピードの切り変わり目はテーブルの単位となり、更に、切り替え時の表示を滞りなく行うためには複雑な制御が必要となる。   Further, as described above, by having a table of picture information to be displayed for each reproduction speed, it is possible to reproduce at a speed corresponding to the prepared table. However, in such processing, the change of speed becomes a table unit, and moreover, complicated control is required to perform display at the time of switching without delay.

そして、MPEGのストリームは、上述したように、正方向に再生するのに都合よくできている。しかしながら、逆方向の再生をストリームの入力順に行う場合、1GOP分のデコードが終了した後に逆方向に再生を行うようにすると、少なくとも1GOP分(例えば、15フレーム)のデータを記録することができるフレームメモリを備え、参照画像データ用のバンクを多数予約しなければならないため、多くのメモリ容量が必要となってしまう。   As described above, the MPEG stream can be conveniently reproduced in the forward direction. However, when playback in the reverse direction is performed in the input order of the streams, if playback is performed in the reverse direction after decoding for 1 GOP is completed, a frame that can record data of at least 1 GOP (for example, 15 frames) can be recorded. Since a memory is provided and a large number of banks for reference image data must be reserved, a large memory capacity is required.

本発明はこのような状況に鑑みてなされたものであり、複雑なバンクメモリの制御を行うことなく、圧縮符号化データの高速再生、逆転再生、高速逆転再生を行うことができるようにするものである。   The present invention has been made in view of such a situation, and enables high-speed reproduction, reverse reproduction, and high-speed reverse reproduction of compression-encoded data without performing complicated bank memory control. It is.

本発明の第1の側面の情報処理装置は、圧縮符号化映像データをデコードするデコード手段と、デコード手段への圧縮符号化映像データの供給を制御する供給制御手段と、供給制御手段およびデコード手段が実行する処理を制御する制御手段とを備え、デコード手段は、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを備えて、デコード処理済のピクチャデータを保持し、制御手段は、IピクチャおよびPピクチャが、バンクメモリのうち、ピクチャタイプにより定められる固定の位置に保持され、バンクメモリに保持されているデコード処理済のピクチャデータが、必要に応じて参照画像として利用されるように、デコード手段によるデコード処理を制御する。   An information processing apparatus according to a first aspect of the present invention includes a decoding unit that decodes compressed encoded video data, a supply control unit that controls supply of compressed encoded video data to the decoding unit, a supply control unit, and a decoding unit. Control means for controlling the processing executed by the decoding means, and the decoding means comprises a number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding processing is executed, and holds the decoded picture data. The control means holds the I picture and the P picture in a fixed position determined by the picture type in the bank memory, and the decoded picture data held in the bank memory is used as a reference picture if necessary. The decoding process by the decoding means is controlled so as to be used as

デコード手段には、処理単位に含まれるIピクチャおよびPピクチャのピクチャ数に2を加えた数のピクチャを保持することができるバンクメモリを備えさせるようにすることができる。   The decoding means may be provided with a bank memory capable of holding a number of pictures obtained by adding 2 to the number of I and P pictures included in the processing unit.

デコード手段を、3つ備えさせるようにすることができ、デコード手段には、8ピクチャを保持することができるバンクメモリをそれぞれ備えさせるようにすることができる。   Three decoding means can be provided, and the decoding means can each be provided with a bank memory capable of holding 8 pictures.

制御手段には、処理単位に含まれる複数のピクチャのうち、IピクチャおよびPピクチャが、Bピクチャよりも先にデコードされるように、ピクチャごとのデコード処理の順番を決定させるようにすることができる。   The control means may determine the order of decoding processing for each picture so that an I picture and a P picture among a plurality of pictures included in a processing unit are decoded before a B picture. it can.

制御手段に再生速度を指令する再生速度指令手段を更に備えさせるようにすることができ、制御手段には、再生速度指令手段により指令された再生速度に基づいて、処理単位に含まれるピクチャのうち、デコード手段から出力されるピクチャを選択させるようにすることができ、デコード手段には、デコード処理を実行するデコード処理実行手段と、デコード処理実行手段へのピクチャの供給を制御するピクチャ供給制御手段とを備えさせるようにすることができ、ピクチャ供給制御手段には、制御手段の制御に基づいて、処理単位に含まれるピクチャのうち、IピクチャおよびPピクチャ、並びに、デコード手段から出力されるピクチャとして選択されたBピクチャをデコード処理手段へ供給させるようにすることができ、デコード処理手段は、制御手段の制御に基づいて、ピクチャ供給制御手段により供給されたそれぞれのピクチャをデコードするとともに、デコード手段から出力されるピクチャとして選択されたピクチャを出力させるようにすることができる。   The control means may further include a playback speed command means for commanding the playback speed, and the control means may include a picture included in the processing unit based on the playback speed commanded by the playback speed command means. The picture output from the decoding means can be selected, and the decoding means includes a decoding processing execution means for executing decoding processing, and a picture supply control means for controlling the supply of pictures to the decoding processing execution means The picture supply control means, based on the control of the control means, out of the pictures included in the processing unit, and the picture output from the decoding means The B picture selected as the picture can be supplied to the decoding processing means. Based on the control of the control means, as well as decoding of each picture supplied by the picture supply control means may be adapted to output the pictures selected as pictures to be output from the decode means.

デコード手段は複数備えられるものとすることができ、複数のデコード手段から出力された非圧縮のデータの供給を受け、供給された非圧縮のデータを切り替えて選択的に出力する出力切り替え手段を更に備えさせるようにすることができ、制御手段は、出力切り替え手段による処理を更に制御ことができる。   A plurality of decoding means may be provided, and an output switching means for receiving the supply of uncompressed data output from the plurality of decoding means and selectively outputting the supplied uncompressed data by switching. The control means can further control the processing by the output switching means.

制御手段には、デコード手段から出力されるデコード済みのピクチャのうち、処理単位の先頭で出力されるピクチャがIピクチャまたはPピクチャであった場合、デコード手段によるデコードの開始タイミングと、デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第1の所定数のピクチャ分ずれるようにデコード手段を制御させるようにすることができる。   When the picture outputted at the head of the processing unit among the decoded pictures outputted from the decoding means is an I picture or a P picture, the control means outputs the decoding start timing by the decoding means and the decoding means. The decoding means can be controlled so that the timing at which the output of the decoded picture is started is shifted by the first predetermined number of pictures.

第1の所定数は、IピクチャとPピクチャの合計数に1を加えた数であるようにすることができる。   The first predetermined number may be a number obtained by adding 1 to the total number of I pictures and P pictures.

制御手段には、デコード手段から出力されるデコード済みのピクチャのうち、処理単位の先頭で出力されるピクチャがBピクチャであった場合、デコード手段によるデコードの開始タイミングと、デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第2の所定数のピクチャ分ずれるようにデコード手段を制御させるようにすることができる。   When the picture output at the head of the processing unit among the decoded pictures output from the decoding means is a B picture, the control means outputs the decoding start timing by the decoding means and the decoded picture from the decoding means. The decoding means can be controlled so that the timing at which picture output is started is shifted by a second predetermined number of pictures.

第2の所定数は、IピクチャとPピクチャの合計数に2を加えた数であるようにすることができる。   The second predetermined number may be a number obtained by adding 2 to the total number of I pictures and P pictures.

制御手段には、制御手段に再生速度及び再生方向を指令する再生速度指令手段により指令された再生速度および再生方向が、通常再生速度、かつ、再生方向が正方向であった場合、デコード手段によるデコードの開始タイミングと、デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第1の所定数のピクチャ分ずれるようにデコード手段を制御させるようにすることができる。   When the playback speed and the playback direction commanded by the playback speed command means for commanding the playback speed and playback direction to the control means are the normal playback speed and the playback direction is the positive direction, the control means The decoding means can be controlled such that the decoding start timing and the timing at which the decoding means starts outputting the decoded picture are shifted by the first predetermined number of pictures.

第1の所定数は、IピクチャとPピクチャの合計数に1を加えた数であるようにすることができる。   The first predetermined number may be a number obtained by adding 1 to the total number of I pictures and P pictures.

制御手段には、再生速度指令手段により指令された再生速度および再生方向が、通常再生速度、かつ、再生方向が逆方向であった場合、デコード手段によるデコードの開始タイミングと、デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第2の所定数のピクチャ分ずれるようにデコード手段を制御させるようにすることができる。   When the playback speed and playback direction instructed by the playback speed command means are the normal playback speed and the playback direction is the reverse direction, the control means has the decoding start timing by the decoding means and the decoding means already decoded. The decoding means can be controlled so that the timing at which the output of the current picture starts is shifted by a second predetermined number of pictures.

第2の所定数は、IピクチャとPピクチャの合計数に2を加えた数であるようにすることができる。   The second predetermined number may be a number obtained by adding 2 to the total number of I pictures and P pictures.

制御手段には、デコード手段によりBピクチャがデコードされるタイミングが、デコード手段によりデコードされて出力されるタイミングの1ピクチャ分前になるように、デコード手段によるピクチャごとのデコード処理の順番を決定させるようにすることができる。   The control means determines the order of decoding processing for each picture by the decoding means so that the timing at which the B picture is decoded by the decoding means is one picture before the timing of decoding and output by the decoding means. Can be.

デコード手段は、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリとして、デコード処理が実行される処理単位に含まれるピクチャ数より少ない数のバンクメモリを備えるようにすることができる。   The decoding means includes, as the number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed, a number of bank memories smaller than the number of pictures included in the processing unit in which the decoding process is executed. be able to.

圧縮符号化映像データは、GOPで構成されているものとすることができ、制御手段には、バンクメモリの数から3を引いた値より多い数のIピクチャまたはPピクチャを含むGOPの供給を受けた場合、供給されたGOPを分割してバンクメモリの数から2を引いた値より少ない数のIピクチャまたはPピクチャを含むデコード処理単位を構成し、供給制御手段を制御して、デコード手段にデコード処理単位の圧縮符号化映像データを供給させるようにすることができる。   The compression-encoded video data may be composed of GOPs, and the control means is supplied with GOPs including more I pictures or P pictures than the number of bank memories minus 3. When received, the supplied GOP is divided to form a decoding processing unit including a number of I pictures or P pictures less than the value obtained by subtracting 2 from the number of bank memories, and the supply control means is controlled, and the decoding means Can be supplied with compressed encoded video data in units of decoding processing.

制御手段には、分割されて生成されたデコード処理単位に含まれるIピクチャまたはPピクチャの数の合計が、デコード処理単位より時間的に1つ前のGOPまたはデコード処理単位に含まれるIピクチャまたはPピクチャの数の合計よりも所定の数以上多くならないように、デコード単位を構成させるようにすることができる。   In the control means, the sum of the number of I pictures or P pictures included in the decoded processing unit generated by division is the I picture included in the GOP or decoding processing unit immediately before the decoding processing unit or The decoding unit can be configured so as not to exceed a predetermined number more than the total number of P pictures.

圧縮符号化映像データは、GOPで構成されているものとすることができ、制御手段には、バンクメモリの数から3を引いた値より少ない数のIピクチャまたはPピクチャを含む第1のGOPの供給を受けた場合、時間的に第1のGOPと連続する第2のGOPの構成を検出し、第1のGOPと第2のGOPとに含まれるIピクチャまたはPピクチャの数の合計がバンクメモリの数から3を引いた値より少ない数である場合、第1のGOPと第2のGOPとを結合してデコード処理単位を構成し、供給制御手段を制御して、デコード手段にデコード処理単位の圧縮符号化映像データを供給させるようにすることができる。   The compression-coded video data may be composed of GOPs, and the control means includes a first GOP including a smaller number of I pictures or P pictures than a value obtained by subtracting 3 from the number of bank memories. , The configuration of the second GOP that is temporally continuous with the first GOP is detected, and the total number of I pictures or P pictures included in the first GOP and the second GOP is detected. When the number is less than the value obtained by subtracting 3 from the number of bank memories, the first GOP and the second GOP are combined to form a decoding processing unit, the supply control means is controlled, and the decoding means decodes It is possible to supply compressed encoded video data in units of processing.

制御手段には、デコード処理単位に含まれるIピクチャまたはPピクチャの数の合計が、デコード処理単位より時間的に1つ前のGOPに含まれるIピクチャまたはPピクチャの数の合計よりも所定の数以上多くならないように、デコード単位を構成させるようにすることができる。   The control means is configured such that the total number of I pictures or P pictures included in the decoding processing unit is a predetermined amount higher than the total number of I pictures or P pictures included in the GOP immediately before the decoding processing unit. The decoding unit can be configured so as not to exceed a number.

圧縮符号化映像データは、GOPで構成されているものとすることができ、制御手段には、第1のGOP、および、時間的に第1のGOPと連続する第2のGOPの構成を検出し、第1のGOPと第2のGOPとに含まれるIピクチャまたはPピクチャの数の合計がバンクメモリの数から3を引いた値の2倍より少ない数である場合、第1のGOPと第2のGOPとを結合した後分割して、バンクメモリの数から2を引いた値より少ない数のIピクチャまたはPピクチャを含む第1のデコード処理単位および第2のデコード処理単位を構成し、供給制御手段を制御して、デコード手段に第1のデコード処理単位および第2のデコード処理単位の圧縮符号化映像データを個別に供給させるようにすることができる。   The compression-encoded video data may be composed of GOPs, and the control means detects the configuration of the first GOP and the second GOP that is temporally continuous with the first GOP. When the total number of I pictures or P pictures included in the first GOP and the second GOP is less than twice the value obtained by subtracting 3 from the number of bank memories, A first decoding processing unit and a second decoding processing unit including a number of I pictures or P pictures smaller than a value obtained by subtracting 2 from the number of bank memories are combined after being combined with the second GOP. The supply control means can be controlled to cause the decoding means to individually supply the compressed encoded video data of the first decoding processing unit and the second decoding processing unit.

制御手段には、デコード処理単位に含まれるIピクチャまたはPピクチャの数の合計が、デコード処理単位より時間的に1つ前のデコード処理単位、または、GOPに含まれるIピクチャまたはPピクチャの数の合計よりも所定の数以上多くならないように、デコード単位を構成させるようにすることができる。   In the control means, the total number of I pictures or P pictures included in the decoding processing unit is the number of I processing pictures or P pictures included in the decoding processing unit that is one time earlier than the decoding processing unit or GOP. The decoding unit can be configured so as not to exceed a predetermined number more than the total.

本発明の第1の側面の情報処理方法、記録媒体に記録されたプログラム、並びに、プログラムは、圧縮符号化映像データの複数のデコーダへの供給を制御する供給制御ステップと、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて供給制御ステップの処理によりデコーダへの供給が制御された圧縮符号化映像データをデコードするデコードステップとを含み、バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、デコードステップの処理では、バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される。   An information processing method according to the first aspect of the present invention, a program recorded on a recording medium, and a program are subjected to a supply control step for controlling the supply of compressed encoded video data to a plurality of decoders and a decoding process. A decoding step of decoding compressed encoded video data whose supply to the decoder is controlled by the processing of the supply control step using the number of bank memories corresponding to the number of pictures included in the processing unit. The I picture and the P picture are held at fixed positions determined by the picture type, and in the decoding step processing, the decoded picture data held in the bank memory is used as a reference image as necessary. Decoding is performed.

本発明の第1の側面においては、圧縮符号化映像データが複数のデコーダへ供給され、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて圧縮符号化映像データがデコードされ、バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される。   In the first aspect of the present invention, compressed encoded video data is supplied to a plurality of decoders, and the compressed encoded video data is used by the number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed. The data is decoded, and in the bank memory, the I picture and the P picture are held at fixed positions determined by the picture type, and the decoded picture data held in the bank memory is used as a reference image as necessary. Used to perform decoding.

本発明の第2の側面の情報処理装置は、圧縮符号化映像データを記憶する記憶手段と、記憶手段により記憶されている圧縮符号化映像データを読み出して出力する読み出し手段と、圧縮符号化映像データをデコードするデコード手段と、デコード手段への圧縮符号化映像データの供給を制御する供給制御手段と、供給制御手段およびデコード手段が実行する処理を制御する制御手段と、制御手段に再生速度を指令する再生速度指令手段とを備え、デコード手段は、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを備えて、デコード処理済のピクチャデータを保持し、制御手段は、IピクチャおよびPピクチャが、バンクメモリのうち、ピクチャタイプにより定められる固定の位置に保持され、バンクメモリに保持されているデコード処理済のピクチャデータが、必要に応じて参照画像として利用されるように、デコード手段によるデコード処理を制御する。   An information processing apparatus according to a second aspect of the present invention includes a storage unit that stores compressed encoded video data, a read unit that reads and outputs the compressed encoded video data stored in the storage unit, and a compressed encoded video Decoding means for decoding data, supply control means for controlling the supply of compressed encoded video data to the decoding means, control means for controlling processing executed by the supply control means and the decoding means, and a playback speed for the control means A playback speed command means for commanding, and the decoding means includes a number of bank memories corresponding to the number of pictures included in a processing unit in which decoding processing is executed, holds decoded picture data, and control means The I picture and P picture are held in fixed positions determined by the picture type in the bank memory, Decoding the processed picture data held in the, to be utilized as a reference image as needed, to control the decoding processing by the decoding means.

本発明の第2の側面の情報処理方法、記録媒体に記録されたプログラム、並びに、プログラムは、記憶部に記憶された圧縮符号化映像データを読み出す読み出しステップと、再生速度の指令を供給する再生速度指令供給ステップと、再生速度指令供給ステップの処理により供給された再生速度の指令を取得する再生速度指令取得ステップと、圧縮符号化映像データの複数のデコーダへの供給を制御する供給制御ステップと、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて供給制御ステップの処理によりデコーダへの供給が制御された圧縮符号化映像データをデコードするデコードステップとを含み、バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、デコードステップの処理では、バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される。   An information processing method according to the second aspect of the present invention, a program recorded on a recording medium, and a program for reading out compressed encoded video data stored in a storage unit and a playback speed command A speed command supply step, a playback speed command acquisition step for acquiring a playback speed command supplied by the processing of the playback speed command supply step, and a supply control step for controlling the supply of compressed encoded video data to a plurality of decoders. A decoding step for decoding the compression-coded video data whose supply to the decoder is controlled by the processing of the supply control step using the number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed. In the bank memory, the I picture and the P picture have fixed positions determined by the picture type. Is held, the process of decoding steps are used as the reference image picture data of the decoded processed held in the bank memory is needed, the decoding is performed.

本発明の第2の側面においては、圧縮符号化映像データが記憶され、記憶されている圧縮符号化映像データが読み出されて出力される。また、圧縮符号化映像データが複数のデコーダへ供給され、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて圧縮符号化映像データがデコードされ、バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される。   In the second aspect of the present invention, compressed encoded video data is stored, and the stored compressed encoded video data is read and output. The compressed encoded video data is supplied to a plurality of decoders, and the compressed encoded video data is decoded using a number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed. The I picture and the P picture are held at fixed positions determined by the picture type, and the decoded picture data held in the bank memory is used as a reference picture as necessary, and decoding is executed. The

本発明の第3の側面の情報処理装置は、圧縮符号化映像データをデコードするデコード手段と、デコード手段への圧縮符号化映像データの供給を制御する供給制御手段と、供給制御手段およびデコード手段が実行する処理を制御する制御手段とを備え、デコード手段は、所定数のバンクメモリを備えて、デコード処理済のピクチャデータを保持し、圧縮符号化映像データは、GOPで構成されており、制御手段は、1GOPの圧縮符号化映像データに含まれるIピクチャまたはPピクチャの数と、バンクメモリの数を比較することにより、GOPを分割または結合して、デコード処理単位を構成し、供給制御手段を制御して、デコード手段にデコード処理単位の圧縮符号化映像データを供給させることができる。   An information processing apparatus according to a third aspect of the present invention includes a decoding unit that decodes compressed encoded video data, a supply control unit that controls the supply of compressed encoded video data to the decoding unit, a supply control unit, and a decoding unit. Control means for controlling the processing executed by the decoding means, the decoding means comprises a predetermined number of bank memories, holds the decoded picture data, and the compression-coded video data is composed of GOP, The control means divides or combines the GOPs by comparing the number of I-pictures or P-pictures included in 1 GOP compression-encoded video data with the number of bank memories to form a decoding processing unit, and supply control By controlling the means, it is possible to supply the decoding means with compressed encoded video data in units of decoding processing.

制御手段には、バンクメモリの数から3を引いた値より多い数のIピクチャまたはPピクチャを含むGOPの供給を受けた場合、供給されたGOPを分割してバンクメモリの数から2を引いた値より少ない数のIピクチャまたはPピクチャを含むデコード処理単位を構成し、供給制御手段を制御して、デコード手段にデコード処理単位の圧縮符号化映像データを供給させることができる。   When the control means receives a GOP including a larger number of I or P pictures than the number obtained by subtracting 3 from the number of bank memories, the supplied GOP is divided and 2 is subtracted from the number of bank memories. It is possible to configure a decoding processing unit including a smaller number of I pictures or P pictures, and to control the supply control means so that the decoding means supplies compressed encoded video data of the decoding processing unit.

制御手段には、分割されて生成されたデコード処理単位に含まれるIピクチャまたはPピクチャの数の合計が、デコード処理単位より時間的に1つ前のGOPまたはデコード処理単位に含まれるIピクチャまたはPピクチャの数の合計よりも所定の数以上多くならないように、デコード単位を構成させるようにすることができる。   In the control means, the sum of the number of I pictures or P pictures included in the decoded processing unit generated by division is the I picture included in the GOP or decoding processing unit immediately before the decoding processing unit or The decoding unit can be configured so as not to exceed a predetermined number more than the total number of P pictures.

制御手段には、バンクメモリの数から3を引いた値より少ない数のIピクチャまたはPピクチャを含む第1のGOPの供給を受けた場合、時間的に第1のGOPと連続する第2のGOPの構成を検出し、第1のGOPと第2のGOPとに含まれるIピクチャまたはPピクチャの数の合計がバンクメモリの数から3を引いた値より少ない数である場合、第1のGOPと第2のGOPとを結合してデコード処理単位を構成し、供給制御手段を制御して、デコード手段にデコード処理単位の圧縮符号化映像データを供給させることができる。   When receiving the first GOP including the number of I pictures or P pictures smaller than the value obtained by subtracting 3 from the number of bank memories, the control means receives the second GOP that is temporally continuous with the first GOP. If the GOP configuration is detected and the total number of I or P pictures included in the first GOP and the second GOP is less than the value obtained by subtracting 3 from the number of bank memories, the first The GOP and the second GOP can be combined to form a decoding processing unit, and the supply control means can be controlled to cause the decoding means to supply compressed encoded video data in the decoding processing unit.

制御手段には、デコード処理単位に含まれるIピクチャまたはPピクチャの数の合計が、デコード処理単位より時間的に1つ前のGOPに含まれるIピクチャまたはPピクチャの数の合計よりも所定の数以上多くならないように、デコード単位を構成させるようにすることができる。   The control means is configured such that the total number of I pictures or P pictures included in the decoding processing unit is a predetermined amount higher than the total number of I pictures or P pictures included in the GOP immediately before the decoding processing unit. The decoding unit can be configured so as not to exceed a number.

制御手段には、第1のGOP、および、時間的に第1のGOPと連続する第2のGOPの構成を検出し、第1のGOPと第2のGOPとに含まれるIピクチャまたはPピクチャの数の合計がバンクメモリの数から3を引いた値の2倍より少ない数である場合、第1のGOPと第2のGOPとを結合した後分割して、バンクメモリの数から2を引いた値より少ない数のIピクチャまたはPピクチャを含む第1のデコード処理単位および第2のデコード処理単位を構成し、供給制御手段を制御して、デコード手段に第1のデコード処理単位および第2のデコード処理単位の圧縮符号化映像データを個別に供給させることができる。   The control means detects the configuration of the first GOP and the second GOP that is temporally continuous with the first GOP, and includes an I picture or a P picture included in the first GOP and the second GOP. When the sum of the numbers is less than twice the value obtained by subtracting 3 from the number of bank memories, the first GOP and the second GOP are combined and then divided to obtain 2 from the number of bank memories. The first decoding processing unit and the second decoding processing unit including a smaller number of I pictures or P pictures than the subtracted value are configured, the supply control means is controlled, and the first decoding processing unit and the second decoding processing unit are controlled by the decoding means. It is possible to individually supply the compression encoded video data of two decoding processing units.

制御手段には、デコード処理単位に含まれるIピクチャまたはPピクチャの数の合計が、デコード処理単位より時間的に1つ前のデコード処理単位、または、GOPに含まれるIピクチャまたはPピクチャの数の合計よりも所定の数以上多くならないように、デコード単位を構成させるようにすることができる。   In the control means, the total number of I pictures or P pictures included in the decoding processing unit is the number of I processing pictures or P pictures included in the decoding processing unit that is one time earlier than the decoding processing unit or GOP. The decoding unit can be configured so as not to exceed a predetermined number more than the total.

制御手段には、デコード手段から出力されるデコード済みのピクチャのうち、処理単位の先頭で出力されるピクチャがIピクチャまたはPピクチャであった場合、デコード手段によるデコードの開始タイミングと、デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第1の所定数のピクチャ分ずれるようにデコード手段を制御させるようにすることができる。   When the picture outputted at the head of the processing unit among the decoded pictures outputted from the decoding means is an I picture or a P picture, the control means outputs the decoding start timing by the decoding means and the decoding means. The decoding means can be controlled so that the timing at which the output of the decoded picture is started is shifted by the first predetermined number of pictures.

第1の所定数は、IピクチャとPピクチャの合計数に1を加えた数であるものとすることができる。   The first predetermined number may be a number obtained by adding 1 to the total number of I pictures and P pictures.

制御手段には、デコード手段から出力されるデコード済みのピクチャのうち、処理単位の先頭で出力されるピクチャがBピクチャであった場合、デコード手段によるデコードの開始タイミングと、デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第2の所定数のピクチャ分ずれるようにデコード手段を制御させるようにすることができる。   When the picture output at the head of the processing unit among the decoded pictures output from the decoding means is a B picture, the control means outputs the decoding start timing by the decoding means and the decoded picture from the decoding means. The decoding means can be controlled so that the timing at which picture output is started is shifted by a second predetermined number of pictures.

第2の所定数は、IピクチャとPピクチャの合計数に2を加えた数であるものとすることができる。   The second predetermined number may be a number obtained by adding 2 to the total number of I pictures and P pictures.

制御手段には、制御手段に再生速度及び再生方向を指令する再生速度指令手段により指令された再生速度および再生方向が、通常再生速度、かつ、再生方向が正方向であった場合、デコード手段によるデコードの開始タイミングと、デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第1の所定数のピクチャ分ずれるようにデコード手段を制御させるようにすることができる。   When the playback speed and the playback direction commanded by the playback speed command means for commanding the playback speed and playback direction to the control means are the normal playback speed and the playback direction is the positive direction, the control means The decoding means can be controlled such that the decoding start timing and the timing at which the decoding means starts outputting the decoded picture are shifted by the first predetermined number of pictures.

第1の所定数は、IピクチャとPピクチャの合計数に1を加えた数であるものとすることができる。   The first predetermined number may be a number obtained by adding 1 to the total number of I pictures and P pictures.

制御手段には、再生速度指令手段により指令された再生速度および再生方向が、通常再生速度、かつ、再生方向が逆方向であった場合、デコード手段によるデコードの開始タイミングと、デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第2の所定数のピクチャ分ずれるようにデコード手段を制御させるようにすることができる。   When the playback speed and playback direction instructed by the playback speed command means are the normal playback speed and the playback direction is the reverse direction, the control means has the decoding start timing by the decoding means and the decoding means already decoded. The decoding means can be controlled so that the timing at which the output of the current picture starts is shifted by a second predetermined number of pictures.

第2の所定数は、IピクチャとPピクチャの合計数に2を加えた数であるものとすることができる。   The second predetermined number may be a number obtained by adding 2 to the total number of I pictures and P pictures.

本発明の第3の側面の情報処理方法、記録媒体に記録されたプログラム、並びに、プログラムは、圧縮符号化映像データに含まれるGOPの構成を検出する検出ステップと、1GOPの圧縮符号化映像データに含まれるIピクチャまたはPピクチャの数と、デコード処理済のピクチャデータを保持するためのバンクメモリの数とを比較する比較ステップと、比較ステップの処理による比較結果に基づいて、GOPを分割または結合して、デコード処理単位を構成するデコード処理単位構成ステップと、デコード処理単位構成ステップの処理により構成されたデコード処理単位ごとにデコード処理を行うデコード処理ステップとを含む。   An information processing method according to a third aspect of the present invention, a program recorded on a recording medium, and a program comprising: a detection step for detecting a configuration of a GOP included in compressed encoded video data; and a compressed encoded video data of 1 GOP A comparison step for comparing the number of I-pictures or P-pictures included in the image and the number of bank memories for holding the decoded picture data, and dividing the GOP based on the comparison result of the processing of the comparison step The decoding processing unit configuration step is combined to form a decoding processing unit, and the decoding processing step is performed to perform decoding processing for each decoding processing unit configured by the processing of the decoding processing unit configuration step.

本発明の第3の側面においては、圧縮符号化映像データに含まれるGOPの構成が検出され、1GOPの圧縮符号化映像データに含まれるIピクチャまたはPピクチャの数と、デコード処理済のピクチャデータを保持するためのバンクメモリの数とが比較され、比較結果に基づいて、GOPを分割または結合して、デコード処理単位が構成され、デコード処理単位ごとにデコード処理が実行される。   In the third aspect of the present invention, the configuration of the GOP included in the compression encoded video data is detected, and the number of I pictures or P pictures included in the compression encoded video data of 1 GOP and the decoded picture data Are compared with the number of bank memories for holding the GOP, and based on the comparison result, the GOP is divided or combined to form a decoding processing unit, and the decoding processing is executed for each decoding processing unit.

本発明の第1の側面または第2の側面によれば、圧縮符号化データの高速再生、逆転再生、高速逆転再生を行うことができる。特に、IピクチャおよびPピクチャが、ピクチャ数に応じた数のバンクメモリのピクチャタイプにより定められる固定の位置に保持されるようにしたので、複雑なバンクメモリの制御を行うことなく、圧縮符号化データの高速再生、逆転再生、高速逆転再生を行うことができる。   According to the first aspect or the second aspect of the present invention, high-speed reproduction, reverse reproduction, and high-speed reverse reproduction of compressed and encoded data can be performed. In particular, the I picture and the P picture are held at fixed positions determined by the number of picture types of the bank memory corresponding to the number of pictures, so that compression coding can be performed without performing complicated bank memory control. High-speed playback, reverse playback, and high-speed reverse playback of data can be performed.

本発明の第3の側面によれば、圧縮符号化データをデコードすることができ、特に、バンクメモリの数に基づいてGOPが分割または結合されてデコード処理単位が構成されるので、例えば、複数のデコーダを用いるときに、デコード遅れやデコードされないピクチャの発生を防止することができる。   According to the third aspect of the present invention, compression-encoded data can be decoded. In particular, a GOP is divided or combined based on the number of bank memories to form a decoding processing unit. When using this decoder, it is possible to prevent the occurrence of decoding delay and undecoded pictures.

以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。   Embodiments of the present invention will be described below. Correspondences between the configuration requirements of the present invention and the embodiments described in the detailed description of the present invention are exemplified as follows. This description is to confirm that the embodiments supporting the present invention are described in the detailed description of the invention. Accordingly, although there are embodiments that are described in the detailed description of the invention but are not described here as embodiments corresponding to the constituent elements of the present invention, It does not mean that the embodiment does not correspond to the configuration requirements. Conversely, even if an embodiment is described here as corresponding to a configuration requirement, that means that the embodiment does not correspond to a configuration requirement other than the configuration requirement. It's not something to do.

本発明の第1の側面の情報処理装置(例えば、図1の再生装置)は、圧縮符号化映像データをデコードするデコード手段(例えば、図1のデコーダ22乃至デコーダ24)と、デコード手段への圧縮符号化映像データの供給を制御する供給制御手段(例えば、図1のPCIブリッジ17)と、供給制御手段およびデコード手段が実行する処理を制御する制御手段(例えば、図1のCPU20)とを備え、デコード手段は、デコード処理が実行される処理単位(例えば、正方向再生においては、コーディングオーダで、第1のGOPの先頭の2つのBピクチャ以外の13ピクチャと、その後ろの第2のGOPの先頭のIBBの3ピクチャとの合計16ピクチャ、逆方向再生においては、第2のGOPの先頭の2つのBピクチャ以外の13ピクチャと、逆の表示順においてその前に表示される第3のGOPの先頭のIBBの3ピクチャとの合計16ピクチャ)に含まれるピクチャ数に応じた数のバンクメモリ(例えば、図2のビデオバンクメモリ82)を備えて、デコード処理済のピクチャデータを保持し、制御手段は、IピクチャおよびPピクチャが、バンクメモリのうち、ピクチャタイプにより定められる固定の位置に保持され、バンクメモリに保持されているデコード処理済のピクチャデータが、必要に応じて参照画像として利用されるように、デコード手段によるデコード処理を制御する。   The information processing apparatus according to the first aspect of the present invention (for example, the playback apparatus in FIG. 1) includes a decoding unit (for example, the decoder 22 to the decoder 24 in FIG. 1) for decoding the compression-encoded video data and a decoding unit. Supply control means (for example, the PCI bridge 17 in FIG. 1) for controlling the supply of compressed encoded video data, and control means (for example, the CPU 20 in FIG. 1) for controlling processing executed by the supply control means and the decoding means. The decoding means includes a processing unit in which decoding processing is executed (for example, in forward reproduction, in coding order, 13 pictures other than the first two B pictures of the first GOP, and the second picture after the second picture. 16 pictures in total with 3 pictures of the first IBB of the GOP, and in reverse playback, 13 pictures other than the first 2 B pictures of the second GOP And the number of bank memories (for example, the video bank of FIG. 2) corresponding to the number of pictures included in the first GBB of the first IBB of the third GOP displayed in the reverse display order. A memory 82) for holding the decoded picture data, and the control means holds the I picture and the P picture in a fixed position determined by the picture type in the bank memory and held in the bank memory. The decoding process by the decoding means is controlled so that the decoded picture data is used as a reference image as necessary.

制御手段に再生速度を指令する再生速度指令手段(例えば、図1のCPU11)を更に備えさせることができ、制御手段は、再生速度指令手段により指令された再生速度に基づいて、処理単位に含まれるピクチャのうち、デコード手段から出力されるピクチャを選択することができ、デコード手段は、デコード処理を実行するデコード処理実行手段(図2のデコード処理部77)と、デコード処理実行手段へのピクチャの供給を制御するピクチャ供給制御手段(例えば、図2のエレメンタリストリームアドレス決定部73)とを備えることができ、ピクチャ供給制御手段は、制御手段の制御に基づいて、処理単位に含まれるピクチャのうち、IピクチャおよびPピクチャ、並びに、デコード手段から出力されるピクチャとして選択されたBピクチャをデコード処理手段へ供給することができ、デコード処理手段は、制御手段の制御に基づいて、ピクチャ供給制御手段により供給されたそれぞれのピクチャをデコードするとともに、デコード手段から出力されるピクチャとして選択されたピクチャを出力することができる。   The control means can be further provided with a playback speed command means (for example, the CPU 11 in FIG. 1) for instructing the playback speed, and the control means is included in the processing unit based on the playback speed commanded by the playback speed command means. The picture output from the decoding means can be selected from among the pictures to be decoded. The decoding means performs decoding processing execution means (decoding processing unit 77 in FIG. 2) for executing decoding processing, and pictures to the decoding processing execution means. Picture supply control means (for example, the elementary stream address determination unit 73 in FIG. 2) for controlling the supply of the picture, and the picture supply control means is a picture included in the processing unit based on the control of the control means. Of these, the I picture and the P picture, and the B picture selected as the picture output from the decoding means. The decoding processing means decodes each picture supplied by the picture supply control means and selects it as a picture output from the decoding means based on the control of the control means. Can be output.

デコード手段を複数備えることができ、複数のデコード手段から出力された非圧縮のデータの供給を受け、供給された非圧縮のデータを切り替えて選択的に出力する出力切り替え手段(例えば、図1のセレクタ25)を更に備えることができ、制御手段は、出力切り替え手段による処理を更に制御することができる。   A plurality of decoding means can be provided. The output switching means (for example, as shown in FIG. 1) receives supply of uncompressed data output from the plurality of decoding means, and selectively outputs the supplied uncompressed data. A selector 25) can be further provided, and the control means can further control the processing by the output switching means.

本発明の第1の側面の情報処理方法、記録媒体に記録されたプログラム、並びに、プログラムは、圧縮符号化映像データの複数のデコーダ(例えば、図1のデコーダ22乃至デコーダ24)への供給を制御する供給制御ステップ(例えば、図15のステップS105の処理)と、デコード処理が実行される処理単位(例えば、正方向再生においては、コーディングオーダで、第1のGOPの先頭の2つのBピクチャ以外の13ピクチャと、その後ろの第2のGOPの先頭のIBBの3ピクチャとの合計16ピクチャ、逆方向再生においては、第2のGOPの先頭の2つのBピクチャ以外の13ピクチャと、逆の表示順においてその前に表示される第3のGOPの先頭のIBBの3ピクチャとの合計16ピクチャ)に含まれるピクチャ数に応じた数のバンクメモリ(例えば、図2のビデオバンクメモリ82)を用いて供給制御ステップの処理によりデコーダへの供給が制御された圧縮符号化映像データをデコードするデコードステップ(例えば、図18のステップS192またはステップS193の処理)とを含み、バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、デコードステップの処理では、バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される。   The information processing method according to the first aspect of the present invention, the program recorded on the recording medium, and the program supply the compressed encoded video data to a plurality of decoders (for example, the decoder 22 to the decoder 24 in FIG. 1). Supply control step to be controlled (for example, the process of step S105 in FIG. 15) and a processing unit in which the decoding process is executed (for example, in forward reproduction, in the coding order, the first two B pictures of the first GOP) 16 pictures in total, including 13 pictures other than the first 3 pictures of the IBB at the beginning of the second GOP, and in reverse playback, 13 pictures other than the first 2 B pictures in the second GOP are reversed. According to the number of pictures included in a total of 16 pictures including the first three IBB pictures of the third GOP displayed in the display order of A decoding step (for example, step S192 in FIG. 18) for decoding the compressed encoded video data whose supply to the decoder is controlled by the processing in the supply control step using a number of bank memories (for example, the video bank memory 82 in FIG. 2). Or the processing in step S193), and the bank memory holds the I picture and the P picture at fixed positions determined by the picture type. In the decoding step processing, the decoded processing has been held in the bank memory. The picture data is used as a reference image as necessary, and decoding is executed.

本発明の第2の側面の情報処理装置(例えば、図1の再生装置)は、圧縮符号化映像データを記憶する記憶手段(例えば、図1のHDD16)と、記憶手段により記憶されている前記圧縮符号化映像データを読み出して出力する読み出し手段(例えば、図1のサウスブリッジ15)と、圧縮符号化映像データをデコードするデコード手段(例えば、図1のデコーダ22乃至デコーダ24)と、デコード手段への圧縮符号化映像データの供給を制御する供給制御手段(例えば、図1のPCIブリッジ17)と、供給制御手段およびデコード手段が実行する処理を制御する制御手段(例えば、図1のCPU20)と、制御手段に再生速度を指令する再生速度指令手段(例えば、図1のCPU11)とを備え、デコード手段は、デコード処理が実行される処理単位(例えば、正方向再生においては、コーディングオーダで、第1のGOPの先頭の2つのBピクチャ以外の13ピクチャと、その後ろの第2のGOPの先頭のIBBの3ピクチャとの合計16ピクチャ、逆方向再生においては、第2のGOPの先頭の2つのBピクチャ以外の13ピクチャと、逆の表示順においてその前に表示される第3のGOPの先頭のIBBの3ピクチャとの合計16ピクチャ)に含まれるピクチャ数に応じた数のバンクメモリ(例えば、図2のビデオバンクメモリ82)を備えて、デコード処理済のピクチャデータを保持し、制御手段は、IピクチャおよびPピクチャが、バンクメモリのうち、ピクチャタイプにより定められる固定の位置に保持され、バンクメモリに保持されているデコード処理済のピクチャデータが、必要に応じて参照画像として利用されるように、デコード手段によるデコード処理を制御する。   An information processing apparatus according to the second aspect of the present invention (for example, the playback apparatus in FIG. 1) is stored in a storage unit (for example, HDD 16 in FIG. 1) for storing compression-encoded video data and the storage unit. Reading means (for example, the south bridge 15 in FIG. 1) that reads and outputs the compression-encoded video data, decoding means (for example, the decoders 22 to 24 in FIG. 1) for decoding the compression-encoded video data, and decoding means Control means (for example, PCI bridge 17 in FIG. 1) for controlling the supply of compression-encoded video data to the computer, and control means (for example, CPU 20 in FIG. 1) for controlling processing executed by the supply control means and the decoding means. And a playback speed command means (for example, the CPU 11 in FIG. 1) for commanding the playback speed to the control means. Processing unit (for example, in forward reproduction, in coding order, the total of 13 pictures other than the first two B pictures of the first GOP and the three pictures of the first IBB of the second GOP after that) In 16-picture reverse playback, 13 pictures other than the first two B pictures of the second GOP and three pictures of the first IBB of the third GOP displayed before in the reverse display order The number of bank memories (for example, the video bank memory 82 in FIG. 2) corresponding to the number of pictures included in the total 16 pictures) is held, and the decoded picture data is held. Is held in a fixed position determined by the picture type in the bank memory, and the decoded-processed pin held in the bank memory. Cha data is to be utilized as a reference image as needed, to control the decoding processing by the decoding means.

本発明の第2の側面の情報処理方法、記録媒体に記録されたプログラム、並びに、プログラムは、記憶部に記憶された前記圧縮符号化映像データを読み出す読み出しステップ(例えば、図3のステップS1の処理)と、再生速度の指令を供給する再生速度指令供給ステップ(例えば、図3のステップS5またはステップS11の処理)と、再生速度の指令を取得する再生速度指令取得ステップ(例えば、図15のステップS101の処理)と、圧縮符号化映像データの複数のデコーダ(例えば、図1のデコーダ22乃至デコーダ24)への供給を制御する供給制御ステップ(例えば、図15のステップS105の処理)と、デコード処理が実行される処理単位(例えば、正方向再生においては、コーディングオーダで、第1のGOPの先頭の2つのBピクチャ以外の13ピクチャと、その後ろの第2のGOPの先頭のIBBの3ピクチャとの合計16ピクチャ、逆方向再生においては、第2のGOPの先頭の2つのBピクチャ以外の13ピクチャと、逆の表示順においてその前に表示される第3のGOPの先頭のIBBの3ピクチャとの合計16ピクチャ)に含まれるピクチャ数に応じた数のバンクメモリ(例えば、図2のビデオバンクメモリ82)を用いて供給制御ステップの処理によりデコーダへの供給が制御された圧縮符号化映像データをデコードするデコードステップ(例えば、図18のステップS192またはステップS193の処理)とを含み、バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、デコードステップの処理では、バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される。   An information processing method according to the second aspect of the present invention, a program recorded on a recording medium, and a program read out the compressed encoded video data stored in the storage unit (for example, in step S1 of FIG. 3). Processing), a playback speed command supply step for supplying a playback speed command (for example, the process of step S5 or step S11 in FIG. 3), and a playback speed command acquisition step for acquiring the playback speed command (for example, FIG. 15). Processing in step S101), a supply control step (for example, processing in step S105 in FIG. 15) for controlling the supply of compressed encoded video data to a plurality of decoders (for example, the decoder 22 to the decoder 24 in FIG. 1), The processing unit in which the decoding process is executed (for example, in forward reproduction, in the coding order, at the head of the first GOP A total of 16 pictures including 13 pictures other than the B picture and 3 pictures of the IBB at the beginning of the second GOP behind the 13 pictures. In reverse playback, 13 pictures other than the 2 B pictures at the beginning of the second GOP And the number of bank memories (for example, the video bank of FIG. 2) corresponding to the number of pictures included in the first GBB of the first IBB of the third GOP displayed in the reverse display order. And a decoding step (for example, the processing in step S192 or step S193 in FIG. 18) for decoding the compressed encoded video data whose supply to the decoder is controlled by the processing in the supply control step using the memory 82) The I picture and P picture are held at fixed positions determined by the picture type. Tsu in processing flop is used as a reference image picture data of the decoded processed held in the bank memory is needed, the decoding is performed.

本発明の第3の側面の情報処理装置(例えば、図1の再生装置)は、圧縮符号化映像データをデコードする情報処理装置であって、圧縮符号化映像データをデコードするデコード手段(例えば、図1のデコーダ22乃至デコーダ24)と、デコード手段への圧縮符号化映像データの供給を制御する供給制御手段(例えば、図1のPCIブリッジ17)と、供給制御手段およびデコード手段が実行する処理を制御する制御手段(例えば、図1のCPU20)とを備え、デコード手段は、所定数のバンクメモリ(例えば、図2のビデオバンクメモリ82)を備えて、デコード処理済のピクチャデータを保持し、圧縮符号化映像データは、GOPで構成されており、制御手段は、1GOPの圧縮符号化映像データに含まれるIピクチャまたはPピクチャの数と、バンクメモリの数を比較することにより、GOPを分割または結合して、デコード処理単位を構成し、供給制御手段を制御して、デコード手段にデコード処理単位の圧縮符号化映像データを供給させる。   An information processing apparatus (for example, the reproduction apparatus in FIG. 1) according to the third aspect of the present invention is an information processing apparatus that decodes compression-encoded video data, and includes decoding means (for example, a decoding unit that decodes compression-encoded video data). Decoder 22 through decoder 24) in FIG. 1, supply control means (for example, PCI bridge 17 in FIG. 1) for controlling the supply of compressed encoded video data to the decode means, and processing executed by the supply control means and the decode means Control means (for example, CPU 20 in FIG. 1), and the decoding means has a predetermined number of bank memories (for example, video bank memory 82 in FIG. 2) to hold the decoded picture data. The compression-encoded video data is composed of GOPs, and the control means controls the I picture or P picture included in the 1 GOP compression-encoded video data. The GOP is divided or combined by comparing the number of data and the number of bank memories to form a decoding processing unit, the supply control unit is controlled, and the decoding unit is supplied with compressed encoded video data. To supply.

本発明の第3の側面の情報処理方法、記録媒体に記録されたプログラム、並びに、プログラムは、圧縮符号化映像データに含まれるGOPの構成を検出する検出ステップ(例えば、図60のステップS603)と、1GOPの圧縮符号化映像データに含まれるIピクチャまたはPピクチャの数と、デコード処理済のピクチャデータを保持するためのバンクメモリの数とを比較する比較ステップ(例えば、図60のステップS604、ステップS605、ステップS607、または、ステップS609)と、比較ステップの処理による比較結果に基づいて、GOPを分割または結合して、デコード処理単位を構成するデコード処理単位構成ステップ(例えば、図60のステップS606、ステップS608、ステップS610、または、ステップS611)と、デコード処理単位構成ステップの処理により構成されたデコード処理単位ごとにデコード処理を行うデコード処理ステップ(例えば、図60のステップS612)とを含む。   An information processing method according to the third aspect of the present invention, a program recorded on a recording medium, and a program detecting step (for example, step S603 in FIG. 60) for detecting the configuration of a GOP included in compression-encoded video data And a comparison step (for example, step S604 in FIG. 60) for comparing the number of I pictures or P pictures included in 1 GOP compression-encoded video data with the number of bank memories for holding decoded picture data. , Step S605, step S607, or step S609) and a decoding processing unit configuration step (for example, FIG. 60) that divides or combines GOPs to form a decoding processing unit based on the comparison result by the processing of the comparison step. Step S606, Step S608, Step S610, or Step Including the S611), and decoding processing step of performing a decoding process for each decoding processing unit constituted by the processing of the decoding processing unit configured step (e.g., step S612 in FIG. 60).

以下、図を参照して、本発明の実施の形態について説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は本発明を適用した再生装置1のハードウェア構成を示すブロック図である。   FIG. 1 is a block diagram showing a hardware configuration of a playback apparatus 1 to which the present invention is applied.

CPU(Central Processing Unit)11は、ノースブリッジ12に接続され、例えば、HDD(Hard disk Drive)16に記憶されているデータの読み出しなどの処理を制御したり、CPU20が実行するデコードのスケジューリング、デコードおよび表示出力の制御などの処理の開始、変更、または終了を指令するためのコマンドを生成し、出力する。ノースブリッジ12は、PCIバス(Peripheral Component Interconnect/Interface)14に接続され、例えば、CPU11の制御に基づいて、サウスブリッジ15を介して、HDD16に記憶されているデータの供給を受けて、PCIバス14、PCIブリッジ17を介して、メモリ18に供給する。また、ノースブリッジ12は、メモリ13とも接続されており、CPU11の処理に必要なデータを授受する。   A CPU (Central Processing Unit) 11 is connected to the north bridge 12 and controls processing such as reading of data stored in an HDD (Hard disk Drive) 16, scheduling of decoding executed by the CPU 20, decoding In addition, a command for instructing start, change, or end of processing such as display output control is generated and output. The north bridge 12 is connected to a PCI bus (Peripheral Component Interconnect / Interface) 14. For example, under the control of the CPU 11, the north bridge 12 receives supply of data stored in the HDD 16 via the south bridge 15 and receives the PCI bus. 14, and supplied to the memory 18 via the PCI bridge 17. The north bridge 12 is also connected to the memory 13, and exchanges data necessary for the processing of the CPU 11.

メモリ13は、CPU11が実行する処理に必要なデータを保存することが可能な、例えば、DDR(Double Data Rate)等の高速アクセス可能な記憶用のメモリである。サウスブリッジ15は、HDD16のデータの書き込みおよび読み出しを制御する。HDD16には、圧縮符号化されたストリームデータが記憶されている。   The memory 13 is a storage memory that can store data necessary for processing executed by the CPU 11 and that can be accessed at high speed, such as DDR (Double Data Rate). The south bridge 15 controls writing and reading of data in the HDD 16. The HDD 16 stores compressed and encoded stream data.

PCIブリッジ17は、コマンドバッファ31およびリザルトバッファ32を内部に備えるとともに、CPU11の制御に基づいてHDD16から読み出されたストリームデータをバッファリングするメモリ18が接続されている。PCIブリッジ17は、CPU11の制御に基づいてHDD16から読み出されたストリームデータを、メモリ18に供給して保存させることができるとともに、CPU20の制御に基づいて、メモリ18に保存されているストリームデータを読み出して、デコーダ22乃至デコーダ24に供給する。また、PCIブリッジ17は、PCIバス14またはコントロールバス19を介したコマンドまたはリザルトに対応する制御信号の授受を制御する。   The PCI bridge 17 includes a command buffer 31 and a result buffer 32 therein, and is connected to a memory 18 that buffers stream data read from the HDD 16 under the control of the CPU 11. The PCI bridge 17 can supply stream data read from the HDD 16 based on the control of the CPU 11 to the memory 18 and store the stream data, and stream data stored in the memory 18 based on the control of the CPU 20. Is supplied to the decoders 22 to 24. The PCI bridge 17 controls transmission / reception of a control signal corresponding to a command or a result via the PCI bus 14 or the control bus 19.

コマンドバッファ31は、CPU11から、ノースブリッジ12およびPCIバス14を介してコマンドの書き込みを受けるとともに、CPU20から、コントロールバス19を介して、書き込まれているコマンドが読み出されるようになされている。また、リザルトバッファ32は、コントロールバス19を介して、CPU20によりコマンドに対するリザルトの書き込みを受けるとともに、CPU11から、ノースブリッジ12およびPCIバス14を介して、書き込まれているリザルトが読み取られるようになされている。   The command buffer 31 receives commands written from the CPU 11 via the north bridge 12 and the PCI bus 14, and reads written commands from the CPU 20 via the control bus 19. The result buffer 32 receives a result written to the command by the CPU 20 via the control bus 19 and reads the written result from the CPU 11 via the north bridge 12 and the PCI bus 14. ing.

メモリ18は、PCIブリッジ17の制御に基づいて、HDD16により読み出された、圧縮符号化されたストリームデータを記憶するものであり、例えば、SDRAM(Synchronous Dynamic Random Access Memory)等で構成されている。   The memory 18 stores compression-encoded stream data read by the HDD 16 based on the control of the PCI bridge 17 and is configured by, for example, SDRAM (Synchronous Dynamic Random Access Memory). .

CPU20は、コントロールバス19を介して、CPU11によりPCIブリッジ17のコマンドバッファ31に書き込まれたコマンドを読み取り、このコマンドにしたがって、PCIブリッジ17、デコーダ22乃至デコーダ24、および、セレクタ25が実行する処理を制御する。メモリ21は、CPU20の処理に必要なデータを記憶する。   The CPU 20 reads a command written in the command buffer 31 of the PCI bridge 17 by the CPU 11 via the control bus 19, and processes executed by the PCI bridge 17, the decoders 22 to 24, and the selector 25 according to this command. To control. The memory 21 stores data necessary for the processing of the CPU 20.

デコーダ22乃至デコーダ24は、CPU20の制御に基づいて、供給された圧縮符号化されたストリームデータをデコードし、非圧縮の映像信号を出力する。デコーダ22は、その内部にメモリ41を、デコーダ23は、その内部にメモリ42を、デコーダ24は、その内部にメモリ43を有し、必要に応じて、供給された圧縮符号化されたストリームデータ、または、デコードされた非圧縮の映像信号を保持することが可能なようになされている。また、デコーダ22乃至デコーダ24は、再生装置1に含まれない独立した装置として設けられていても良い。   The decoders 22 to 24 decode the supplied compressed and encoded stream data based on the control of the CPU 20 and output an uncompressed video signal. The decoder 22 has a memory 41 therein, the decoder 23 has a memory 42 therein, and the decoder 24 has a memory 43 therein, and the compressed and encoded stream data supplied as necessary. Alternatively, the decoded uncompressed video signal can be held. The decoders 22 to 24 may be provided as independent devices that are not included in the playback device 1.

セレクタ25は、CPU20による設定に基づいて、デコーダ22乃至デコーダ24により出力された非圧縮のSDI(Serial Digital Interface)データの出力をフレーム精度で切り替えることができる。   The selector 25 can switch the output of uncompressed SDI (Serial Digital Interface) data output by the decoder 22 to the decoder 24 with frame accuracy based on the setting by the CPU 20.

なお、図1の再生装置1は、1つの装置として構成されていても良いし、複数の装置によって構成されるようにしても良い。例えば、図1の再生装置のうち、CPU11、ノースブリッジ12、メモリ13、サウスブリッジ15、および、HDD16の部分が、パーソナルコンピュータの構成のうちの一部であるとし、PCIカード、PCI−Expressカードなどの拡張カード、または、拡張ボードに、PCIバス14、PCIブリッジ17、メモリ18、コントロールバス19、CPU20、メモリ21、デコーダ22乃至デコーダ24、および、セレクタ25の機能を備えさせ、パーソナルコンピュータに拡張カードを装着して再生装置1として機能するようにしても良い。また、これらを、さらに複数の装置に分割して、再生装置1を構成するようにしても良い。   Note that the playback device 1 in FIG. 1 may be configured as a single device or may be configured by a plurality of devices. For example, in the playback device of FIG. 1, the CPU 11, the north bridge 12, the memory 13, the south bridge 15, and the HDD 16 are assumed to be a part of the configuration of the personal computer. An expansion card or expansion board such as PCI bus 14, PCI bridge 17, memory 18, control bus 19, CPU 20, memory 21, decoder 22 to decoder 24, and selector 25 are provided with a personal computer. You may make it function as the reproducing | regenerating apparatus 1 by attaching an expansion card. Further, these may be further divided into a plurality of devices to constitute the playback device 1.

次に、再生装置1の動作について説明する。   Next, the operation of the playback device 1 will be described.

HDD16には、MPEGのLong GOP方式で圧縮された圧縮映像のデータが記憶されている。   The HDD 16 stores compressed video data compressed by the MPEG Long GOP method.

CPU11は、ノースブリッジ12を介して、サウスブリッジ15を制御して、図示しない操作入力部から供給されたユーザの操作入力を基に、HDD16から、圧縮符号化されたストリームデータを読み出させ、ノースブリッジ12、PCIバス14、および、PCIブリッジ17を介して、メモリ18に供給させて記憶させるとともに、再生スピード(再生方向を示す情報を含む)を示す情報、デコード開始コマンド、または、表示開始コマンドなどを、ノースブリッジ12およびPCIバス14を介して、PCIブリッジ17のコマンドバッファ31に書き込む。   The CPU 11 controls the south bridge 15 via the north bridge 12 to read out the compressed and encoded stream data from the HDD 16 based on a user operation input supplied from an operation input unit (not shown). Via the north bridge 12, the PCI bus 14, and the PCI bridge 17, it is supplied to the memory 18 for storage, and information indicating the playback speed (including information indicating the playback direction), a decode start command, or a display start A command or the like is written into the command buffer 31 of the PCI bridge 17 via the north bridge 12 and the PCI bus 14.

CPU20は、PCIブリッジ17のコマンドバッファ31に書き込まれたCPU11からのコマンドを基に、圧縮符号化されたストリームデータのデコードおよび表示のスケジュールを決定する。具体的には、CPU20は、デコードに利用されるデコーダ22乃至デコーダ24の選択、圧縮符号化されたストリームデータのデコーダ22乃至デコーダ24への入力のタイミング、フレームごとのデコードのタイミング、参照画像のバンク位置の設定、デコード時のバンクメモリの割り当て、および、デコードされたピクチャの出力、すなわち、表示のタイミングを決定する。   The CPU 20 determines a schedule for decoding and displaying the compressed and encoded stream data based on the command from the CPU 11 written in the command buffer 31 of the PCI bridge 17. Specifically, the CPU 20 selects the decoders 22 to 24 used for decoding, the input timing of the compression-encoded stream data to the decoders 22 to 24, the decoding timing for each frame, the reference image The setting of the bank position, the allocation of the bank memory at the time of decoding, and the output of the decoded picture, that is, the display timing are determined.

そして、CPU20は、PCIブリッジ17を制御して、メモリ18に記憶されている圧縮符号化されたストリームデータを、決定されたスケジュールに基づいて、デコーダ22乃至デコーダ24のうちのいずれか対応するものに供給させる。   Then, the CPU 20 controls the PCI bridge 17 so that the compressed and encoded stream data stored in the memory 18 corresponds to one of the decoders 22 to 24 based on the determined schedule. To supply.

CPU20は、デコーダ22乃至デコーダ24を制御して、供給された圧縮符号化されたデータをデコードさせる。デコーダ22乃至デコーダ24は、供給された圧縮符号化されたストリームデータをデコードして、非圧縮のSDIデータを生成して、セレクタ25に出力する。   The CPU 20 controls the decoders 22 to 24 to decode the supplied compressed and encoded data. The decoders 22 to 24 decode the supplied compressed and encoded stream data, generate non-compressed SDI data, and output to the selector 25.

そして、CPU20は、セレクタ25を制御して、デコーダ22乃至デコーダ24より出力された非圧縮のSDIデータの出力を切り替えさせる。   Then, the CPU 20 controls the selector 25 to switch the output of uncompressed SDI data output from the decoders 22 to 24.

図2は、デコーダ22乃至デコーダ24の更に詳細な構成を示すブロック図である。   FIG. 2 is a block diagram showing a more detailed configuration of the decoders 22 to 24. As shown in FIG.

入力処理部71は、PCIブリッジ17から供給された圧縮符号化されたストリームデータをメモリコントローラ74に供給して入力バッファ75に保存させるとともに、供給されたストリームデータから、ピクチャ単位で、先頭番地、データサイズ、ピクチャヘッダ情報、Qマトリクスなどを取得して、アドレス管理テーブル72に供給する。   The input processing unit 71 supplies the compression-encoded stream data supplied from the PCI bridge 17 to the memory controller 74 and stores it in the input buffer 75. From the supplied stream data, the start address, The data size, picture header information, Q matrix, etc. are acquired and supplied to the address management table 72.

アドレス管理テーブル72は、入力処理部71から供給された、ピクチャ単位の先頭番地、データサイズ、ピクチャヘッダ情報、Qマトリクスなどの情報を、テーブルIDにより区別可能なテーブル情報として、それぞれ、ピクチャ別に保持する。   The address management table 72 stores information such as the head address in units of pictures, data size, picture header information, and Q matrix supplied from the input processing unit 71 as table information that can be distinguished by table ID, for each picture. To do.

エレメンタリストリームアドレス決定部73は、CPU20からコントロールバス19を介して供給される制御信号を基に、入力バッファ75に保存されたストリームデータを、ピクチャ単位でデコード処理部77に供給させることができるように、アドレス管理テーブル72に保持されている所定のテーブルIDで示されるテーブル情報から、対応するピクチャの先頭番地およびピクチャサイズ情報を読み出して、メモリコントローラ74に供給する。   The elementary stream address determination unit 73 can supply the stream data stored in the input buffer 75 to the decode processing unit 77 on a picture basis based on a control signal supplied from the CPU 20 via the control bus 19. As described above, the head address and picture size information of the corresponding picture are read out from the table information indicated by the predetermined table ID held in the address management table 72 and supplied to the memory controller 74.

メモリコントローラ74は、入力バッファ75へのストリームデータの書き込みおよび読み出しを制御する。すなわち、メモリコントローラ74は、入力処理部71から供給されたストリームデータを入力バッファ75に書き込むとともに、エレメンタリストリームアドレス決定部73から供給される、対応するピクチャの先頭番地およびピクチャサイズ情報を基に、所定のピクチャを読み出して、デコード処理部77に供給する。   The memory controller 74 controls writing and reading of stream data to the input buffer 75. In other words, the memory controller 74 writes the stream data supplied from the input processing unit 71 to the input buffer 75, and based on the start address and picture size information of the corresponding picture supplied from the elementary stream address determination unit 73. The predetermined picture is read out and supplied to the decoding processing unit 77.

入力バッファ75は、SDRAMなどの記憶用のメモリで構成された図1のメモリ41乃至メモリ43の記録領域のうちの一部に相当し、メモリコントローラ74の制御に基づいて、ストリームデータを保存する。   The input buffer 75 corresponds to a part of the recording area of the memory 41 to the memory 43 shown in FIG. 1 constituted by a storage memory such as SDRAM, and stores stream data under the control of the memory controller 74. .

コントロールバス76は、データバス19を介してCPU20から供給される制御信号を、エレメンタリストリームアドレス決定部73、デコード処理部77、書き込み画アドレス決定部78、参照画アドレス決定部79、および、出力アドレス決定部80に供給するとともに、デコーダ22乃至デコーダ24の内部において実行される処理に関する情報を、データバス19を介して、CPU20に供給する。   The control bus 76 outputs control signals supplied from the CPU 20 via the data bus 19 to an elementary stream address determining unit 73, a decoding processing unit 77, a write image address determining unit 78, a reference image address determining unit 79, and an output. In addition to being supplied to the address determination unit 80, information related to processing executed in the decoders 22 to 24 is supplied to the CPU 20 via the data bus 19.

デコード処理部77は、メモリコントローラ74により入力バッファ75から読み出されたMPEGビデオストリームを、参照画アドレス決定部79から供給された参照画を必要に応じて参照してデコードし、デコードされたベースバンド(非圧縮)の映像信号を、書き込み画アドレス決定部78に供給する。   The decode processing unit 77 decodes the MPEG video stream read from the input buffer 75 by the memory controller 74 with reference to the reference image supplied from the reference image address determination unit 79 as necessary, and the decoded base. The band (uncompressed) video signal is supplied to the writing image address determination unit 78.

書き込み画アドレス決定部78は、データバス19を介してCPU20から供給される制御信号を、コントロールバス76を介して取得し、この制御信号に基づいて、デコード処理部77によりデコードされて供給されたベースバンドの映像信号のビデオバンクメモリ82における記録位置、すなわち、保存されるバンク位置を決定し、ベースバンドの映像信号を、メモリコントローラ81を介して、ビデオバンクメモリ82の所定のバンク位置に保存させる。   The writing image address determination unit 78 acquires a control signal supplied from the CPU 20 via the data bus 19 via the control bus 76, and is decoded and supplied by the decoding processing unit 77 based on this control signal. The recording position of the baseband video signal in the video bank memory 82, that is, the bank position to be stored is determined, and the baseband video signal is stored in a predetermined bank position of the video bank memory 82 via the memory controller 81. Let

参照画アドレス決定部79は、データバス19を介してCPU20から供給される制御信号を、コントロールバス76を介して取得し、この制御信号に基づいて、ビデオバンクメモリ82のうち、Pピクチャの前方向(forward)の参照画像バンクとして指定されたバンクに保持されているフレーム画像データや、Bピクチャの前方向および後ろ方向(backward)の参照画像バンクとして指定されたバンクに保持されているフレーム画像データを、メモリコントローラ81を制御して読み出させ、デコード処理部77に供給する。   The reference picture address determination unit 79 acquires a control signal supplied from the CPU 20 via the data bus 19 via the control bus 76, and based on this control signal, the reference picture address determination unit 79 precedes the P picture in the video bank memory 82. Frame image data held in the bank designated as the reference image bank in the direction (forward), and frame images held in the bank designated as the reference image bank in the forward direction and backward direction (backward) of the B picture Data is read by controlling the memory controller 81 and supplied to the decoding processing unit 77.

出力アドレス決定部80は、データバス19を介してCPU20から供給される制御信号を、コントロールバス76を介して取得し、この制御信号に基づいて、ビデオバンクメモリ82に保持されているフレーム画像データのうちの出力画像、すなわち、表示させるフレームのバンクを指定して、メモリコントローラ81を制御して読み出させ、出力する。   The output address determination unit 80 acquires a control signal supplied from the CPU 20 via the data bus 19 via the control bus 76, and the frame image data held in the video bank memory 82 based on this control signal. The output image, that is, the bank of the frame to be displayed is designated, the memory controller 81 is controlled to read and output.

メモリコントローラ81は、ビデオバンクメモリ82へのフレーム画像の書き込みおよび読み出しを制御する。ビデオバンクメモリ82は、SDRAMなどの記憶用のメモリで構成された図1のメモリ41乃至メモリ43の記録領域のうちの一部に相当する、8バンク(8面)のフレーム画像用のバンクメモリであり、メモリコントローラ81の制御に基づいて、1フレームのフレーム画像データを設定されたバンクに保持する。   The memory controller 81 controls writing and reading of frame images to and from the video bank memory 82. The video bank memory 82 is an 8-bank (8-side) frame image bank memory corresponding to a part of the recording area of the memory 41 to the memory 43 shown in FIG. Based on the control of the memory controller 81, the frame image data of one frame is held in the set bank.

次に、図3のフローチャートを参照して、CPU11が実行する制御処理について説明する。   Next, control processing executed by the CPU 11 will be described with reference to the flowchart of FIG.

ステップS1において、CPU11は、ノースブリッジ12およびサウスブリッジ15を制御して、ユーザによりデコードして出力するストリームデータとして指定された、圧縮符号化されたストリームデータのうちの複数GOPをHDD16から読み出す。   In step S <b> 1, the CPU 11 controls the north bridge 12 and the south bridge 15 to read out from the HDD 16 a plurality of GOPs of the compression-coded stream data designated as stream data to be decoded and output by the user.

ステップS2において、CPU11は、読み出した複数GOPのストリームデータを、PCIバス14を介してPCIブリッジ17に供給し、メモリ18に転送する。   In step S <b> 2, the CPU 11 supplies the read stream data of the plurality of GOPs to the PCI bridge 17 via the PCI bus 14 and transfers it to the memory 18.

ステップS3において、CPU11は、ノースブリッジ12およびPCIバス14を介して、PCIブリッジ17のコマンドバッファ31に、データ転送完了と、メモリ18に転送されたGOPに含まれるピクチャのピクチャ情報を供給することにより、CPU20に対して、データ転送完了と、ピクチャ情報とを通知する。ピクチャ情報には、例えば、ピクチャタイプ、ピクチャ単位のヘッダ情報、ピクチャサイズなどの情報が含まれる。   In step S <b> 3, the CPU 11 supplies the command buffer 31 of the PCI bridge 17 with the data transfer completion and the picture information of the picture included in the GOP transferred to the memory 18 via the north bridge 12 and the PCI bus 14. Thus, the CPU 20 is notified of data transfer completion and picture information. The picture information includes, for example, information such as a picture type, header information for each picture, and picture size.

ステップS4において、CPU11は、CPU20およびメモリ18から、準備完了の通知を受ける。具体的には、CPU11は、CPU20がコントロールバス19を介してPCIブリッジ17のリザルトバッファ32に供給した、データ転送完了とピクチャ情報の通知に対するリザルトを、ノースブリッジ12およびPCIバス14を介して読み込むとともに、メモリ18から、PCIブリッジ17、PCIバス14およびノースブリッジ12を介して、複数GOPのストリームデータの保存終了の通知を受ける。   In step S <b> 4, the CPU 11 receives a notification of completion of preparation from the CPU 20 and the memory 18. Specifically, the CPU 11 reads, via the north bridge 12 and the PCI bus 14, the results for the data transfer completion and picture information notification supplied by the CPU 20 to the result buffer 32 of the PCI bridge 17 via the control bus 19. At the same time, the memory 18 is notified of the end of storage of stream data of a plurality of GOPs via the PCI bridge 17, the PCI bus 14 and the north bridge 12.

ステップS5において、CPU11は、図示しない操作入力部から、ユーザによる再生出力処理の開始の指令を受け、ノースブリッジ12およびPCIバス14を介して、PCIブリッジ17のコマンドバッファ31に、デコード開始コマンドを送信し、デコーダ22乃至デコーダ24により、デコード処理を開始させる。デコード開始コマンドには、表示スピード情報が含まれる。   In step S <b> 5, the CPU 11 receives a command to start reproduction output processing by a user from an operation input unit (not shown), and sends a decode start command to the command buffer 31 of the PCI bridge 17 via the north bridge 12 and the PCI bus 14. Then, the decoder 22 through the decoder 24 start the decoding process. The decode start command includes display speed information.

CPU11は、ステップS6において、ノースブリッジ12およびPCIバス14を介して、PCIブリッジ17のコマンドバッファ31に、表示開始コマンドを送信し、ステップS7において、デコーダによりデコードされて得られたSDI信号、すなわち、ベースバンドの画像信号の、1GOP分の表示を開始させる。   In step S6, the CPU 11 transmits a display start command to the command buffer 31 of the PCI bridge 17 via the north bridge 12 and the PCI bus 14, and in step S7, the SDI signal obtained by decoding by the decoder, that is, Then, display of 1 GOP of the baseband image signal is started.

ステップS8において、CPU11は、CPU20がコントロールバス19を介してPCIブリッジ17のリザルトバッファ32に供給した表示開始コマンドに対するリザルト、すなわち、後述する図18のステップS194において、CPU20がPCIブリッジ17のリザルトバッファ32に書き込んだフレームごとの表示完了の通知を、ノースブリッジ12およびPCIバス14を介して読み込んで、いずれのピクチャの表示が終了したかを常にチェックしておくことにより、1GOPの表示完了を検出する。   In step S8, the CPU 11 determines the result of the display start command supplied by the CPU 20 to the result buffer 32 of the PCI bridge 17 via the control bus 19, that is, in step S194 of FIG. The display completion notification for each frame written in 32 is read via the north bridge 12 and the PCI bus 14, and it is always checked which picture display has been completed, thereby detecting the completion of 1GOP display. To do.

ステップS9において、CPU11は、表示されたGOPは、表示されるストリームデータの最後であるか否かを判断する。ステップS9において、表示されたGOPは、表示されるストリームデータの最後であると判断された場合、処理は終了される。   In step S9, the CPU 11 determines whether or not the displayed GOP is the last stream data to be displayed. In step S9, when it is determined that the displayed GOP is the last of the displayed stream data, the process is terminated.

ステップS9において、表示されたGOPは、表示されるストリームデータの最後ではないと判断された場合、ステップS10において、CPU11は、図示しない操作入力部から供給される信号を基に、例えば、ストリームデータの再生終了、再生されているストリームデータの変更、もしくは、再生速度または方向の変更指令など、入力ストリーム状態の変更を伴う指令がユーザから入力されたか否かを判断する。   When it is determined in step S9 that the displayed GOP is not the last of the displayed stream data, in step S10, the CPU 11 determines, for example, stream data based on a signal supplied from an operation input unit (not shown). It is determined whether or not a command accompanying a change in the input stream state, such as an end of playback, a change in stream data being played back, or a command to change the playback speed or direction, is input.

ステップS10において、入力ストリーム状態の変更を伴う指令がユーザから入力されたと判断された場合、ステップS11において、CPU11は、ノースブリッジ12およびPCIバス14を介して、PCIブリッジ17のコマンドバッファ31に、ユーザの操作入力に対応するコマンドを送信する。   If it is determined in step S10 that a command accompanying a change in the input stream state has been input from the user, in step S11, the CPU 11 stores the command buffer 31 of the PCI bridge 17 via the north bridge 12 and the PCI bus 14. A command corresponding to the user's operation input is transmitted.

ステップS10において、入力ストリーム状態の変更を伴う指令がユーザから入力されていないと判断された場合、または、ステップS11の処理の終了後、ステップS12において、CPU11は、HDD16に、表示させるストリームデータが残っているか否かを判断する。ステップS12において、HDD16に、表示させるストリームデータが残っていないと判断された場合、処理は、ステップS7に戻り、メモリ18に転送され、まだ表示されていないストリームデータにおいて、ステップS7以降の処理が繰り返される。   In step S10, when it is determined that the command accompanying the change of the input stream state is not input from the user, or after the process of step S11 is completed, in step S12, the CPU 11 stores the stream data to be displayed on the HDD 16. Determine if it remains. If it is determined in step S12 that there is no stream data to be displayed remaining in the HDD 16, the process returns to step S7 and is transferred to the memory 18, and the process after step S7 is performed on the stream data not yet displayed. Repeated.

ステップS12において、HDD16に、表示させるストリームデータが残っていると判断された場合、ステップS13において、CPU11は、ノースブリッジ12およびサウスブリッジ15を制御して、デコードして出力するストリームデータのうち、メモリ18へ転送済みのGOPに続く1GOPをHDD16から読み出す。   If it is determined in step S12 that stream data to be displayed remains in the HDD 16, in step S13, the CPU 11 controls the north bridge 12 and the south bridge 15 to decode and output the stream data. One GOP following the GOP that has been transferred to the memory 18 is read from the HDD 16.

ステップS14において、CPU11は、読み出した1GOPのストリームデータを、PCIバス14を介してPCIブリッジ17に供給し、メモリ18に転送する。すなわち、メモリ18には、再生されるストリームデータの終了部分付近が保持されている場合を除いて、基本的には、所定数のGOPが保持されているようになされている。   In step S <b> 14, the CPU 11 supplies the read 1 GOP stream data to the PCI bridge 17 via the PCI bus 14 and transfers it to the memory 18. In other words, the memory 18 basically holds a predetermined number of GOPs except when the vicinity of the end portion of the stream data to be reproduced is held.

ステップS15において、CPU11は、ノースブリッジ12およびPCIバス14を介して、PCIブリッジ17のコマンドバッファ31に、データ転送完了と、メモリ18に転送されたGOPに含まれるピクチャのピクチャ情報を供給することにより、CPU20に対して、データ転送完了と、ピクチャ情報とを通知する。ピクチャ情報には、例えば、ピクチャタイプ、ピクチャ単位のサイズなどの情報が含まれる。   In step S 15, the CPU 11 supplies the command buffer 31 of the PCI bridge 17 with the data transfer completion and the picture information of the picture included in the GOP transferred to the memory 18 via the north bridge 12 and the PCI bus 14. Thus, the CPU 20 is notified of data transfer completion and picture information. The picture information includes, for example, information such as picture type and picture unit size.

ステップS16において、CPU11は、CPU20およびメモリ18から、準備完了の通知を受ける。具体的には、CPU11は、CPU20がコントロールバス19を介してPCIブリッジのリザルトバッファ32に供給した、データ転送完了とピクチャ情報の通知に対するリザルトを、ノースブリッジ12およびPCIバス14を介して読み込むとともに、メモリ18から、PCIブリッジ17、PCIバス14およびノースブリッジ12を介して、複数GOPのストリームデータの保存終了の通知を受ける。   In step S <b> 16, the CPU 11 receives a notification of completion of preparation from the CPU 20 and the memory 18. Specifically, the CPU 11 reads the result for the data transfer completion and picture information notification supplied from the CPU 20 to the PCI bridge result buffer 32 via the control bus 19 via the north bridge 12 and the PCI bus 14. The memory 18 is notified of the end of storage of stream data of a plurality of GOPs via the PCI bridge 17, the PCI bus 14, and the north bridge 12.

ステップS16の処理の終了後、処理は、ステップS7に進み、それ以降の処理が繰り返される。   After the process of step S16 ends, the process proceeds to step S7, and the subsequent processes are repeated.

このような処理により、CPU11は、CPU20にコマンドを供給し、供給したコマンドに対するリザルトを受けて、ストリームデータのデコードと、デコードされたデータの表示を制御することができる。   By such processing, the CPU 11 can supply a command to the CPU 20, receive a result for the supplied command, and control decoding of stream data and display of the decoded data.

ここでは、デコードされたデータを1GOPずつ表示させる場合について説明したが、デコードされて生成されたSDI信号を外部に出力する場合にも、同様の処理を実行することにより、CPU11は、CPU20にコマンドを供給し、供給したコマンドに対するリザルトを受けて、ストリームデータのデコードと、デコードされたデータの外部への出力を制御することができることは言うまでもない。   Here, the case where the decoded data is displayed one GOP at a time has been described. However, when the decoded SDI signal is output to the outside, the CPU 11 causes the CPU 20 to execute the same process. It is needless to say that decoding of stream data and output of the decoded data to the outside can be controlled by receiving a result for the supplied command.

そして、CPU20は、CPU11から供給されるコマンドに基づいて、複数のデコーダ(図1においては、デコーダ22乃至デコーダ24)によるデコード処理を制御する。具体的には、CPU20は、デコードに利用されるデコーダ22乃至デコーダ24の選択、換言すれば、圧縮符号化されたストリームデータの供給先を、デコーダ22乃至デコーダ24のうちのいずれにするのかを選択する処理を実行する。更に、CPU20は、圧縮符号化されたストリームデータのデコーダ22乃至デコーダ24のうち対応するものへの入力のタイミング、ピクチャごとのデコードのタイミング、参照画像のバンク位置の設定、デコード時のバンクメモリの割り当て、および、デコードされたピクチャの出力、すなわち、表示のタイミングを決定し、これらのタイミングを基に、PCIブリッジ17、デコーダ22乃至デコーダ24、および、セレクタ25を制御する。以下、図4乃至図38を参照して、CPU20によるデコードおよび表示出力の制御について説明する。   Then, the CPU 20 controls the decoding process by a plurality of decoders (decoder 22 to decoder 24 in FIG. 1) based on the command supplied from the CPU 11. Specifically, the CPU 20 selects the decoder 22 to decoder 24 used for decoding, in other words, which of the decoder 22 to decoder 24 is the destination of the compressed and encoded stream data. Execute the process to select. Further, the CPU 20 sets the input timing of the compressed encoded stream data to the corresponding one of the decoders 22 to 24, the decoding timing for each picture, the setting of the bank position of the reference image, and the bank memory at the time of decoding. The output of the allocated and decoded pictures, that is, the display timing is determined, and the PCI bridge 17, the decoders 22 to 24, and the selector 25 are controlled based on these timings. Hereinafter, decoding and display output control by the CPU 20 will be described with reference to FIGS.

CPU20は、デコーダ22乃至デコーダ24によるデコード処理と、セレクタ25により出力されるSDI信号のセレクト処理とを制御するために、メモリ21に、各種情報を保持可能な複数のレジスタおよび情報キューを有するようになされている。情報キューは、FIFO(First In First Out)のキュー(queue)構造で、CPU11により供給されたコマンドや、ピクチャタイプ情報が対応付けられたピクチャIDおよびピクチャIDに付随する情報(例えば、時間情報)などを、デコードタイミングのスケジューリングや、デコードおよび表示の制御の用途ごとに、それぞれ所定の深さで蓄積することができるようになされている。   The CPU 20 has a plurality of registers and information queues that can hold various types of information in the memory 21 in order to control the decoding processing by the decoders 22 to 24 and the selection processing of the SDI signal output from the selector 25. Has been made. The information queue has a first-in first-out (FIFO) queue structure, a command supplied by the CPU 11, and a picture ID associated with the picture type information and information accompanying the picture ID (for example, time information). Can be stored at a predetermined depth for each use of scheduling of decoding timing and control of decoding and display.

CPU20は、対応する情報キューに蓄積された情報を用いて、デコードおよび表示のタイミングを制御する。すなわち、メモリ21にピクチャがキューされるのではなく、CPU20の制御に基づいて、ピクチャIDがそれぞれの情報キューに設定されることにより、CPU20は、デコードおよび表示のタイミングを制御するための演算処理を実行することができる。   The CPU 20 controls the decoding and display timing using the information stored in the corresponding information queue. That is, the picture is not queued in the memory 21, but the picture ID is set in each information queue based on the control of the CPU 20, so that the CPU 20 performs arithmetic processing for controlling the timing of decoding and display. Can be executed.

各種情報を蓄積する情報キューとして、例えば、コントロールバス19を介して、PCIブリッジ17のコマンドバッファ31から取得したコマンドを蓄積するコマンドキューをはじめとして、処理待ち行列に対応する入力ピクチャのピクチャIDがコーディングオーダで蓄積される入力ピクチャキュー、入力ピクチャキューに蓄積されたピクチャIDをリオーダしてディスプレイオーダに並べ替えて蓄積する表示順情報キュー、表示順情報キューに蓄積されたピクチャIDから、IピクチャおよびPピクチャを抽出してデコード順に並べ替えて蓄積するI/Pピクチャデコードキュー、I/Pピクチャデコードキューに設定されたピクチャIDに加えて、これらのピクチャIDに対応する時間情報が更に蓄積される時間情報付きI/Pピクチャデコードキュー、表示順にピクチャIDが設定される表示順設定キュー、表示順設定キューに設定されたピクチャIDに加えて、これらのピクチャIDに対応する時間情報が更に蓄積される時間情報付き表示順設定キュー、次に表示されるピクチャのピクチャIDを保持する表示キューなどが、CPU20による各種制御に用いられている。各キューに蓄積される情報、各キューの深さ、その情報を用いて実行される処理の詳細については、それぞれ後述する。   As an information queue for storing various information, for example, a command queue for storing a command acquired from the command buffer 31 of the PCI bridge 17 via the control bus 19, and a picture ID of an input picture corresponding to a processing queue are used. From the input picture queue stored in the coding order, the display ID information stored in the display order after reordering the picture IDs stored in the input picture queue and rearranging them in the display order, and the picture ID stored in the display order information queue In addition to the I / P picture decoding queue for extracting and storing the P pictures and rearranging them in the decoding order, and the picture IDs set in the I / P picture decoding queue, time information corresponding to these picture IDs is further stored. I / P pic with time information Decoding queue, display order setting queue in which picture IDs are set in display order, and display order setting queue with time information in which time information corresponding to these picture IDs is further accumulated in addition to the picture IDs set in the display order setting queue A display queue that holds a picture ID of a picture to be displayed next is used for various controls by the CPU 20. Details of information stored in each queue, depth of each queue, and processing executed using the information will be described later.

次に、図4のフローチャートを参照して、フレームごとに行う処理1について説明する。この処理ルーチンは、表示が指令されたストリームデータが終了するまで、または、表示の終了が指令されるまで、1フレームごとに繰り返して実行される。   Next, the process 1 performed for every frame is demonstrated with reference to the flowchart of FIG. This processing routine is repeatedly executed for each frame until the stream data for which display is instructed is completed or until display is instructed.

ステップS31において、図5を用いて後述する入力ストリーム状態変更処理が実行される。入力ストリーム状態変更処理は、CPU11から新たなコマンドが発行されているか否かを確認する処理である。   In step S31, an input stream state change process which will be described later with reference to FIG. 5 is executed. The input stream state change process is a process for confirming whether or not a new command has been issued from the CPU 11.

ステップS32において、図6を用いて後述するデコードスケジュール処理1が実行される。デコードスケジュール処理1において、デコードタイミングがスケジュールされる。   In step S32, decode schedule processing 1 described later with reference to FIG. 6 is executed. In decode schedule processing 1, decode timing is scheduled.

ステップS33において、CPU20は、1フレーム単位で処理の時間を表すカウンタである時間カウンタを参照することにより、処理の対象となっているのは、デコード順において、再生されるストリームデータの最初のフレームから6番目のフレームのうちのいずれかのフレームであるか否かを判断する。   In step S33, the CPU 20 refers to a time counter that is a counter representing the processing time in units of one frame, so that the processing target is the first frame of the stream data to be reproduced in the decoding order. It is determined whether the frame is one of the sixth frames from the first frame.

ステップS33において、処理の対象となっているのは、デコード順において、再生されるストリームデータの最初のフレームから6番目のフレームのうちのいずれかのフレームではないと判断された場合、ステップS34において、図38を用いて後述する1フレームディレイ表示設定処理が実行される。1フレームディレイ表示設定処理によって、1つ前の処理ルーチンにおけるステップS35のフレーム制御処理1においてデコードされて生成されたベースバンドのフレーム画像の表示が設定される。   If it is determined in step S33 that the processing target is not one of the sixth frames to the sixth frame of the stream data to be reproduced in the decoding order, in step S34 A one-frame delay display setting process, which will be described later with reference to FIG. 38, is executed. By the one-frame delay display setting process, the display of the baseband frame image decoded and generated in the frame control process 1 of step S35 in the immediately preceding process routine is set.

ステップS33において、処理の対象となっているのは、デコード順において、再生されるストリームデータの最初のフレームから6番目のフレームのうちのいずれかのフレームであると判断された場合、または、ステップS34の処理の終了後、ステップS35において、図18を用いて後述するフレーム制御処理1が実行される。フレーム制御処理1において、処理対象となっているフレームがデコードされる。   If it is determined in step S33 that the processing target is any one of the first to sixth frames of the stream data to be reproduced in the decoding order, or After the process of S34 is completed, a frame control process 1 described later with reference to FIG. 18 is executed in step S35. In the frame control process 1, a frame to be processed is decoded.

ステップS36において、CPU20は、すべてのフレームの処理が終了したか否かを判断する。ステップS36において、すべてのフレームの処理が終了していないと判断された場合、ステップS37において、CPU20は、1フレームを単位とする時間カウンタをインクリメントする。   In step S36, the CPU 20 determines whether or not the processing of all frames has been completed. If it is determined in step S36 that all the frames have not been processed, the CPU 20 increments a time counter in units of one frame in step S37.

ステップS37の処理の終了後、処理は、ステップS31に戻り、それ以降の処理が繰り返される。ステップS36において、すべてのフレームの処理が終了したと判断された場合、処理は終了される。   After the process of step S37 is completed, the process returns to step S31, and the subsequent processes are repeated. If it is determined in step S36 that all frames have been processed, the process ends.

このようにして、CPU20は、1フレームの処理ごとに、時間カウンタをカウントアップし、ユーザの指令した再生速度に応じて、デコードをスケジュールして、1フレームごとに、デコードを行わせ、表示を設定することができる。   In this way, the CPU 20 counts up the time counter for each processing of one frame, schedules decoding according to the playback speed instructed by the user, performs decoding for each frame, and displays the display. Can be set.

次に、図5のフローチャートを参照して、図4のステップS31において実行される、入力ストリーム状態変更処理について説明する。   Next, the input stream state change process executed in step S31 of FIG. 4 will be described with reference to the flowchart of FIG.

ステップS51において、CPU20は、PCIブリッジ17のコマンドバッファ31から取得したコマンドを蓄積するコマンドキューをチェックする。   In step S <b> 51, the CPU 20 checks a command queue that accumulates commands acquired from the command buffer 31 of the PCI bridge 17.

ステップS52において、CPU20は、コマンドキューに、例えば、再生速度(再生方向を含む)の変更、または、再生終了の指令など、入力ストリーム状態を変更させる新たなコマンドが保存されているか否かを判断する。   In step S52, the CPU 20 determines whether or not a new command for changing the input stream state is stored in the command queue, such as a change in playback speed (including the playback direction) or a playback end command. To do.

ステップS52において、コマンドキューに新たなコマンドが保存されていると判断された場合、ステップS53において、CPU20は、コマンドキューに最も早い時刻に保存されたコマンドに基づいて、再生速度および再生方向の設定に基づいたストリーム入力状態を変更する。ステップS52において、コマンドキューに新たなコマンドが保存されていないと判断された場合、または、ステップS53の処理の終了後、処理は、図4のステップS31に戻り、ステップS32に進む。   If it is determined in step S52 that a new command is stored in the command queue, in step S53, the CPU 20 sets the playback speed and playback direction based on the command stored at the earliest time in the command queue. Change the stream input state based on. If it is determined in step S52 that no new command is stored in the command queue, or after the process of step S53 is completed, the process returns to step S31 in FIG. 4 and proceeds to step S32.

このような処理により、PCIブリッジ17のコマンドバッファ31から取得したコマンドを蓄積するコマンドキューに最も早い時刻に保存されたコマンドが参照され、そのコマンドに基づいて、ストリームの入力状態が変更される。   By such processing, the command stored at the earliest time in the command queue for accumulating commands acquired from the command buffer 31 of the PCI bridge 17 is referred to, and the stream input state is changed based on the commands.

次に、図6のフローチャートを参照して、図4のステップS32において実行される、デコードスケジュール処理1について説明する。   Next, the decoding schedule process 1 executed in step S32 of FIG. 4 will be described with reference to the flowchart of FIG.

ステップS71において、CPU20は、入力ピクチャキューを参照して、入力ピクチャキューが空であるか否かを判断する。入力ピクチャキューは、後述する入力処理(ステップS72)において設定される情報キューであり、デコードのスケジュールが次に決定される入力ピクチャと、そのスケジューリングに必要なピクチャのピクチャIDが設定される。   In step S71, the CPU 20 refers to the input picture queue and determines whether or not the input picture queue is empty. The input picture queue is an information queue set in an input process (step S72) described later, and an input picture for which a decoding schedule is determined next and a picture ID of a picture necessary for the scheduling are set.

再生装置1が取り扱うストリームデータが、図7に示されるように、1GOPが15ピクチャで構成されているMPEGのLONG GOPのストリームデータである場合、1GOP相当の15ピクチャごとにデコード処理を行うデコーダ22乃至デコーダ24のそれぞれには、それぞれのGOPにおいて、表示順で先頭となる2つのBピクチャを除いた13ピクチャと、正方向の再生の場合は、その前のGOPにおいて、表示順で先頭となるIBBの3ピクチャ、逆方向の場合は、その後ろのGOPにおいて、表示順で先頭となるIBBの3ピクチャとの16ピクチャが供給される。   As shown in FIG. 7, when the stream data handled by the playback apparatus 1 is MPEG LONG GOP stream data in which 1 GOP is composed of 15 pictures, a decoder 22 that performs decoding processing for each 15 pictures equivalent to 1 GOP. Each of the decoders 24 has 13 pictures excluding the two B pictures that are headed in the display order in each GOP, and, in the case of playback in the forward direction, is headed in the display order in the preceding GOP. In the case of the IBB 3 pictures in the reverse direction, 16 pictures including the IBB 3 pictures that are the head in the display order are supplied in the GOP behind them.

図8を用いて、デコーダ22乃至デコーダ24のそれぞれが担当するデコードの単位について説明する。図8では、デコーダ22乃至デコーダ24に供給されるピクチャの並びを、ディスプレイオーダで示している。再生装置1においては、1GOP相当(15ピクチャ)ごとに、デコード処理がデコーダ22乃至デコーダ24のうちの1つのデコーダにおいてそれぞれ実行されるが、上述したように、デコーダ22乃至デコーダ24のそれぞれには、1GOPにおいて表示順で先頭となる2つのBピクチャを除いた13ピクチャと、その前またはその後ろのGOPにおいて表示順で先頭から3つのピクチャとの16ピクチャが供給される。したがって、再生方向が正方向の場合は、図8Aに示されるように、デコーダ22乃至デコーダ24のうちの第1のデコーダに、第1GOPの先頭の2つのBピクチャを除いた13ピクチャと第2のGOPの先頭の3ピクチャが供給され、第2のデコーダに、第2GOPの先頭の2つのBピクチャを除いた13ピクチャと第3GOPの先頭の3ピクチャが供給され、同様にして、第3のデコーダに、第3GOPの先頭の2つのBピクチャを除いた13ピクチャと第4GOPの先頭の3ピクチャが供給される。また、再生方向が逆方向の場合は、図8Bに示されるように、デコーダ22乃至デコーダ24のうちの第1のデコーダに、第2GOPの先頭の2つのBピクチャを除いた13ピクチャと第3のGOPの先頭の3ピクチャが供給され、第2のデコーダに、第1GOPの先頭の2つのBピクチャを除いた13ピクチャと第2GOPの先頭の3ピクチャが供給される。   With reference to FIG. 8, a description will be given of the decoding unit that each of the decoders 22 to 24 takes charge of. In FIG. 8, the arrangement of pictures supplied to the decoders 22 to 24 is shown in display order. In the playback apparatus 1, the decoding process is performed in one of the decoders 22 to 24 for each 1 GOP (15 pictures). As described above, each of the decoders 22 to 24 has a decoding process. Sixteen pictures including 13 pictures excluding the two B pictures that are first in the display order in 1 GOP and three pictures from the top in the display order in the preceding or subsequent GOP are supplied. Therefore, when the playback direction is the forward direction, as shown in FIG. 8A, the first decoder among the decoders 22 to 24 receives the 13 pictures excluding the first two B pictures of the first GOP and the second picture. The first three pictures of the first GOP are supplied, and the second decoder is supplied with the 13 pictures excluding the first two B pictures of the second GOP and the first three pictures of the third GOP. 13 pictures excluding the top two B pictures of the third GOP and the top three pictures of the fourth GOP are supplied to the decoder. Also, when the playback direction is the reverse direction, as shown in FIG. 8B, the first decoder among the decoders 22 to 24, the 13 pictures excluding the first two B pictures of the second GOP, and the third picture The first three pictures of the first GOP are supplied, and 13 pictures excluding the first two B pictures of the first GOP and the first three pictures of the second GOP are supplied to the second decoder.

そして、入力ピクチャキューには、デコーダ22乃至デコーダ24に入力されるピクチャのうち、デコードタイミングのスケジュール待ちである入力ピクチャと、そのスケジューリングに必要なピクチャとのピクチャIDが設定される。すなわち、入力ピクチャキューには、LONG GOPのストリームデータのうち、1GOPの15ピクチャと、その前またはその後ろのGOPの先頭のIBBの3ピクチャとの18ピクチャのピクチャIDが保持される。   In the input picture queue, a picture ID of an input picture that is waiting for a decoding timing schedule among pictures input to the decoder 22 to decoder 24 and a picture necessary for the scheduling is set. That is, in the input picture queue, 18 picture IDs of 15 pictures of 1 GOP and 3 pictures of IBB at the head of the GOP before or after the GOP stream data are held in the LONG GOP stream data.

図9Aに、正方向の再生のために、MPEGのLONG GOPのストリームデータのうち、第1のGOPの15ピクチャと、その後ろの第2のGOPの先頭のIBBの3ピクチャのピクチャIDが入力ピクチャキューに設定されている状態を示し、図9Bに、逆方向の再生のために、MPEGのLONG GOPのストリームデータのうち、第2のGOPの15ピクチャと、逆の表示順においてその前に表示される第3のGOPの先頭のIBBの3ピクチャのピクチャIDが入力ピクチャキューに設定されている状態を示す。   In FIG. 9A, the picture IDs of 15 pictures of the first GOP and 3 pictures of the first IBB of the second GOP after the stream data of the MPEG LONG GOP are input for reproduction in the forward direction. FIG. 9B shows a state in which the picture queue is set, and in order to reproduce in the reverse direction, among the LONG GOP stream data of MPEG, the 15 pictures of the second GOP are preceded in the reverse display order. The picture ID of the three pictures of the first IBB of the third GOP to be displayed is set in the input picture queue.

ステップS71において、入力ピクチャキューが空ではないと判断された場合、処理は、図4のステップS32に戻り、ステップS33に進む。すなわち、デコードのスケジュール処理は、LONG GOPの15ピクチャとは2ピクチャ分ずれた位置から設定される13ピクチャと次の3つのピクチャとの16ピクチャ分の処理単位ごとにまとめて実行される。   If it is determined in step S71 that the input picture queue is not empty, the process returns to step S32 in FIG. 4 and proceeds to step S33. In other words, the decoding schedule processing is executed collectively for each processing unit of 16 pictures of 13 pictures set from a position shifted by 2 pictures from the 15 LONG GOP pictures and the next three pictures.

ステップS71において、入力ピクチャキューが空であると判断された場合、ステップS72において、図15のフローチャートを用いて後述する入力処理が実行される。   If it is determined in step S71 that the input picture queue is empty, in step S72, an input process to be described later is executed using the flowchart of FIG.

ステップS73において、CPU20は、次のデータを供給するデコーダを示すレジスタの値を基に、次にデータの供給を受けるデコーダに対応して設定される時間情報付き表示順設定キューが空であるか否かを判断する。時間情報付き表示順設定キューとは、後述するステップS80の時間情報付きスケジュール決定処理において設定されるキューであり、複数のデコーダのそれぞれ(図1を用いて説明した場合においては、デコーダ22乃至デコーダ24の3つのデコーダのそれぞれ)に対応して設定される。時間情報付き表示順設定キューの詳細については、図17のフローチャートを参照して後述する。   In step S73, based on the value of the register indicating the decoder that supplies the next data, the CPU 20 determines whether the display order setting queue with time information set corresponding to the decoder that receives the next data is empty. Judge whether or not. The display order setting queue with time information is a queue that is set in the schedule determination processing with time information in step S80 described later. Each of the plurality of decoders (in the case described with reference to FIG. Each of 24 three decoders). Details of the display order setting queue with time information will be described later with reference to the flowchart of FIG.

ステップS73において、次にデータの供給を受けるデコーダに対応する時間情報付き表示順設定キューが空ではないと判断された場合、すなわち、スケジュール済みの1GOP相当のピクチャに対して、フレームごとにデコード処理または表示処理が実行されている途中である場合、処理は、図4のステップS32に戻り、ステップS33に進む。   In step S73, when it is determined that the display order setting queue with time information corresponding to the decoder to which data is next supplied is not empty, that is, for each scheduled picture corresponding to 1 GOP, decoding processing is performed for each frame. Alternatively, when the display process is being executed, the process returns to step S32 in FIG. 4 and proceeds to step S33.

ステップS73において、次にデータの供給を受けるデコーダに対応する時間情報付き表示順設定キューが空であると判断された場合、ステップS74において、CPU20は、リオーダ処理を実行する。リオーダ処理とは、入力ピクチャキューに設定されているコーディングオーダに並べられている18ピクチャに対応するピクチャIDを、ディスプレイオーダに入れ替えて表示順情報キューに設定する処理である。   In step S73, when it is determined that the display order setting queue with time information corresponding to the decoder to which data is next supplied is empty, in step S74, the CPU 20 executes reorder processing. The reorder process is a process of replacing the picture IDs corresponding to 18 pictures arranged in the coding order set in the input picture queue with the display order and setting them in the display order information queue.

したがって、再生方向が正方向である場合、表示順情報キューには、図10Aに示されるように、図9Aを用いて説明した入力ピクチャキューに設定されているピクチャIDが、ディスプレイオーダに並べ替えられて設定され、再生方向が逆方向である場合、表示順情報キューには、図10Bに示されるように、図9Bを用いて説明した入力ピクチャキューに設定されているピクチャIDが、ディスプレイオーダに並べ替えられて設定される。   Therefore, when the playback direction is the forward direction, as shown in FIG. 10A, the picture ID set in the input picture queue described with reference to FIG. 9A is rearranged in the display order in the display order information queue. When the playback direction is the reverse direction, the picture ID set in the input picture queue described with reference to FIG. 9B is displayed in the display order information queue as shown in FIG. 10B. Sorted to be set.

ステップS74において、リオーダ処理が実行されて、表示順情報キューにピクチャIDがセットされたとき、入力ピクチャキューにキューされているピクチャIDはすべて出力され、入力ピクチャキューは空となる。すなわち、上述したステップS71において、入力ピクチャキューが空であると判断される場合とは、入力ピクチャキューにキューされたピクチャIDに対するリオーダ処理が実行された場合であり、入力ピクチャキューが空ではないと判断される場合とは、この処理以前に実行されたデコードスケジュール処理1のステップS72において入力処理が実行された後、次にデータの供給を受けるデコーダに対応する時間情報付き表示順設定キューが空ではないため、ステップS74においてリオーダ処理が実行されていない場合である。   In step S74, when the reorder process is executed and the picture ID is set in the display order information queue, all the picture IDs queued in the input picture queue are output, and the input picture queue becomes empty. In other words, the case where the input picture queue is determined to be empty in the above-described step S71 is a case where the reorder processing for the picture ID queued in the input picture queue is performed, and the input picture queue is not empty. In the case where it is determined that the display order setting queue with time information corresponding to the decoder that receives the next data supply is executed after the input process is executed in step S72 of the decode schedule process 1 executed before this process. This is a case where the reorder process is not executed in step S74 because it is not empty.

ステップS75において、CPU20は、ステップS74において設定された表示順情報キューを参照し、I/Pピクチャデコードキューに、デコードするGOPのうちのIピクチャおよびPピクチャのピクチャIDを、デコード順に設定する。I/Pピクチャデコードキューとは、Bピクチャに先行してデコードされるIピクチャおよびPピクチャのピクチャIDをデコード順に設定するキューである。   In step S75, the CPU 20 refers to the display order information queue set in step S74, and sets the picture IDs of the I and P pictures in the GOP to be decoded in the I / P picture decoding queue in the decoding order. The I / P picture decoding queue is a queue for setting the picture IDs of the I picture and the P picture that are decoded prior to the B picture in decoding order.

図11に、正方向再生および逆方向再生におけるI/Pピクチャデコードキューを示す。正方向再生の場合のI/Pピクチャデコードキューには、図11Aに示されるように、図10Aを用いて説明した表示順情報キューに設定されているピクチャIDのうち、IピクチャおよびPピクチャに対応する6つのピクチャのピクチャIDが設定され、逆方向再生の場合のI/Pピクチャデコードキューには、図11Bに示されるように、図10Bを用いて説明した表示順情報キューに設定されているピクチャIDのうち、IピクチャおよびPピクチャに対応する6つのピクチャのピクチャIDが設定される。   FIG. 11 shows an I / P picture decoding queue in forward reproduction and backward reproduction. As shown in FIG. 11A, the I / P picture decoding queue in the case of forward reproduction includes the I picture and the P picture among the picture IDs set in the display order information queue described with reference to FIG. 10A. The picture IDs of the corresponding six pictures are set, and the I / P picture decoding queue in the case of reverse playback is set to the display order information queue described with reference to FIG. 10B as shown in FIG. 11B. Among the picture IDs, picture IDs of six pictures corresponding to the I picture and the P picture are set.

ステップS76において、CPU20は、IピクチャおよびPピクチャを格納するバンク位置、および、Pピクチャのデコードにおける参照画像バンクを指定する。IピクチャおよびPピクチャは、図2のビデオバンクメモリ82において、8つのバンクのうち、固定の6つのバンクを使用するようになされている。   In step S76, the CPU 20 designates a bank position for storing the I picture and the P picture and a reference picture bank in the decoding of the P picture. The I picture and the P picture use six fixed banks among the eight banks in the video bank memory 82 of FIG.

IピクチャおよびPピクチャ(アンカーフレームとも称する)を先にデコードし、デコード後に保持されるバンク位置を固定しておくことにより、正方向、逆方向、頭だしなどの、どのピクチャからの再生も、即時に行えるようにすることができる。また、IピクチャおよびPピクチャを先にデコードしておくことにより、先にデコードする6枚のIピクチャおよびPピクチャの処理時間が短いほど、ユーザによる再生開始や、再生速度または再生方向の変更の指示から、指示を反映した表示開始までの時間を、表示開始フレームのGOP内の位置に関わらず短縮することや、スクラブ再生で任意のピクチャを表示する場合の表示時間を短縮することなどが可能となり、高速再生時のパフォーマンスが向上する。   By decoding the I picture and P picture (also called anchor frame) first and fixing the bank position held after decoding, playback from any picture, such as forward direction, backward direction, heading, etc. It can be done immediately. Also, by decoding the I picture and P picture first, the shorter the processing time of the six I pictures and P pictures that are decoded first, the more the user can start playback or change the playback speed or playback direction. The time from the instruction to the display start reflecting the instruction can be shortened regardless of the position in the GOP of the display start frame, or the display time when displaying an arbitrary picture by scrub playback can be shortened. As a result, the performance during high-speed playback is improved.

ステップS77において、CPU20は、ステップS76の処理により指定された、IピクチャおよびPピクチャがそれぞれ格納されるバンク位置を基に、Bピクチャのデコードにおける参照画像バンクの位置を指定する。なお、Bピクチャが格納されるバンク位置は、後述するフレーム制御処理1において指定される。   In step S77, the CPU 20 designates the position of the reference image bank in the decoding of the B picture, based on the bank position where the I picture and the P picture are stored, respectively, designated by the process in step S76. Note that the bank position where the B picture is stored is specified in the frame control process 1 described later.

ステップS78において、CPU20は、表示順設定キューを設定する。   In step S78, the CPU 20 sets a display order setting queue.

図12に、正方向再生および逆方向再生における表示順設定キューを示す。正方向再生の場合の表示順設定キューには、図12Aに示されるように、図10Aを用いて説明した表示順情報キューにキューされている18個のピクチャIDのうち、先頭の2つのBピクチャと、最後のIピクチャを除いた15個のピクチャID、すなわち、図8Aを用いて説明した正方向再生の場合にデコーダ22乃至デコーダ24のうちのいずれかに供給されるピクチャのうち、最後のIピクチャを除いた15ピクチャのピクチャIDが、表示される順番に設定される。   FIG. 12 shows a display order setting queue in forward reproduction and reverse reproduction. As shown in FIG. 12A, the display order setting queue in the case of forward playback is the first two B of the 18 picture IDs queued in the display order information queue described with reference to FIG. 10A. Of the pictures and 15 picture IDs excluding the last I picture, that is, among the pictures supplied to one of the decoders 22 to 24 in the case of forward reproduction described with reference to FIG. 8A The picture IDs of 15 pictures excluding the I picture are set in the display order.

そして、逆方向再生の場合の表示順設定キューには、図12Bに示されるように、図10Bを用いて説明した表示順情報キューにキューされている18個のピクチャIDのうち、先頭の2つのBピクチャと、最後のIピクチャを除いた15個のピクチャID、すなわち、図8Bを用いて説明した逆方向再生の場合にデコーダ22乃至デコーダ24のうちのいずれかに供給されるピクチャのうち、最後のIピクチャを除いた15ピクチャのピクチャIDが、実際に表示される順番に設定される。   As shown in FIG. 12B, the display order setting queue in the case of reverse playback is the first two of the 18 picture IDs queued in the display order information queue described with reference to FIG. 10B. 15 picture IDs excluding one B picture and the last I picture, that is, among pictures supplied to one of the decoders 22 to 24 in the case of backward reproduction described with reference to FIG. 8B The picture IDs of 15 pictures excluding the last I picture are set in the actual display order.

ステップS78において表示順設定キューが設定されるときに、表示順情報キューにキューされているピクチャIDは、すべて出力され、表示順情報キューは空となる。   When the display order setting queue is set in step S78, all the picture IDs queued in the display order information queue are output, and the display order information queue becomes empty.

ステップS79において、図16のフローチャートを用いて後述する表示位相決定処理が実行される。表示位相決定処理は、1GOP相当の15フレーム+1フレームの処理単位におけるデコードの開始と表示の開始のタイミングのずれを決定する処理である。   In step S79, a display phase determination process to be described later is executed using the flowchart of FIG. The display phase determination process is a process for determining a difference in timing between the start of decoding and the start of display in a processing unit of 15 frames + 1 frame equivalent to 1 GOP.

ステップS80において、図17のフローチャートを用いて後述する時間情報付きスケジュール決定処理が実行される。時間情報付きスケジュール決定処理は、フレームごとのデコードのタイミングを制御するために、デコードのスケジューリングを実行して、所定の情報キューに、ピクチャIDに対応付けて時間情報を設定する処理である。   In step S80, a schedule determination process with time information, which will be described later using the flowchart of FIG. 17, is executed. The schedule determination process with time information is a process of executing decoding scheduling and setting time information in association with a picture ID in a predetermined information queue in order to control the decoding timing for each frame.

ステップS79およびステップS80の処理によって、デコードと表示のタイミングがスケジュールされる。具体的には、例えば、再生方向が正方向で通常速度の再生である場合など、表示の先頭がIピクチャまたはPピクチャである場合、図13に示されるように、先にIピクチャおよびPピクチャがデコードされた後、Bピクチャがデコードされ、表示開始のタイミングは、デコード開始から6ピクチャ分ずれることにより、Bピクチャのデコードのタイミングと表示のタイミングが、1フレーム分ずれるように、デコードと表示のタイミングのスケジュールが行われる。また、再生の方向が逆方向の場合、換言すれば、スピード設定が負の値である場合など、表示の先頭がBピクチャである場合、図14に示されるように、先にIピクチャおよびPピクチャがデコードされた後、Bピクチャがデコードされ、表示開始のタイミングは、デコード開始から7ピクチャ分ずれることにより、Bピクチャのデコードのタイミングと表示のタイミングが、1フレーム分ずれるように、デコードと表示のタイミングのスケジュールが行われる。   Decoding and display timings are scheduled by the processing in steps S79 and S80. Specifically, for example, when the display head is an I picture or a P picture, for example, when the playback direction is the normal direction and playback is at normal speed, as shown in FIG. Is decoded, the B picture is decoded, and the display start timing is shifted by 6 pictures from the decoding start, so that the decoding timing and display timing of the B picture are shifted by one frame. The timing schedule is performed. Also, when the playback direction is the reverse direction, in other words, when the display head is a B picture, such as when the speed setting is a negative value, as shown in FIG. After the picture is decoded, the B picture is decoded, and the display start timing is shifted by 7 pictures from the decoding start, so that the B picture decoding timing and the display timing are shifted by one frame. The display timing is scheduled.

ステップS81において、CPU20は、次にデコードされるデータを供給するデコーダの設定を切り替える処理を実行する。具体的には、CPU20は、次のデータを供給するデコーダを示すレジスタの値がデコーダの数(図1を用いて説明した再生装置1においては、デコーダ22乃至デコーダ24の3つ)より1少ない値(図1を用いて説明した再生装置1においては、2)と等しい場合、レジスタの値を0とし、レジスタの値が、デコーダの数より2以上少ない場合、レジスタの値を1インクリメントする。ステップS81の処理の終了後、処理は、図4のステップS32に戻り、ステップS33に進む。   In step S81, the CPU 20 executes a process of switching the setting of a decoder that supplies data to be decoded next. Specifically, the CPU 20 has one less register value indicating the decoder that supplies the next data than the number of decoders (in the reproducing apparatus 1 described with reference to FIG. 1, three decoders 22 to 24). When the value is equal to 2 (2 in the reproducing apparatus 1 described with reference to FIG. 1), the register value is set to 0. When the register value is 2 or less than the number of decoders, the register value is incremented by 1. After the process of step S81 is completed, the process returns to step S32 in FIG. 4 and proceeds to step S33.

このような処理により、デコードと表示のタイミングがスケジュールされる。   By such processing, the decoding and display timing is scheduled.

次に、図15のフローチャートを参照して、図6のステップS72において実行される、入力処理について説明する。   Next, the input process executed in step S72 of FIG. 6 will be described with reference to the flowchart of FIG.

ステップS101において、CPU20は、図3を用いて説明した制御処理のステップS5においてCPU11がコマンドバッファ31に送信したデコード開始コマンドに含まれている表示スピード情報、または、図3を用いて説明した制御処理のステップS11においてCPU11がコマンドバッファ31に送信したユーザの操作入力に対応するコマンドから、スピード設定値を取得し、メモリ21に保持する。スピード設定値が正の値であるとき、再生処理は正方向再生であり、負の値であるとき、再生処理は、逆方向再生であるものとすることができる。   In step S101, the CPU 20 displays the display speed information included in the decode start command transmitted from the CPU 11 to the command buffer 31 in step S5 of the control process described with reference to FIG. 3, or the control described with reference to FIG. The speed setting value is acquired from the command corresponding to the user's operation input transmitted from the CPU 11 to the command buffer 31 in step S11 of the process, and stored in the memory 21. When the speed setting value is a positive value, the playback process may be forward playback, and when the speed setting value is a negative value, the playback process may be backward playback.

例えば、スピード設定値が1であるとき、通常再生であるものとし、スピード設定値が1以上の値であるとき、高速再生であるものとし、スピード設定値が1未満の正の値であるとき、低速再生であるものとし、スピード設定値が−1であるとき、通常速度の逆方向再生であるものとし、スピード設定値が−1以下の値であるとき、高速の逆方向再生であるものとし、スピード設定値が絶対値1未満の負の値であるとき、低速の逆方向再生であるものとすることができる。   For example, when the speed set value is 1, normal playback is assumed. When the speed set value is 1 or more, high speed playback is assumed. When the speed set value is a positive value less than 1. When the speed setting value is −1, it is assumed that the playback speed is normal, and when the speed setting value is −1 or less, the playback speed is high speed. When the speed setting value is a negative value less than the absolute value 1, it can be assumed that low-speed backward reproduction is performed.

ステップS102において、CPU20は、ステップS101において取得したスピード設定値が正の値であるか負の値であるかを基に、実行される処理は正方向の再生処理であるか否かを判断する。   In step S102, the CPU 20 determines whether the process to be executed is a positive direction reproduction process based on whether the speed setting value acquired in step S101 is a positive value or a negative value. .

ステップS102において、正方向の再生処理であると判断された場合、ステップS103において、CPU20は、次にデコードする15フレームのうちの先頭から13フレームを含む1GOPと、その次のGOPのI,B,BピクチャのピクチャIDを、図9Aを用いて説明した入力ピクチャキューに設定する。   If it is determined in step S102 that the playback process is in the forward direction, in step S103, the CPU 20 determines the 1 GOP including 13 frames from the top of the 15 frames to be decoded next and the I and B of the next GOP. , B picture IDs are set in the input picture queue described with reference to FIG. 9A.

ステップS102において、正方向の再生処理ではない、すなわち、逆方向の再生処理であると判断された場合、ステップS104において、CPU20は、次にデコードする15フレームのうちの後ろから13フレームを含む1GOPと、その前のGOPのI,B,BピクチャのピクチャIDを、図9Bを用いて説明した入力ピクチャキューに設定する。   If it is determined in step S102 that the playback process is not forward, that is, reverse playback, in step S104, the CPU 20 includes 1 GOP including 13 frames from the back of the 15 frames to be decoded next. Then, the picture IDs of the previous GOP I, B, and B pictures are set in the input picture queue described with reference to FIG. 9B.

ステップS103またはステップS104の処理の終了後、ステップS105において、CPU20は、PCIブリッジ17を制御して、入力ピクチャキューの設定、および、次のデータを供給するデコーダを示すレジスタの値(再生されるストリームの最初のGOPにおいては、初期設定によって定められる値であり、2番目以降のGOPにおいては、図6のステップS81の処理により定められる値である)に基づいて、メモリ18に保存されているストリームデータのうち、図8を用いて説明した16フレームの圧縮画像データの、デコーダ22乃至デコーダ24のうちの所定のデコーダへの転送を制御する。   After the processing of step S103 or step S104 is completed, in step S105, the CPU 20 controls the PCI bridge 17 to set the input picture queue and the value of the register indicating the decoder that supplies the next data (reproduced). The first GOP of the stream is a value determined by the initial setting, and the second and subsequent GOPs are values determined by the process of step S81 in FIG. 6). Of the stream data, the transfer of the 16-frame compressed image data described with reference to FIG. 8 to a predetermined decoder among the decoders 22 to 24 is controlled.

デコーダ22乃至デコーダ24の入力処理部71は、供給された16フレームのデータをメモリコントローラ74に供給して、入力バッファ75に保存させるとともに、アドレス管理テーブル72に、ピクチャ単位の先頭番地、データサイズ、ピクチャヘッダ情報、Qマトリクスなどの情報を供給し、それぞれ、ピクチャ別に、テーブルIDにより区別可能なテーブル情報として保持させる。   The input processing unit 71 of the decoders 22 to 24 supplies the supplied 16-frame data to the memory controller 74 and stores it in the input buffer 75, and also stores it in the address management table 72 as the start address and data size in units of pictures. , Information such as picture header information and Q matrix is supplied, and each picture is held as table information distinguishable by table ID.

ステップS106において、CPU20は、コントロールバス19を介して、PCIブリッジ17のリザルトバッファ32に、デコーダ22乃至デコーダ24のうちの所定のデコーダへの1GOP相当のストリームの転送処理の終了を示すリザルトを供給することにより、CPU11に対してストリームの転送処理の終了を通知し、処理は、図6のステップS72に戻り、ステップS73に進む。   In step S <b> 106, the CPU 20 supplies a result indicating the end of the transfer processing of the stream equivalent to 1 GOP to the predetermined decoder among the decoders 22 to 24 to the result buffer 32 of the PCI bridge 17 via the control bus 19. Thus, the CPU 11 is notified of the end of the stream transfer process, and the process returns to step S72 in FIG. 6 and proceeds to step S73.

このような処理により、デコーダ22乃至デコーダ24に、図8を用いて説明したデコード処理単位となる16フレームのデータが供給される。   By such processing, 16 frames of data serving as the decoding processing unit described with reference to FIG. 8 is supplied to the decoders 22 to 24.

次に、図16のフローチャートを参照して、図6のステップS79において実行される、デコード開始タイミングに対して表示開始タイミングをディレイさせる位相を設定するための、表示位相決定処理について説明する。   Next, the display phase determination process for setting the phase for delaying the display start timing with respect to the decode start timing, executed in step S79 of FIG. 6, will be described with reference to the flowchart of FIG.

ステップS131において、CPU20は、図12を用いて説明した表示順設定キューに設定されている、表示するピクチャの数の情報を、表示ピクチャ数レジスタに保持する。図12においては、表示順設定キューに15ピクチャ分のピクチャIDが設定されているので、表示ピクチャ数レジスタには、値15が保存される。   In step S131, the CPU 20 stores information on the number of pictures to be displayed, which is set in the display order setting queue described with reference to FIG. 12, in the display picture number register. In FIG. 12, since the picture IDs for 15 pictures are set in the display order setting queue, the value 15 is stored in the display picture number register.

ステップS132において、CPU20は、図11を用いて説明したI/Pピクチャデコードキューに保持されている、デコードされるIピクチャおよびPピクチャの総数を、I/Pピクチャ数レジスタに保持する。図11においては、I/Pピクチャデコードキューに、6ピクチャ分のピクチャIDが設定されているので、I/Pピクチャ数レジスタには、値6が保存される。   In step S132, the CPU 20 holds the total number of decoded I and P pictures held in the I / P picture decoding queue described with reference to FIG. 11 in the I / P picture number register. In FIG. 11, since picture IDs for six pictures are set in the I / P picture decoding queue, the value 6 is stored in the I / P picture number register.

ステップS133において、CPU20は、表示順設定キューの先頭に設定されているピクチャIDに対応するピクチャのピクチャタイプはBピクチャであるか否かを判断する。これは、通常速度再生または逆方向の通常速度再生における位相のずれ量を算出している場合、再生方向は正方向か逆方向かを判断しているのと同義である。なお、後述する間引き処理1が実行された後では、表示順設定キューの先頭に設定されているピクチャIDに対応するピクチャのピクチャタイプがBピクチャであっても、その再生速度の設定値によっては、再生方向が正方向であることもあり、逆方向であることもある。   In step S133, the CPU 20 determines whether or not the picture type of the picture corresponding to the picture ID set at the head of the display order setting queue is a B picture. This is synonymous with determining whether the reproduction direction is the forward direction or the reverse direction when calculating the phase shift amount in the normal speed reproduction or the normal speed reproduction in the reverse direction. After the thinning process 1 described later is executed, even if the picture type of the picture corresponding to the picture ID set at the head of the display order setting queue is a B picture, depending on the playback speed setting value, The playback direction may be the forward direction or the reverse direction.

ステップS133において、表示順設定キューの先頭に設定されているピクチャIDに対応するピクチャのピクチャタイプはBピクチャであると判断された場合、ステップS134において、CPU20は、デコードされるIピクチャおよびPピクチャの総数に1を加えた数を、I/Pピクチャデコードキューに保持されているピクチャIDに対応するIピクチャおよびPピクチャのデコード開始タイミングに対する、表示順設定キューに保持されるピクチャIDに対応するピクチャの表示開始タイミングの時間的な位相のずれ量disp_phaseとする。   If it is determined in step S133 that the picture type of the picture corresponding to the picture ID set at the head of the display order setting queue is a B picture, in step S134, the CPU 20 decodes the I picture and P picture to be decoded. The number obtained by adding 1 to the total number corresponds to the picture ID held in the display order setting queue with respect to the decoding start timing of the I picture and P picture corresponding to the picture ID held in the I / P picture decoding queue. A temporal phase shift amount disp_phase of the picture display start timing is set.

例えば、上述した図14に示されるように、再生速度が−1倍である場合、表示順設定キューの先頭に設定されているピクチャIDに対応するピクチャのピクチャタイプはBピクチャであるので、先にIピクチャおよびPピクチャがデコードされた後、表示開始のタイミングが、デコード開始から7ピクチャ分ずらされて、Bピクチャのデコードのタイミングと表示のタイミングが1フレーム分ずれるように、Bピクチャがデコードされる。   For example, as shown in FIG. 14 described above, when the playback speed is −1, the picture type of the picture corresponding to the picture ID set at the head of the display order setting queue is B picture. After the I picture and P picture are decoded, the display start timing is shifted by 7 pictures from the start of decoding, and the B picture decode is performed so that the B picture decode timing and the display timing are shifted by one frame. Is done.

ステップS133において、表示順設定キューの先頭に設定されているピクチャIDに対応するピクチャのピクチャタイプはBピクチャではないと判断された場合、ステップS135において、CPU20は、デコードされるIピクチャおよびPピクチャの総数を、I/Pピクチャデコードキューに保持されているピクチャIDに対応するIピクチャおよびPピクチャのデコードタイミングに対する、表示順設定キューに保持されるピクチャIDに対応するピクチャの表示開始タイミングの時間的な位相のずれ量disp_phaseとする。   When it is determined in step S133 that the picture type of the picture corresponding to the picture ID set at the head of the display order setting queue is not a B picture, in step S135, the CPU 20 determines the decoded I picture and P picture. Of the display start timing of the picture corresponding to the picture ID held in the display order setting queue with respect to the decode timing of the I picture and P picture corresponding to the picture ID held in the I / P picture decode queue It is assumed that the amount of phase shift is disp_phase.

例えば、上述した図13に示されるように、再生速度が1倍である場合、表示順設定キューの先頭に設定されているピクチャIDに対応するピクチャのピクチャタイプはIピクチャであり、Bピクチャではないので、先にIピクチャおよびPピクチャがデコードされた後、表示開始のタイミングが、デコード開始から6ピクチャ分ずらされて、Bピクチャのデコードのタイミングと表示のタイミングが1フレーム分ずれるように、Bピクチャがデコードされる。   For example, as shown in FIG. 13 described above, when the playback speed is 1 time, the picture type of the picture corresponding to the picture ID set at the head of the display order setting queue is I picture, and in B picture Therefore, after the I picture and P picture are first decoded, the display start timing is shifted by 6 pictures from the start of decoding, so that the B picture decode timing and the display timing are shifted by one frame. B picture is decoded.

ステップS134またはステップS135の処理の終了後、ステップS136において、CPU20は、ステップS134またはステップS135において決定された表示の位相のずれ量disp_phaseを、内部のレジスタに記憶する。   After the processing of step S134 or step S135 is completed, in step S136, the CPU 20 stores the display phase shift amount disp_phase determined in step S134 or step S135 in an internal register.

ステップS137において、CPU20は、処理中のGOPは、表示開始GOP(再生スピードが変更されたときの、対応するスピードでの再生開始部分を含む)であるか否かを判断する。   In step S137, the CPU 20 determines whether or not the GOP being processed is a display start GOP (including a playback start portion at a corresponding speed when the playback speed is changed).

ステップS137において、処理中のGOPは表示開始GOPではないと判断された場合、ステップS138において、CPU20は、ステップS134またはステップS135において決定された表示位相のずれ量disp_phaseから、前回の処理、すなわち、1つ前に表示されるGOPにおける表示位相のずれ量prev_disp_phaseを減算し、その結果をずれ量補正値disp_zeroとして内部のレジスタに記憶するとともに、ステップS134またはステップS135において決定された表示位相のずれ量disp_phaseを1つ前に表示されるGOPにおける表示位相のずれ量prev_disp_phaseに代入して、処理は、図6のステップS79に戻り、ステップS80に進む。   If it is determined in step S137 that the GOP being processed is not the display start GOP, in step S138, the CPU 20 determines the previous processing from the display phase shift amount disp_phase determined in step S134 or step S135, that is, The display phase shift amount prev_disp_phase in the GOP displayed immediately before is subtracted, and the result is stored in the internal register as the shift amount correction value disp_zero, and the display phase shift amount determined in step S134 or step S135. By substituting disp_phase for the display phase shift amount prev_disp_phase in the GOP displayed immediately before, the process returns to step S79 in FIG. 6 and proceeds to step S80.

ステップS137において、処理中のGOPは表示開始GOPであると判断された場合、ステップS139において、CPU20は、ずれ量補正値disp_zeroとして、初期値0を設定して内部のレジスタに記憶し、処理は、図6のステップS79に戻り、ステップS80に進む。   If it is determined in step S137 that the GOP being processed is the display start GOP, in step S139, the CPU 20 sets an initial value 0 as the shift amount correction value disp_zero and stores it in the internal register. Then, the process returns to step S79 in FIG. 6 and proceeds to step S80.

このような処理により、デコード開始タイミングに対して表示開始タイミングをディレイさせる位相が決定される。   By such processing, the phase for delaying the display start timing with respect to the decode start timing is determined.

次に、図17のフローチャートを参照して、図6のステップS80において実行される、時間情報付きスケジュール決定処理について説明する。   Next, the schedule determination process with time information executed in step S80 of FIG. 6 will be described with reference to the flowchart of FIG.

ステップS161において、CPU20は、処理対象は、入力ストリーム状態が変更されてから最初の1GOP相当のデコード処理単位であるか否かを判断する。間引きの前後でピクチャタイプが変更されるのは、少なくとも2番目以降のデコード処理単位の場合であるので、ステップS161において、処理対象が、最初の1GOP相当のデコード処理単位であると判断された場合、処理は、後述するステップS166に進む。   In step S161, the CPU 20 determines whether the processing target is a decoding processing unit corresponding to the first 1 GOP after the input stream state is changed. Since the picture type is changed before and after the thinning out in at least the second and subsequent decoding processing units, in step S161, it is determined that the processing target is the decoding processing unit corresponding to the first 1 GOP. The processing proceeds to step S166 described later.

ステップS161において、処理対象が、最初の1GOP相当のデコード処理単位ではないと判断された場合、ステップS162において、CPU20は、間引きの前後で先頭ピクチャがIピクチャまたはPピクチャからBピクチャに変更されているか否かを判断する。   If it is determined in step S161 that the processing target is not a decoding processing unit corresponding to the first 1 GOP, in step S162, the CPU 20 changes the leading picture from an I picture or a P picture to a B picture before and after thinning. Determine whether or not.

ステップS162において、間引きの前後で先頭ピクチャがIピクチャまたはPピクチャからBピクチャに変更されていると判断された場合、ステップS163において、CPU20は、位相調整値を1とし、処理は、後述するステップS167に進む。   If it is determined in step S162 that the leading picture has been changed from the I picture or the P picture to the B picture before and after the thinning, in step S163, the CPU 20 sets the phase adjustment value to 1, and the process will be described later. The process proceeds to S167.

ステップS162において、間引きの前後で先頭ピクチャがIピクチャまたはPピクチャからBピクチャに変更されていないと判断された場合、ステップS164において、CPU20は、間引きの前後で先頭ピクチャがBピクチャからIまたはPピクチャに変更されているか否かを判断する。   If it is determined in step S162 that the leading picture has not been changed from the I picture or the P picture to the B picture before and after the thinning, in step S164, the CPU 20 determines that the leading picture is the I or P from the B picture before and after the thinning. It is determined whether or not the picture has been changed.

ステップS164において、間引きの前後で先頭ピクチャがBピクチャからIまたはPピクチャに変更されていると判断された場合、ステップS165において、CPU20は、位相調整値を−1とし、処理は、後述するステップS167に進む。   If it is determined in step S164 that the leading picture has been changed from the B picture to the I or P picture before and after the thinning, in step S165, the CPU 20 sets the phase adjustment value to −1, and the process will be described later. The process proceeds to S167.

ステップS161において、処理対象が、最初のデコード処理単位であると判断された場合、または、ステップS164において、間引きの前後で先頭ピクチャがBピクチャからIまたはPピクチャに変更されていないと判断された場合、ステップS166において、CPU20は、位相調整値を0とする。   If it is determined in step S161 that the processing target is the first decoding processing unit, or in step S164, it is determined that the leading picture has not been changed from a B picture to an I or P picture before and after thinning. In this case, in step S166, the CPU 20 sets the phase adjustment value to 0.

ステップS163、ステップS165、または、ステップS166の処理の終了後、ステップS167において、CPU20は、デコーダ22乃至デコーダ24のうちのいずれかのデコーダにおいてデコードされるデコード処理単位の16枚のピクチャにおいて、先頭のフレームがデコードされるタイミングを示すデコード開始時刻情報time_baseの値を、1つ前のデコード処理単位のデコード開始時刻情報であるprev_time_base、表示位相のずれ量補正値を示すdisp_zero、後述する間引き処理1において算出された時間情報調整値added_count、および、ステップS161乃至ステップS166の処理によって求められた位相調整値を用いて算出する(式(1))。   After the process of step S163, step S165, or step S166 is completed, in step S167, the CPU 20 starts with the 16 pictures in the decoding process unit to be decoded by any one of the decoders 22 to 24. The value of the decoding start time information time_base indicating the timing at which the frame is decoded is prev_time_base, which is the decoding start time information of the previous decoding processing unit, disp_zero indicating the display phase shift amount correction value, and thinning processing 1 described later Is calculated using the time information adjustment value added_count calculated in step S1 and the phase adjustment value obtained by the processing in steps S161 to S166 (formula (1)).

デコード開始時刻情報time_base=前GOPのデコード開始時刻情報prev_time_base−表示位相のずれ量補正値disp_zero+時間情報調整値added_count+位相調整値
・・・(1)
Decoding start time information time_base = previous GOP decoding start time information prev_time_base−display phase shift amount correction value disp_zero + time information adjustment value added_count + phase adjustment value
... (1)

なお、表示開始GOPに対して、式(1)の演算処理が実行される場合、前GOPのデコード開始時刻情報を示すprev_time_base、および、前GOPの間引き処理1において算出される時間情報調整値added_countは、0として演算される。   Note that, when the calculation process of Expression (1) is executed for the display start GOP, prev_time_base indicating the decoding start time information of the previous GOP and the time information adjustment value added_count calculated in the previous GOP thinning process 1 Is calculated as 0.

ステップS168において、CPU20は、次にデータが供給されるデコーダに対応する時間情報付きI/Pピクチャデコードキューを設定する。   In step S168, the CPU 20 sets an I / P picture decoding queue with time information corresponding to the decoder to which data is next supplied.

時間情報付きI/Pピクチャデコードキューは、図11を用いて説明したI/Pピクチャデコードキューに設定されているピクチャIDに対応付けて、先頭にデコードされるピクチャのデコード開始時刻time_baseの情報、および、1フレームを単位とする時間カウンタのカウント値が設定されるものであり、再生装置1に備えられているデコーダごと(ここでは、デコーダ22乃至デコーダ24のそれぞれ)に対応して設けられている。   The I / P picture decoding queue with time information is associated with the picture ID set in the I / P picture decoding queue described with reference to FIG. 11, and information on the decoding start time time_base of the picture decoded at the head, In addition, the count value of the time counter in units of one frame is set, and is provided corresponding to each decoder (here, each of the decoder 22 to decoder 24) provided in the playback device 1. Yes.

具体的には、CPU20は、次のデータを供給するデコーダを示すレジスタの値を参照し、次にデータが供給されるデコーダに対応する時間情報付きI/Pピクチャデコードキューを設定する。CPU20は、I/PピクチャデコードキューにキューされているピクチャIDのうち、先頭のピクチャIDに対応するフレームがデコードされるタイミングを示す情報として、上述したデコード開始時刻情報time_baseの情報を用いるとともに、各ピクチャIDに対応するそれぞれのフレームがデコードされるタイミングを示す情報としては、1フレームを単位とする時間カウンタのカウント値を用いる。   Specifically, the CPU 20 refers to the value of the register indicating the decoder that supplies the next data, and sets the I / P picture decode queue with time information corresponding to the decoder to which the next data is supplied. The CPU 20 uses the information of the decoding start time information time_base described above as information indicating the timing at which the frame corresponding to the head picture ID among the picture IDs queued in the I / P picture decoding queue is decoded. As information indicating the timing at which each frame corresponding to each picture ID is decoded, the count value of the time counter in units of one frame is used.

ステップS168において、時間情報付きI/Pピクチャデコードキューが設定されたとき、I/PピクチャデコードキューにキューされているピクチャIDはすべて出力されて、I/Pピクチャデコードキューは空となる。   In step S168, when the I / P picture decoding queue with time information is set, all the picture IDs queued in the I / P picture decoding queue are output, and the I / P picture decoding queue becomes empty.

ステップS169において、CPU20は、次にデータが供給されるデコーダに対応する時間情報付き表示順設定キューを設定する。   In step S169, the CPU 20 sets a display order setting queue with time information corresponding to the decoder to which data is next supplied.

時間情報付き表示順設定キューは、図12を用いて説明した表示順設定キューに設定されているピクチャIDに対応付けて、先頭に表示されるピクチャのデコード開始時刻に対する表示タイミングの位相のずれ量から1を減算した値、および、1フレームを単位とする時間カウンタのカウント値が設定されるものであり、再生装置1に備えられているデコーダごと(ここでは、デコーダ22乃至デコーダ24のそれぞれ)に対応して設けられている。   The display order setting queue with time information is associated with the picture ID set in the display order setting queue described with reference to FIG. 12, and the shift amount of the display timing phase with respect to the decoding start time of the picture displayed at the head A value obtained by subtracting 1 from the above and a count value of a time counter in units of one frame are set for each decoder provided in the reproducing apparatus 1 (here, each of the decoders 22 to 24). It is provided corresponding to.

具体的には、CPU20は、次のデータを供給するデコーダを示すレジスタの値を参照し、次にデータが供給されるデコーダに対応する時間情報付き表示順設定キューを設定する。CPU20は、表示順設定キューにキューされているピクチャIDのうち、実際の表示順において先頭となるフレームに対応するフレームの表示タイミングを示す、上述した表示位相決定処理において決定された位相のずれ量disp_phaseから1を減算した値を、Bピクチャのデコードタイミングにあわせた基準時刻情報として用いるとともに、各ピクチャIDに対応するそれぞれのフレームがデコードされるタイミングを示す情報としては、1フレームを単位とする時間カウンタのカウント値を用いる。   Specifically, the CPU 20 refers to the value of the register indicating the decoder that supplies the next data, and sets the display order setting queue with time information corresponding to the decoder to which the next data is supplied. The CPU 20 displays the display timing of the frame corresponding to the first frame in the actual display order among the picture IDs queued in the display order setting queue, and the phase shift amount determined in the display phase determination process described above A value obtained by subtracting 1 from disp_phase is used as reference time information in accordance with the decoding timing of the B picture, and information indicating the timing at which each frame corresponding to each picture ID is decoded is in units of one frame. The count value of the time counter is used.

ステップS169において時間情報付き表示順設定キューが設定されたとき、表示順設定キューにキューされているピクチャIDはすべて出力されて、表示順設定キューは空となる。   When the display order setting queue with time information is set in step S169, all the picture IDs queued in the display order setting queue are output, and the display order setting queue becomes empty.

ステップS170において、CPU20は、デコード開始時刻情報time_baseに、上述した図16のステップS131において表示ピクチャ数レジスタに保持された値を加えた値を、前のGOPのデコード開始時刻情報prev_time_baseとして、レジスタに保存し、処理は、図6のステップS80に戻り、ステップS81に進む。   In step S170, the CPU 20 adds the value obtained by adding the value held in the display picture number register in step S131 of FIG. 16 described above to the decoding start time information time_base as the decoding start time information prev_time_base of the previous GOP. The process is saved, and the process returns to step S80 in FIG. 6 and proceeds to step S81.

このような処理により、デコードの処理単位となる16フレーム分のデコード処理タイミングが設定される。   By such processing, the decoding processing timing for 16 frames as a decoding processing unit is set.

図16および図17を用いて説明した処理により、デコードの位相と表示の位相が、IピクチャおよびPピクチャの枚数、表示する枚数、先頭に表示するピクチャがBピクチャであるか否かなどを基に決定されて、時間情報として設定される。これにより、複数のデコーダを用いて正逆方向の高速再生を行うときに発生する、それぞれのデコーダにおいてデコードされたり出力されて表示されるピクチャの枚数の変化に追従して、動的にスピードを変更して、連続的にデコード済みの画像を表示させることが可能となる。更に、再生スピードの変更が指令されて、任意の位置のピクチャから間引き間隔の変更が行なわれた場合でも、表示する数の増減を反映することで、対応しているスピード範囲において、再生スピードをフレーム単位で変更させて、連続的にスピードを変更させることが可能となる。   16 and 17, the decoding phase and the display phase are based on the number of I pictures and P pictures, the number of pictures to be displayed, and whether or not the picture to be displayed at the top is a B picture. And is set as time information. As a result, the speed is dynamically increased by following the change in the number of pictures that are decoded and output in each decoder, which are generated when high-speed playback in the forward and reverse directions is performed using a plurality of decoders. It is possible to change and display continuously decoded images. In addition, even when a change in playback speed is commanded and the thinning interval is changed from a picture at an arbitrary position, the playback speed can be adjusted within the supported speed range by reflecting the increase or decrease in the number to be displayed. It is possible to change the speed continuously by changing the frame unit.

図6乃至図17を用いて説明した処理により、図4のステップS32においてデコードスケジュール処理1が実行される。   The decode schedule process 1 is executed in step S32 of FIG. 4 by the process described with reference to FIGS.

そして、図4のステップS33において、最初のフレームから6フレーム目までのいずれかのフレームであるか否かが判断され、最初のフレームから6フレーム目までのいずれかのフレームであると判断された場合、ステップS34の1フレームディレイ表示設定処理はスキップされ、ステップS35において、フレーム制御処理1が実行される。   Then, in step S33 of FIG. 4, it is determined whether the frame is any frame from the first frame to the sixth frame, and is determined to be any frame from the first frame to the sixth frame. In this case, the one-frame delay display setting process in step S34 is skipped, and the frame control process 1 is executed in step S35.

次に、図18のフローチャートを参照して、図4のステップS35において実行される、フレーム制御処理1について説明する。   Next, the frame control process 1 executed in step S35 of FIG. 4 will be described with reference to the flowchart of FIG.

ステップS191において、CPU20は、再生装置1内で実行される各処理のタイミングを管理するためのカウンタである時間管理カウンタと、時間情報付きI/Pピクチャデコードキューを参照し、表示時刻が過ぎてしまったストリームデータがあるか否かを判断する。ステップS191において、表示時刻が過ぎてしまったストリームデータがあると判断された場合、処理は、後述するステップS197に進む。   In step S191, the CPU 20 refers to the time management counter, which is a counter for managing the timing of each process executed in the playback device 1, and the I / P picture decode queue with time information, and the display time has passed. It is determined whether there is stream data. If it is determined in step S191 that there is stream data whose display time has passed, the process proceeds to step S197 described later.

ステップS191において、表示時刻が過ぎてしまったストリームデータがないと判断された場合、ステップS192において、図19を用いて後述するIピクチャおよびPピクチャデコード処理が実行される。   If it is determined in step S191 that there is no stream data whose display time has passed, an I picture and P picture decoding process, which will be described later with reference to FIG. 19, is executed in step S192.

ステップS193において、図20を用いて後述するBピクチャデコード処理が実行される。   In step S193, a B picture decoding process to be described later with reference to FIG. 20 is executed.

ステップS194において、CPU20は、CPU11に、表示ピクチャ情報を通知する。具体的には、CPU20は、コントロールバス19を介して、PCIブリッジ17のリザルトバッファ32に、図3のステップS6において、CPU11から送信された表示開始コマンドに対するリザルトとして表示ピクチャ情報を書き込むことにより、CPU11に対して、表示ピクチャ情報を通知する。CPU11は、PCIブリッジ17のリザルトバッファ32に書き込まれる表示ピクチャ情報を参照することにより、表示されるピクチャがいずれのGOPのいずれのピクチャであるかを知ることができる。   In step S194, the CPU 20 notifies the display picture information to the CPU 11. Specifically, the CPU 20 writes display picture information as a result for the display start command transmitted from the CPU 11 in step S6 of FIG. 3 to the result buffer 32 of the PCI bridge 17 via the control bus 19. The display picture information is notified to the CPU 11. The CPU 11 can know which picture of which GOP the picture to be displayed by referring to the display picture information written in the result buffer 32 of the PCI bridge 17.

ステップS195において、CPU20は、時間管理カウンタをインクリメントする。   In step S195, the CPU 20 increments the time management counter.

ステップS196において、図23を用いて後述する間引き処理1が実行されて、処理は、図4のステップS35に戻り、ステップS36に進む。   In step S196, a thinning process 1 described later with reference to FIG. 23 is executed, and the process returns to step S35 in FIG. 4 and proceeds to step S36.

ステップS191において、表示時刻が過ぎてしまったストリームデータがあると判断された場合、ステップS197において、図35を用いて後述するアンダーフロー処理が実行されて、処理は、図4のステップS35に戻り、ステップS36に進む。   If it is determined in step S191 that there is stream data whose display time has passed, underflow processing described later with reference to FIG. 35 is executed in step S197, and the processing returns to step S35 in FIG. The process proceeds to step S36.

このような処理により、表示が遅れていなければ、設定されたデコードスケジュールに基づいて、1フレーム分のデコードが実行されて、表示ピクチャ情報が、CPU11に通知され、間引き処理1が実行される。そして、表示が遅れているとき、後述するアンダーフロー処理が実行される。   If display is not delayed by such processing, decoding for one frame is executed based on the set decoding schedule, display picture information is notified to the CPU 11, and thinning-out processing 1 is executed. When the display is delayed, underflow processing described later is executed.

次に、図19のフローチャートを参照して、図18のステップS192において実行されるIピクチャおよびPピクチャデコード処理について説明する。   Next, the I picture and P picture decoding processing executed in step S192 in FIG. 18 will be described with reference to the flowchart in FIG.

ステップS221において、CPU20は、時間管理カウンタの値と、時間情報付きI/Pピクチャデコードキューに設定された、次にデコードされるピクチャのピクチャIDに対応付けられている時間情報とが一致したか否かを判断する。ステップS221において、時間管理カウンタの値は、時間情報付きI/Pピクチャデコードキューに設定された時間情報と一致していないと判断された場合、処理は、図18のステップS192に戻り、ステップS193に進む。   In step S221, the CPU 20 determines whether the value of the time management counter matches the time information associated with the picture ID of the next decoded picture set in the I / P picture decoding queue with time information. Judge whether or not. If it is determined in step S221 that the value of the time management counter does not match the time information set in the I / P picture decoding queue with time information, the process returns to step S192 in FIG. Proceed to

ステップS221において、時間管理カウンタの値と、時間情報付きI/Pピクチャデコードキューに設定された時間情報とが一致したと判断された場合、ステップS222において、CPU20は、デコードを実行するデコーダとして設定されているデコーダ22乃至デコーダ24のうちのいずれかを、コントロールバス19を介して制御し、Iピクチャ、または、Pピクチャをデコードさせ、時間情報付きI/Pピクチャデコードキューから、デコードコマンドが実行されたピクチャに対応するピクチャIDを削除する。   If it is determined in step S221 that the value of the time management counter matches the time information set in the I / P picture decoding queue with time information, in step S222, the CPU 20 is set as a decoder that performs decoding. Any one of the decoders 22 to 24 is controlled via the control bus 19 to decode the I picture or P picture, and the decode command is executed from the I / P picture decode queue with time information. The picture ID corresponding to the selected picture is deleted.

具体的には、CPU20は、次のデータを供給するデコーダを示すレジスタに保持されている値を参照し、デコーダ22乃至デコーダ24のうちデコードを実行するデコーダとして設定されているもののエレメンタリストリームアドレス決定部73を制御して、時間情報付きI/Pピクチャデコードキューに設定されたピクチャIDに対応するピクチャのデータを、メモリコントローラ74により、入力バッファ75から読み出させて、デコード処理部77に供給させる。   Specifically, the CPU 20 refers to the value held in the register indicating the decoder that supplies the next data, and the elementary stream address of the decoder 22 to the decoder 24 that is set as the decoder that performs decoding. The determining unit 73 is controlled to cause the memory controller 74 to read out the picture data corresponding to the picture ID set in the I / P picture decoding queue with time information from the input buffer 75 and to the decoding processing unit 77. Supply.

デコードされるピクチャがIピクチャである場合、CPU20は、デコード処理部77を制御して、メモリコントローラ74から供給されたIピクチャをデコードさせるとともに、書き込み画アドレス決定部78を制御して、デコードされたフレームデータをメモリコントローラ81に供給させて、ビデオバンクメモリ82のうち、図6のステップS76においてIピクチャの格納用に指定されたバンクに保存させる。また、デコードされるピクチャがPピクチャである場合、CPU20は、参照画アドレス決定部79を制御して、図6のステップS76において設定されたPピクチャの参照バンク位置を基に、メモリコントローラ81により、ビデオバンクメモリ82に格納されている参照画を読み出させて、デコード処理部77に供給させ、デコード処理部77を制御して、メモリコントローラ74から供給されたPピクチャをデコードさせるとともに、書き込み画アドレス決定部78を制御して、デコードされたフレームデータをメモリコントローラ81に供給させて、ビデオバンクメモリ82のうち、図6のステップS76においてPピクチャの格納用に指定されたバンクに保存させる。   When the picture to be decoded is an I picture, the CPU 20 controls the decoding processing unit 77 to decode the I picture supplied from the memory controller 74 and also controls the writing image address determining unit 78 to perform decoding. The frame data is supplied to the memory controller 81 and stored in the bank designated for storing the I picture in step S76 of FIG. 6 in the video bank memory 82. Further, when the picture to be decoded is a P picture, the CPU 20 controls the reference picture address determination unit 79, and based on the reference bank position of the P picture set in step S76 in FIG. The reference picture stored in the video bank memory 82 is read out and supplied to the decoding processing unit 77, and the decoding processing unit 77 is controlled to decode and write the P picture supplied from the memory controller 74. The image address determination unit 78 is controlled to supply the decoded frame data to the memory controller 81 and stored in the bank designated for storing the P picture in the step S76 of FIG. 6 in the video bank memory 82. .

ステップS222の処理の終了後、処理は、図18のステップS192に戻り、ステップS193に進む。   After the process of step S222 is completed, the process returns to step S192 of FIG. 18 and proceeds to step S193.

このような処理により、設定されたスケジュールに基づいて、Iピクチャ、または、Pピクチャがデコードされる。   Through such processing, an I picture or a P picture is decoded based on the set schedule.

次に、図20のフローチャートを参照して、図18のステップS193において実行されるBピクチャデコード処理について説明する。   Next, the B picture decoding process executed in step S193 in FIG. 18 will be described with reference to the flowchart in FIG.

ステップS241において、CPU20は、時間管理カウンタの設定と、時間情報付き表示順設定キューに設定された現在の先頭のピクチャIDに対応する時間情報が一致したか否かを判断する。時間情報付き表示順設定キューに設定された時間情報とは、スケジュール時の15フレームのうち、実際の表示順において先頭となるフレームに対応するフレームの表示タイミングを示す、上述した表示位相決定処理において決定された位相のずれ量disp_phaseから1を減算した値(Bピクチャのデコードタイミングにあわせた基準時刻情報)、または、15フレームのうち、実際の表示順において先頭となるフレーム以外の各ピクチャIDに対応する、1フレームを単位とする時間カウンタのカウント値である。ステップS241において、時間管理カウンタの設定は、時間情報付き表示順設定キューに設定された時間情報と一致しないと判断された場合、処理は、図18のステップS193に戻り、ステップS194に進む。   In step S241, the CPU 20 determines whether or not the setting of the time management counter matches the time information corresponding to the current first picture ID set in the display order setting queue with time information. In the display phase determination process described above, the time information set in the display order setting queue with time information indicates the display timing of the frame corresponding to the first frame in the actual display order among the 15 frames at the time of scheduling. A value obtained by subtracting 1 from the determined phase shift amount disp_phase (reference time information in accordance with the decoding timing of the B picture) or each picture ID other than the first frame in the actual display order among 15 frames. The count value of the corresponding time counter in units of one frame. If it is determined in step S241 that the setting of the time management counter does not match the time information set in the display order setting queue with time information, the process returns to step S193 in FIG. 18 and proceeds to step S194.

ステップS241において、時間管理カウンタの設定は、時間情報付き表示順設定キューに設定された時間情報と一致すると判断された場合、ステップS242において、CPU20は、時間情報と一致すると判断されたのは、Bピクチャに対応するピクチャIDであるか否かを判断する。   In step S241, when it is determined that the setting of the time management counter matches the time information set in the display order setting queue with time information, in step S242, the CPU 20 determines that it matches the time information. It is determined whether or not the picture ID corresponds to the B picture.

ステップS242において、時間情報と一致すると判断されたのは、Bピクチャに対応するピクチャIDであると判断された場合、ステップS243において、CPU20は、デコードを実行するデコーダとして設定されているデコーダ22乃至デコーダ24のうちのいずれかを、コントロールバス19を介して制御し、このピクチャIDで示されるBピクチャをデコードさせる。   In step S242, when it is determined that the picture ID corresponding to the B picture is determined to match the time information, in step S243, the CPU 20 sets the decoders 22 to 22 that are set as decoders that perform decoding. Any one of the decoders 24 is controlled via the control bus 19 to decode the B picture indicated by the picture ID.

具体的には、CPU20は、次のデータを供給するデコーダを示すレジスタに保持されている値を参照し、デコーダ22乃至デコーダ24のうちデコードを実行するデコーダとして設定されているもののエレメンタリストリームアドレス決定部73を制御して、時間情報付き表示順設定キューに設定されたピクチャIDに対応するピクチャのデータを、メモリコントローラ74により、入力バッファ75から読み出させて、デコード処理部77に供給させる。そして、CPU20は、参照画アドレス決定部79を制御して、図6のステップS77において設定されたBピクチャの参照バンク位置を基に、メモリコントローラ81により、ビデオバンクメモリ82に格納されている参照画を読み出させて、デコード処理部77に供給させ、デコード処理部77を制御して、メモリコントローラ74から供給されたBピクチャをデコードさせる。   Specifically, the CPU 20 refers to the value held in the register indicating the decoder that supplies the next data, and the elementary stream address of the decoder 22 to the decoder 24 that is set as the decoder that performs decoding. The determination unit 73 is controlled so that the picture data corresponding to the picture ID set in the display order setting queue with time information is read from the input buffer 75 by the memory controller 74 and supplied to the decoding processing unit 77. . Then, the CPU 20 controls the reference picture address determination unit 79, and the reference stored in the video bank memory 82 by the memory controller 81 based on the reference bank position of the B picture set in step S77 in FIG. The image is read out and supplied to the decoding processing unit 77, and the decoding processing unit 77 is controlled to decode the B picture supplied from the memory controller 74.

ステップS244において、CPU20は、Bピクチャを格納するバンク位置を設定する。すなわち、CPU20は、ビデオバンクメモリ82のうち、IピクチャまたはPピクチャの格納用に指定されていない2つのバンクに対してBピクチャが交互に格納されるように、書き込み画アドレス決定部78を制御する。CPU20は、書き込み画アドレス決定部78を制御して、デコード処理部77によりデコードされたフレームデータをメモリコントローラ81に供給させて、ビデオバンクメモリ82の設定されたバンク位置にデコードされたフレームデータを記憶させる。   In step S244, the CPU 20 sets a bank position for storing the B picture. That is, the CPU 20 controls the write image address determination unit 78 so that B pictures are alternately stored in two banks of the video bank memory 82 that are not designated for storing I pictures or P pictures. To do. The CPU 20 controls the writing image address determining unit 78 to supply the frame data decoded by the decoding processing unit 77 to the memory controller 81, and the decoded frame data at the set bank position in the video bank memory 82. Remember.

ステップS242において、時間情報と一致すると判断されたのは、Bピクチャに対応するピクチャIDではないと判断された場合、または、ステップS244の処理の終了後、ステップS245において、CPU20は、時間情報付き表示順設定キューに設定された現在の先頭のピクチャIDを、表示キューに設定する。表示キューは、1つのピクチャIDのみが保持される深さ1のキューである。   In step S242, when it is determined that the picture ID corresponding to the time information is not the picture ID corresponding to the B picture, or after the process of step S244 is completed, the CPU 20 adds the time information. The current top picture ID set in the display order setting queue is set in the display queue. The display queue is a queue of depth 1 that holds only one picture ID.

具体的には、CPU20は、ステップS242において、時間情報と一致すると判断されたのは、Bピクチャに対応するピクチャIDではないと判断された場合、上述した図19のステップS222において、時間情報付き表示順設定キューに設定された現在の先頭のピクチャIDに対応するIピクチャまたはPピクチャのデコードが制御されているので、CPU20は、そのIピクチャまたはPピクチャに対応するピクチャIDを表示キューに設定する。また、ステップS242において、時間情報と一致すると判断されたのは、Bピクチャに対応するピクチャIDであると判断されて、ステップS243においてBピクチャのデコードが制御された場合、CPU20は、時間情報付き表示順設定キューに設定された現在の先頭のピクチャID、すなわち、デコードされたBピクチャに対応するピクチャIDを、表示キューに設定する。   Specifically, when the CPU 20 determines in step S242 that it is not the picture ID corresponding to the B picture that is determined to match the time information, in step S222 of FIG. 19 described above, the time information is added. Since decoding of the I picture or P picture corresponding to the current first picture ID set in the display order setting queue is controlled, the CPU 20 sets the picture ID corresponding to the I picture or P picture in the display queue. To do. In step S242, if it is determined that the picture ID corresponding to the B picture corresponds to the time information, and decoding of the B picture is controlled in step S243, the CPU 20 adds the time information. The current head picture ID set in the display order setting queue, that is, the picture ID corresponding to the decoded B picture is set in the display queue.

そして、時間情報付き表示順設定キューに設定された現在の先頭のピクチャIDは、時間情報付き表示順設定キューから出力され、表示キューに設定されたピクチャIDに対応するピクチャの次に表示されるピクチャに対応するピクチャIDが、時間情報付き表示順設定キューの先頭となるか、または、時間情報付き表示設定キューが空となる。ステップS245の処理の終了後、処理は、図18のステップS193に戻り、ステップS194に進む。   The current top picture ID set in the display order setting queue with time information is output from the display order setting queue with time information and displayed next to the picture corresponding to the picture ID set in the display queue. The picture ID corresponding to the picture is the head of the display order setting queue with time information, or the display setting queue with time information is empty. After the process of step S245 ends, the process returns to step S193 in FIG. 18 and proceeds to step S194.

このようにして、時間情報付きI/Pピクチャデコードキューおよび時間情報付き表示順設定キューに設定されている時間情報を基に、デコードが実行される。正方向再生の場合は、図21に示されるように、時間情報付きI/Pピクチャデコードキューに設定されている時間情報を基に、IピクチャおよびPピクチャがデコードされ、時間情報付き表示順設定キューに設定されている時間情報を基に、Bピクチャがデコードされる。また、逆方向再生の場合は、図22に示されるように、時間情報付きI/Pピクチャデコードキューに設定されている時間情報を基に、IピクチャおよびPピクチャがデコードされ、時間情報付き表示順設定キューに設定されている時間情報を基に、Bピクチャがデコードされる。   In this way, decoding is executed based on the time information set in the I / P picture decoding queue with time information and the display order setting queue with time information. In the case of forward reproduction, as shown in FIG. 21, the I picture and P picture are decoded based on the time information set in the I / P picture decoding queue with time information, and the display order with time information is set. The B picture is decoded based on the time information set in the queue. In the case of reverse playback, as shown in FIG. 22, the I picture and P picture are decoded based on the time information set in the I / P picture decoding queue with time information, and the display with time information is displayed. Based on the time information set in the order setting queue, the B picture is decoded.

また、Bピクチャのデコードのタイミングは、図21および図22に示されるように、正方向再生、逆方向再生のいずれの場合であっても、後述する1フレームディレイ表示設定処理により、Bピクチャのデコードのタイミングが表示されるタイミングと1フレームずれるようになされている。   In addition, as shown in FIGS. 21 and 22, the decoding timing of the B picture is determined by the 1-frame delay display setting process described later, regardless of whether the playback is in the forward direction or the backward direction. The decoding timing is shifted by one frame from the display timing.

なお、図21および図22においては、1倍速およびー1倍速における場合のデコードタイミングと表示タイミングについてそれぞれ図示されているが、高速再生が実行される場合、後述する間引き処理1により、時間情報付き表示順設定キューの設定が変更されて、次の処理ルーチンにおいて、間引き処理1後の時間情報付き表示順設定キューの設定を基に、デコードが実行されるようになされている。高速再生が実行される場合、Bピクチャはすべてデコードされるのではなく、間引かれてデコードされるが、IピクチャおよびPピクチャのデコードは、高速再生が実行される場合も、同様に全ピクチャにおいて実行される。   21 and 22 show the decode timing and the display timing in the case of 1 × speed and −1 × speed, respectively, but when high-speed playback is executed, time information is obtained by thinning-out processing 1 described later. The setting of the added display order setting queue is changed, and in the next processing routine, decoding is executed based on the setting of the display order setting queue with time information after the thinning-out process 1. When high-speed playback is executed, all B pictures are not decoded but are decoded by being thinned out. However, decoding of I pictures and P pictures also applies to all pictures when high-speed playback is executed. Executed in

次に、図23のフローチャートを参照して、図18のステップS195において実行される、間引き処理1について説明する。   Next, with reference to the flowchart of FIG. 23, the thinning process 1 executed in step S195 of FIG. 18 will be described.

ステップS271において、CPU20は、図5を用いて説明した入力ストリーム状態変更処理において設定されたストリーム入力状態を基に、ユーザの設定に基づいた再生速度は、正方向、または、逆方向の高速再生であるか否かを判断する。ステップS271において、高速再生ではないと判断された場合、処理は、図18のステップS196に戻り、図4のステップS36に進む。   In step S271, the CPU 20 uses the stream input state set in the input stream state change process described with reference to FIG. 5, and the playback speed based on the user setting is a fast playback in the forward direction or the reverse direction. It is determined whether or not. If it is determined in step S271 that the playback is not at high speed, the process returns to step S196 in FIG. 18 and proceeds to step S36 in FIG.

ステップS271において、高速再生であると判断された場合、ステップS272において、CPU20は、処理中のフレームは、スピード設定が変更された後の最初のGOPの最初のフレームであるか否かを判断する。   If it is determined in step S271 that high-speed playback is being performed, in step S272, the CPU 20 determines whether or not the frame being processed is the first frame of the first GOP after the speed setting has been changed. .

ステップS272において、処理中のフレームは、入力ストリーム状態が変更された後の最初のGOPの最初のフレームであると判断された場合、ステップS273において、CPU20は、スピード設定値を基に、間引き周期を決定して、レジスタに保存する。   If it is determined in step S272 that the frame being processed is the first frame of the first GOP after the input stream state has been changed, in step S273, the CPU 20 determines the thinning cycle based on the speed setting value. Is stored in a register.

具体的には、CPU20は、例えば、2倍速または−2倍速で再生が行われる場合、間引き周期を1/2としてレジスタに保存し、3倍速または−3倍速で再生が行われる場合、間引き周期を1/3としてレジスタに保存する。   Specifically, for example, when reproduction is performed at 2 × speed or −2 × speed, the CPU 20 stores the thinning cycle in the register as ½, and when reproduction is performed at 3 × speed or −3 × speed, Is saved in the register as 1/3.

ステップS274において、CPU20は、間引き処理1においてデコード処理単位にかかわらずフレームの数をカウントするフレームカウンタをリセットする。   In step S274, the CPU 20 resets a frame counter that counts the number of frames in the thinning process 1 regardless of the decoding process unit.

ステップS272において、処理中のフレームは、入力ストリーム状態が変更された後の最初のGOPの最初のフレームではないと判断された場合、または、ステップS274の処理の終了後、ステップS275において、CPU20は、時間情報付き表示順設定キューに保持されているピクチャIDに対応付けられて、確認済みフラグが設定されているか否かを基に、時間情報付き表示順設定キューはすべて確認済みであるか否かを判断する。確認済みフラグは、後述するステップS280の処理により、時間情報付き表示順設定キューに設定されるフラグである。ステップS275において、時間情報付き表示順設定キューはすべて確認済みであると判断された場合、処理は、図18のステップS196に戻り、図4のステップS36に進む。   In step S272, if it is determined that the frame being processed is not the first frame of the first GOP after the input stream state is changed, or after the processing of step S274 is completed, the CPU 20 determines in step S275. Whether or not all the display order setting queues with time information have been confirmed based on whether or not the confirmed flag is set in association with the picture ID held in the display order setting queue with time information. Determine whether. The confirmed flag is a flag that is set in the display order setting queue with time information by the processing in step S280 described later. If it is determined in step S275 that all display order setting queues with time information have been confirmed, the process returns to step S196 in FIG. 18 and proceeds to step S36 in FIG.

ステップS275において、時間情報付き表示順設定キューはすべて確認済みではない、換言すれば、時間情報付き表示順設定キューに確認済みフラグが設定されていないピクチャIDが残っていると判断された場合、ステップS276において、CPU20は、フレームカウンタを1インクリメントする。   If it is determined in step S275 that all the display order setting queues with time information have not been confirmed, in other words, it is determined that there is still a picture ID for which the confirmed flag is not set in the display order setting queue with time information. In step S276, the CPU 20 increments the frame counter by one.

ステップS277において、CPU20は、間引き周期の決定の結果、レジスタに保持されている間引き周期と、フレームカウンタの値を参照し、フレームカウンタに示されるフレームは表示されるか否かを判断する。具体的には、CPU20は、間引き周期が1/2である場合、フレーム数をカウントするフレームカウンタの値が2n(nは正の整数)であれば、表示を行い、それ以外の場合は、表示を行わないようにしたり、間引き周期が1/3である場合、フレーム数をカウントするフレームカウンタの値が3n(nは正の整数)であれば、表示を行い、それ以外の場合は、表示を行わないようにする。ステップS277において、表示が行われると判断された場合、すなわち、間引かれないフレームであると判断された場合、処理は、後述するステップS280に進む。   In step S277, as a result of determining the thinning cycle, the CPU 20 refers to the thinning cycle held in the register and the value of the frame counter, and determines whether or not the frame indicated by the frame counter is displayed. Specifically, when the thinning cycle is ½, the CPU 20 performs display if the value of the frame counter that counts the number of frames is 2n (n is a positive integer), otherwise, When the display is not performed or the thinning cycle is 1/3, if the value of the frame counter that counts the number of frames is 3n (n is a positive integer), the display is performed. Otherwise, the display is performed. Do not display. If it is determined in step S277 that display is to be performed, that is, if it is determined that the frame is not thinned, the process proceeds to step S280 described later.

ステップS277において、表示されないと判断された場合、すなわち、間引かれるフレームであると判断された場合、ステップS278において、CPU20は、処理対象のフレームに対応するピクチャIDを、時間情報付き表示順設定キューから削除するか、または、時間情報付き表示順設定キューの対応するピクチャIDに対して、非表示であることを示すフラグを対応付ける。   If it is determined in step S277 that it is not displayed, that is, if it is determined that the frame is to be thinned out, in step S278, the CPU 20 sets the picture ID corresponding to the processing target frame to the display order with time information. Either delete from the queue, or associate a flag indicating non-display with the corresponding picture ID in the display order setting queue with time information.

ステップS279において、図24を用いて説明する、時間情報再設定処理が実行される。   In step S279, the time information resetting process described with reference to FIG. 24 is executed.

ステップS277において、フレームカウンタに示されるフレームの表示が行われると判断された場合、または、ステップS279の処理の終了後、ステップS280において、CPU20は、時間情報付き表示順設定キューのフレームカウンタに示されるフレームに対応するピクチャIDに対応付けて確認済みフラグを設定し、処理は、ステップS275に戻り、それ以降の処理が繰り返される。   When it is determined in step S277 that the frame indicated by the frame counter is displayed, or after the processing of step S279 is completed, in step S280, the CPU 20 indicates in the frame counter of the display order setting queue with time information. The confirmed flag is set in association with the picture ID corresponding to the frame to be processed, the process returns to step S275, and the subsequent processes are repeated.

このような処理により、表示されないフレームのピクチャIDが、時間情報付き表示順設定キューから削除されるか、または、時間情報付き表示順設定キューの対応するピクチャIDに対して、非表示であることを示すフラグが対応付けられる。Bピクチャのデコード処理と、1フレームディレイ表示設定処理(後述)は、時間情報付き表示順設定キューを参照して実行される。高速再生の設定に基づいて、時間情報付き表示順設定キューの設定が更新されるため、この処理ルーチン以降にデコードされるBピクチャは、表示されるもののみとなり(間引かれるBピクチャは、デコード処理部77に供給されない)、間引かれるIピクチャまたはPピクチャは、デコードはされるが、表示されないようになされる。   By such processing, the picture ID of the frame that is not displayed is deleted from the display order setting queue with time information, or is not displayed with respect to the corresponding picture ID in the display order setting queue with time information. Are associated with each other. The B picture decoding process and the one-frame delay display setting process (described later) are executed with reference to the display order setting queue with time information. Since the setting of the display order setting queue with time information is updated based on the setting of high-speed playback, the B picture decoded after this processing routine is only displayed (the B picture to be thinned is decoded) The I picture or P picture to be thinned out is not decoded but is not displayed.

また、フレームカウンタは、スピード設定が変更されるまで、すなわち、入力ストリーム状態が変更されるまで、GOPにかかわらず、リセットされずに連続してインクリメントされるので、例えば、1GOPが15フレームで構成されている場合の2倍速、4倍速、または、−2倍速、−4倍速など、間引き周期の分母が1GOPを構成するフレームの数を割り切ることができない値となってしまうため、GOPによって、表示されないピクチャの位置が変更される場合であっても、入力ストリームにおけるフレームの順番を示すフレームカウンタの値を用いて、間引き周期を基に、表示が行われるか否かを容易に決定することができる。   Further, the frame counter is continuously incremented without being reset regardless of the GOP until the speed setting is changed, that is, until the input stream state is changed. For example, 1 GOP is composed of 15 frames. If the denominator of the decimation period becomes a value that cannot divide the number of frames constituting 1 GOP, such as 2 × speed, 4 × speed, −2 × speed, −4 × speed, etc. Even when the position of a picture that is not changed is changed, it is possible to easily determine whether or not display is performed based on the thinning cycle by using the value of the frame counter indicating the order of frames in the input stream. it can.

このようにして、Bピクチャはデコーダへのストリーム入力で間引き、IピクチャおよびPピクチャはデコード後の表示を止めることで、等間隔で間引きが施され、スピードの動的な変更に追従可能なように高速再生を行うことが可能となる。IピクチャおよびPピクチャは、デコード時に他のピクチャからの参照画像として用いられる場合があるので、この方法は、できるだけバンクメモリの面数を少なくして等間隔で間引きを施して高速再生を実行するために、有効な方法である。   In this way, the B picture is thinned out by the stream input to the decoder, and the I picture and the P picture are thinned out at equal intervals by stopping the display after decoding, so that the dynamic change of the speed can be followed. It is possible to perform high-speed playback. Since the I picture and the P picture may be used as reference images from other pictures at the time of decoding, this method performs high-speed playback by thinning out at equal intervals while reducing the number of faces of the bank memory as much as possible. Therefore, it is an effective method.

これにより、等間隔の間引きを行いつつ、デコーダを2つ用いる場合には、−3倍乃至3倍の範囲で速度設定が可能となり、デコーダを3つ用いる場合には、−6倍乃至6倍の範囲で速度設定が可能となり、更に、2個以上のデコーダにおいて、同様の間引き処理1の制御を適用して、高速再生を実現することができる。   Thus, when two decoders are used while thinning out at equal intervals, the speed can be set in a range of -3 to 3 times, and when three decoders are used, -6 to 6 times. In addition, the speed can be set within the range of the above, and the high-speed reproduction can be realized by applying the same control of the thinning process 1 to two or more decoders.

次に、図24のフローチャートを参照して、図23のステップS279において実行される時間情報再設定処理について説明する。   Next, the time information resetting process executed in step S279 of FIG. 23 will be described with reference to the flowchart of FIG.

ステップS301において、CPU20は、スピード設定値の変更により発生した間引き処理1によるピクチャの変更数(削除数または追加数)を検出する。   In step S <b> 301, the CPU 20 detects the number of picture changes (the number of deletions or the number of additions) due to the thinning-out process 1 generated by the change of the speed setting value.

ステップS302において、CPU20は、ピクチャの変更数(削除数または追加数)を、時間情報調整値added_countとする。   In step S302, the CPU 20 sets the number of picture changes (the number of deletions or the number of additions) as the time information adjustment value added_count.

ステップS303において、CPU20は、時間情報付き表示順設定キューの時間情報を、連続となるように再設定し、処理は、図23のステップS279に戻り、ステップS280に進む。   In step S303, the CPU 20 resets the time information in the display order setting queue with time information so as to be continuous, and the process returns to step S279 in FIG. 23 and proceeds to step S280.

このような処理により、再生速度の設定値に対応して、間引き後の時間情報付き表示順設定キューの設定が変更され、これ以降の処理ルーチンにおいては、変更された時間情報付き表示順設定キューを基に、Bピクチャのデコードタイミングとすべてのフレームの表示設定が制御される。   By such processing, the setting of the display order setting queue with time information after thinning is changed corresponding to the set value of the playback speed, and the display order setting queue with changed time information is changed in subsequent processing routines. Based on this, the decoding timing of the B picture and the display setting of all frames are controlled.

間引き処理1における時間情報付き表示順設定キューの設定について、図25乃至図30を用いて説明する。図25乃至図30においては、上部に、間引き前のスケジューリングの状態が、間引きされるフレームを点線で記載することによって示されており、その下部に、間引き処理1後のスケジューリングの状態が示されている。また、図25乃至図30において、カッコ内の数字の0,1,2は、デコーダ22乃至デコーダ24のうちのいずれかに対応してそれぞれ設定されている情報キューに蓄積される情報、または、デコーダ22乃至デコーダ24のうちのいずれかにおいてそれぞれ実行される処理であることを示すものである。   The setting of the display order setting queue with time information in the thinning process 1 will be described with reference to FIGS. In FIG. 25 to FIG. 30, the state of scheduling before thinning is shown in the upper part by describing the thinned frames with dotted lines, and the state of scheduling after the thinning process 1 is shown in the lower part. ing. In FIG. 25 to FIG. 30, the numbers 0, 1, and 2 in parentheses are information accumulated in information queues respectively set corresponding to any of the decoders 22 to 24, or This indicates that the process is executed in any one of the decoders 22 to 24.

例えば、+2倍速の高速再生における場合、図25に示されるように、間引き前後におけるデコード単位内の表示ピクチャ数の変更は−7であり、時間情報調整値added_countは、−7となる。そして、次のデコード単位の先頭のピクチャのピクチャタイプがIピクチャから変更されてBピクチャとなるので、位相調整値は−1となるため、time_baseの調整量は、表示位相のずれ量補正値disp_zeroが0であるとき、−8となる。そして、2つ目のGOPの表示開始タイミングは、先頭がBピクチャであることからIピクチャのデコード開始タイミングより7フレーム分遅れる。   For example, in the case of high-speed playback at + 2 × speed, as shown in FIG. 25, the change in the number of displayed pictures in the decoding unit before and after thinning is −7, and the time information adjustment value added_count is −7. Since the picture type of the first picture of the next decoding unit is changed from I picture to B picture, the phase adjustment value is −1. Therefore, the adjustment amount of time_base is the display phase shift amount correction value disp_zero. When is 0, it is -8. The display start timing of the second GOP is delayed by 7 frames from the decoding start timing of the I picture because the head is a B picture.

また、例えば、−2倍速の高速再生における場合、図26に示されるように、間引き前後におけるデコード単位内の表示ピクチャ数の変更は−7であり、時間情報調整値added_countは、−7となる。そして、次のデコード単位の先頭のピクチャのピクチャタイプは、Bピクチャのまま変更されないので、位相調整値は0となるため、time_baseの調整量は、表示位相のずれ量補正値disp_zeroが0であるとき、−7となる。そして、2つ目のGOPの表示開始タイミングは、先頭がBピクチャであることからIピクチャのデコード開始タイミングより7フレーム分遅れる。   Further, for example, in the case of high-speed playback at −2 × speed, as shown in FIG. 26, the change in the number of displayed pictures in the decoding unit before and after thinning is −7, and the time information adjustment value added_count is −7. . Since the picture type of the first picture of the next decoding unit remains the B picture, the phase adjustment value is 0, and therefore the time_base adjustment amount is 0 for the display phase shift amount correction value disp_zero. When it becomes -7. The display start timing of the second GOP is delayed by 7 frames from the decoding start timing of the I picture because the head is a B picture.

例えば、+4倍速の高速再生における場合、図27に示されるように、間引き前後におけるデコード単位内の表示ピクチャ数の変更は−11であり、時間情報調整値added_countは、−11となる。そして、次のデコード単位の先頭のピクチャのピクチャタイプがIピクチャから変更されてBピクチャとなるので、位相調整値は−1となるため、time_baseの調整量は、表示位相のずれ量補正値disp_zeroが0であるとき、−12となる。そして、2つ目のGOPの表示開始タイミングは、先頭がBピクチャであることからIピクチャのデコード開始タイミングより7フレーム分遅れる。   For example, in the case of high-speed playback at + 4 × speed, as shown in FIG. 27, the change in the number of displayed pictures in the decoding unit before and after thinning is −11, and the time information adjustment value added_count is −11. Since the picture type of the first picture of the next decoding unit is changed from I picture to B picture, the phase adjustment value is −1, and the adjustment amount of time_base is the display phase shift amount correction value disp_zero. When is 0, it is −12. The display start timing of the second GOP is delayed by 7 frames from the decoding start timing of the I picture because the head is a B picture.

例えば、−4倍速の高速再生における場合、図28に示されるように、間引き前後におけるデコード単位内の表示ピクチャ数の変更は−11であり、時間情報調整値added_countは、−11となる。そして、次のデコード単位の先頭のピクチャのピクチャタイプは、Bピクチャのまま変更されないので、位相調整値は0となるため、time_baseの調整量は、表示位相のずれ量補正値disp_zeroが0であるとき、−11となる。そして、2つ目のGOPの表示開始タイミングは、先頭がBピクチャであることからIピクチャのデコード開始タイミングより7フレーム分遅れる。   For example, in the case of high-speed playback at -4 times speed, as shown in FIG. 28, the change in the number of displayed pictures in the decoding unit before and after thinning is -11, and the time information adjustment value added_count is -11. Since the picture type of the first picture of the next decoding unit remains the B picture, the phase adjustment value is 0, and therefore the time_base adjustment amount is 0 for the display phase shift amount correction value disp_zero. Then -11. The display start timing of the second GOP is delayed by 7 frames from the decoding start timing of the I picture because the head is a B picture.

例えば、+5倍速の高速再生における場合、図29に示されるように、間引き前後におけるデコード単位内の表示ピクチャ数の変更は−12であり、時間情報調整値added_countは、−12となる。そして、次のデコード単位の先頭のピクチャのピクチャタイプは、Iピクチャのまま変更されないので、位相調整値は0となるため、time_baseの調整量は、表示位相のずれ量補正値disp_zeroが0であるとき、−12となる。そして、2つ目のGOPの表示開始タイミングは、先頭がIピクチャであることからIピクチャのデコード開始タイミングより6フレーム分遅れる。   For example, in the case of high-speed playback at + 5 × speed, as shown in FIG. 29, the change in the number of displayed pictures in the decoding unit before and after thinning is −12, and the time information adjustment value added_count is −12. Since the picture type of the first picture of the next decoding unit remains unchanged from I picture, the phase adjustment value is 0, and therefore the display phase shift amount correction value disp_zero is 0 as the time_base adjustment amount. When it becomes -12. The display start timing of the second GOP is delayed by 6 frames from the decoding start timing of the I picture because the head is the I picture.

例えば、−5倍速の高速再生における場合、図30に示されるように、間引き前後におけるデコード単位内の表示ピクチャ数の変更は−12であり、時間情報調整値added_countは、−12となる。そして、次のデコード単位の先頭のピクチャのピクチャタイプは、Bピクチャのまま変更されないので、位相調整値は0となるため、time_baseの調整量は、表示位相のずれ量補正値disp_zeroが0であるとき、−12となる。そして、2つ目のGOPの表示開始タイミングは、先頭がBピクチャであることからIピクチャのデコード開始タイミングより7フレーム分遅れる。   For example, in the case of -5 × high-speed playback, as shown in FIG. 30, the change in the number of displayed pictures in the decoding unit before and after thinning is −12, and the time information adjustment value added_count is −12. Since the picture type of the first picture of the next decoding unit remains the B picture, the phase adjustment value is 0, and therefore the time_base adjustment amount is 0 for the display phase shift amount correction value disp_zero. When it becomes -12. The display start timing of the second GOP is delayed by 7 frames from the decoding start timing of the I picture because the head is a B picture.

そして、図25乃至図30に示されるように、次に繰り返して実行される、図17を用いて説明した時間情報付きスケジュール決定処理のステップS167において、デコード開始時刻情報time_baseが、上述した式(1)を基に算出される。そして、図25乃至図30に示されるように、算出されたデコード開始時刻情報time_baseを基に、時間情報付きI/Pピクチャデコードキューに設定されたピクチャIDに対応するIピクチャおよびPピクチャのデコード開始タイミングが決定され、算出されたデコード開始時刻情報time_baseと、表示されないフレームが削除された時刻情報付き表示順設定キューを基に、間引き処理1後のBピクチャのデコードおよび表示のスケジュールが決定される。   Then, as shown in FIG. 25 to FIG. 30, in step S167 of the schedule determination process with time information described with reference to FIG. Calculated based on 1). Then, as shown in FIG. 25 to FIG. 30, based on the calculated decoding start time information time_base, decoding of the I picture and P picture corresponding to the picture ID set in the I / P picture decoding queue with time information The start timing is determined, and the decoding and display schedule of the B picture after the thinning-out process 1 is determined based on the calculated decoding start time information time_base and the display order setting queue with time information from which frames that are not displayed are deleted. The

例えば、N=15,M=3のLONG GOPのMPEGストリームを再生装置1でデコードする場合、図2のビデオバンクメモリ82の8つのバンクのうちのバンクNo.0乃至5の6つのバンクに、固定的に、I,P,P,P,P,Iのアンカーフレームが格納され、Bピクチャが、表示の1フレーム前にデコードされるように、残りのバンクNo.6および7に交互に格納されるようにすることで、ビデオバンクメモリ82に備えられているバンクが8面のみであっても、正方向、逆方向で、デコーダの数(本実施例の再生装置1では3つ)に対応して定められるスピード範囲内の表示を実行させることが可能である。   For example, when a playback apparatus 1 decodes a LONG GOP MPEG stream with N = 15 and M = 3, the bank No. of the eight banks of the video bank memory 82 in FIG. The remaining banks are such that the anchor frames of I, P, P, P, P, and I are fixedly stored in the six banks 0 to 5, and the B picture is decoded one frame before the display. No. By storing alternately in 6 and 7, even if the bank provided in the video bank memory 82 has only 8 faces, the number of decoders in the forward direction and the reverse direction (reproduction of this embodiment) In the apparatus 1, it is possible to execute display within a speed range determined corresponding to three).

図31乃至図34を用いて、図2のビデオバンクメモリ82の設定について説明する。   The setting of the video bank memory 82 in FIG. 2 will be described with reference to FIGS.

図31は、1倍速再生時に各ピクチャが図2のビデオバンクメモリ82の8つのバンクに格納される状態を表す図である。   FIG. 31 is a diagram illustrating a state in which each picture is stored in eight banks of the video bank memory 82 of FIG.

バンクNo.0乃至5は、IピクチャおよびPピクチャに占有され、デコード済みのIピクチャおよびPピクチャが、デコード順に格納されるようになされている。そして、最初のI2ピクチャの表示タイミングと同時に、バンクNo.6にB3ピクチャが格納され、B3ピクチャが表示されるタイミングと同時に、バンクNo.7にB4ピクチャが格納され、B3ピクチャが表示されるタイミングには、表示が終了されたB3ピクチャが格納されていたバンクNo.6と、参照画像としての利用が終了したI2ピクチャが格納されていたバンクNo.0とが開放される。その後、バンクNo.6および7には、Bピクチャが、Bピクチャの表示タイミングがデコードタイミングに対して1フレーム遅れるように交互に格納され、表示後に開放される。また、バンクNo.1乃至5は、格納されていたPピクチャの参照画像としての利用が終了した時点で開放される。すなわち、バンクNo.0乃至5は、ピクチャの表示によって開放されるのではなく、格納されていたIピクチャまたはPピクチャの参照画像としての利用とピクチャの表示とがいずれも終了した時点で開放される。   Bank No. 0 to 5 are occupied by I pictures and P pictures, and decoded I pictures and P pictures are stored in the decoding order. At the same time as the display timing of the first I2 picture, the bank No. 6 stores the B3 picture, and at the same time when the B3 picture is displayed, the bank No. 7 is stored, and at the timing when the B3 picture is displayed, the bank No. in which the B3 picture that has been displayed is stored is stored. 6 and the bank No. in which the I2 picture that has been used as a reference image has been stored. 0 is released. After that, bank no. 6 and 7 store B pictures alternately so that the display timing of the B pictures is delayed by one frame with respect to the decode timing, and are released after display. In addition, bank No. 1 to 5 are released when the stored P picture is used as a reference image. That is, bank no. 0 to 5 are not released when the picture is displayed, but are released when the use of the stored I picture or P picture as the reference image and the display of the picture are completed.

図32は、2倍速再生時に各ピクチャが図2のビデオバンクメモリ82の8つのバンクに格納される状態を表す図である。   FIG. 32 is a diagram showing a state in which each picture is stored in eight banks of the video bank memory 82 of FIG.

バンクNo.0乃至5は、IピクチャおよびPピクチャに占有され、デコード済みのIピクチャおよびPピクチャが、デコード順に格納されるようになされている。そして、最初のI2ピクチャの表示タイミングと同時に、バンクNo.6にB4ピクチャが格納され、B4ピクチャが表示されるタイミングと同時に、バンクNo.7にB6ピクチャが格納され、B6ピクチャが表示されるタイミングには、表示が終了されたB4ピクチャが格納されていたバンクNo.6と、参照画像としての利用が終了したI2ピクチャが格納されていたバンクNo.0とが開放される。その後、バンクNo.6および7には、間引かれていないBピクチャが、Bピクチャの表示タイミングがデコードタイミングに対して1フレーム遅れるように交互に格納され、表示後に開放される。また、バンクNo.0乃至5は、ピクチャの表示によって開放されるのではなく、格納されていたIピクチャまたはPピクチャの参照画像としての利用とピクチャの表示とがいずれも終了した時点で開放されるので、バンクNo.1乃至5は、格納されていたPピクチャの参照画像としての利用とピクチャの表示とがいずれも終了した時点で開放される。   Bank No. 0 to 5 are occupied by I pictures and P pictures, and decoded I pictures and P pictures are stored in the decoding order. At the same time as the display timing of the first I2 picture, the bank No. 6 stores the B4 picture, and at the same time the B4 picture is displayed, the bank No. 7 is stored, and at the timing when the B6 picture is displayed, the bank No. in which the B4 picture that has been displayed is stored is stored. 6 and the bank No. in which the I2 picture that has been used as a reference image has been stored. 0 is released. After that, bank no. In 6 and 7, B pictures that are not thinned out are alternately stored so that the display timing of the B pictures is delayed by one frame with respect to the decoding timing, and are released after display. In addition, bank No. 0 to 5 are not released when the picture is displayed, but are released when the use of the stored I picture or P picture as the reference image and the display of the picture are completed. . 1 to 5 are released when the use of the stored P picture as a reference image and the display of the picture are completed.

図33は、−1倍速再生時に各ピクチャが図2のビデオバンクメモリ82の8つのバンクに格納される状態を表す図である。   FIG. 33 is a diagram illustrating a state in which each picture is stored in eight banks of the video bank memory 82 of FIG.

バンクNo.0乃至5は、IピクチャおよびPピクチャに占有され、デコード済みのIピクチャおよびPピクチャが、デコード順に格納されるようになされている。そして、バンクNo.5にI2ピクチャが格納された次のタイミングで、バンクNo.6にB1ピクチャが格納され、B1ピクチャが表示されるタイミングと同時に、バンクNo.7にB0ピクチャが格納され、B1ピクチャが表示されるタイミングには、表示が終了されたB1ピクチャが格納されていたバンクNo.6が開放される。その後、バンクNo.6および7には、Bピクチャが、Bピクチャの表示タイミングがデコードタイミングに対して1フレーム遅れるように、交互に格納され、表示後に開放される。バンクNo.0乃至5は、ピクチャの表示か、格納されていたIピクチャまたはPピクチャの参照画像としての利用が終了した時点のうちのいずれか遅いタイミングで開放される。すなわち、図33における場合は、逆方向再生であるので、最初にバンクNo.0に格納されたI2ピクチャは、最後に表示されるため、このGOPの表示が終了するまで開放されない。   Bank No. 0 to 5 are occupied by I pictures and P pictures, and decoded I pictures and P pictures are stored in the decoding order. And bank no. 5 at the next timing when the I2 picture is stored in the bank No. 6 stores the B1 picture, and at the same time when the B1 picture is displayed, the bank No. 7 stores the B0 picture, and at the timing when the B1 picture is displayed, the bank No. in which the B1 picture that has been displayed is stored is stored. 6 is opened. After that, bank no. In 6 and 7, the B picture is alternately stored so that the display timing of the B picture is delayed by one frame with respect to the decode timing, and is released after display. Bank No. 0 to 5 are released at the later timing of the display of the picture or the point in time when the use of the stored I picture or P picture as the reference image ends. That is, in the case of FIG. Since the I2 picture stored in 0 is displayed last, it is not released until the display of this GOP is completed.

図34は、−2倍速再生時に各ピクチャが図2のビデオバンクメモリ82の8つのバンクに格納される状態を表す図である。   FIG. 34 is a diagram illustrating a state in which each picture is stored in eight banks of the video bank memory 82 of FIG.

バンクNo.0乃至5は、IピクチャおよびPピクチャに占有され、デコード済みのIピクチャおよびPピクチャが、デコード順に格納されるようになされている。そして、バンクNo.5にI2ピクチャが格納された次のタイミングで、バンクNo.6にB1ピクチャが格納され、B1ピクチャが表示されるタイミングの次のタイミングで、バンクNo.7にB12ピクチャが格納され、表示が終了されたB1ピクチャが格納されていたバンクNo.6が開放される。その後、バンクNo.6および7には、間引かれていないBピクチャが、Bピクチャの表示タイミングがデコードタイミングに対して1フレーム遅れるように交互に格納され、表示後に開放される。バンクNo.0乃至5は、ピクチャの表示か、格納されていたIピクチャまたはPピクチャの参照画像としての利用が終了した時点のうちのいずれか遅いタイミングで開放される。すなわち、図34における場合も、逆方向再生であるので、最初にバンクNo.0に格納されたI2ピクチャは、最後に表示されるため、このGOPの表示が終了するまで開放されない。   Bank No. 0 to 5 are occupied by I pictures and P pictures, and decoded I pictures and P pictures are stored in the decoding order. And bank no. 5 at the next timing when the I2 picture is stored in the bank No. 6 stores the B1 picture, and at the timing next to the timing when the B1 picture is displayed, the bank No. 7 stores the B12 picture and the bank No. in which the B1 picture that has been displayed is stored. 6 is opened. After that, bank no. In 6 and 7, B pictures that are not thinned out are alternately stored so that the display timing of the B pictures is delayed by one frame with respect to the decoding timing, and are released after display. Bank No. 0 to 5 are released at the later timing of the display of the picture or the point in time when the use of the stored I picture or P picture as the reference image ends. That is, in the case of FIG. Since the I2 picture stored in 0 is displayed last, it is not released until the display of this GOP is completed.

このように、MPEGなどに代表される画像圧縮方式で一般的な双方向のフレーム間予測を用いて圧縮した映像データを逆転再生、高速再生するような場合において、IピクチャおよびPピクチャを先にデコードし、Bピクチャのデコードを表示の1フレーム前のタイミングとなるようにスケジュールすることにより、IピクチャおよびPピクチャを、フレームを保持しておくバンクの固定位置に格納し、複雑なバンク面制御を行うことなく、バンクの面数をできるだけ少なくして、効率よく逆方向再生、逆方向高速再生を実現することができる。   In this way, when video data compressed using general bidirectional inter-frame prediction in an image compression method typified by MPEG or the like is played back in reverse or at high speed, the I picture and P picture are first used. By decoding and scheduling the decoding of the B picture at the timing one frame before the display, the I picture and the P picture are stored in a fixed position of the bank holding the frame, and complex bank surface control is performed. Without performing the above, it is possible to efficiently realize reverse reproduction and reverse high-speed reproduction by reducing the number of bank faces as much as possible.

具体的には、フレームを保持しておくバンクの数が、デコードの処理単位に含まれるIピクチャおよびPピクチャの数と、Bピクチャ格納分の2面との合計数であれば、アンカーフレームであるIピクチャおよびPピクチャを、バンクの固定位置に格納して、複雑なバンク面制御を行わずに、高速再生、逆方向再生を実現することができる。   Specifically, if the number of banks holding frames is the total number of I pictures and P pictures included in the decoding processing unit and two planes for storing B pictures, the anchor frame is used. A certain I picture and P picture can be stored in a fixed position of the bank, and high-speed playback and reverse playback can be realized without performing complicated bank surface control.

例えば、本実施例のように、N=15,M=3の、MPEG LONG GOPストリームでは、I,P,P,P,Pピクチャの5面+次のIピクチャの1面+Bピクチャの2面の合計で、8面のビデオバンクメモリを用意することにより、IピクチャおよびPピクチャを、バンクの固定位置に格納して、複雑なバンク面制御を行わずに、高速再生、逆方向再生、逆方向高速再生を実現することができる。   For example, as in this embodiment, in an MPEG LONG GOP stream with N = 15 and M = 3, 5 planes of I, P, P, P, and P pictures + 1 plane of the next I picture + 2 planes of B picture In total, by preparing an 8-side video bank memory, I pictures and P pictures are stored at fixed positions in the bank, and high-speed playback, reverse playback, and reverse are performed without complicated bank plane control. Direction high-speed playback can be realized.

また、ユーザからの操作によるスピード変更レスポンスを向上するために、フレーム単位でスピードを変更する目的で、Bピクチャのデコードおよび、表示を止める処理を行おうとしたとき、Bピクチャのデコードと、表示のタイミングの制御を別に管理しているにもかかわらず、バンクを管理するための処理が煩雑となることを防いで、バンク管理をシンプルにすることができ、例えば、入力ストリームの過渡状態で不正な参照処理などが行われたとしても容易に復帰することができ(後述するアンダーフロー処理)、スピード変更をフレーム単位に行うことができる。   In addition, in order to improve the speed change response by the operation from the user, when the process of decoding the B picture and stopping the display is performed for the purpose of changing the speed in frame units, the decoding of the B picture and the display Even though the timing control is managed separately, it is possible to simplify the bank management by preventing complicated processing for managing the bank. For example, it is illegal in the transient state of the input stream. Even if a reference process or the like is performed, it can be easily restored (underflow process described later), and a speed change can be performed on a frame basis.

次に、図35のフローチャートを参照して、図18のステップS197において実行されるアンダーフロー処理について説明する。   Next, the underflow process executed in step S197 in FIG. 18 will be described with reference to the flowchart in FIG.

ステップS361において、CPU20は、時間管理カウンタおよび時間カウンタを参照し、表示処理に対してストリームデータの供給が間に合っていない状態、すなわち、アンダーフローが発生したか否かを判断する。ステップS361において、アンダーフローが発生していないと判断された場合、処理は、図18のステップS197に戻り、図4のステップS36に進む。   In step S361, the CPU 20 refers to the time management counter and the time counter, and determines whether the stream data is not supplied in time for the display process, that is, whether underflow has occurred. If it is determined in step S361 that no underflow has occurred, the process returns to step S197 in FIG. 18 and proceeds to step S36 in FIG.

ステップS361において、アンダーフローが発生していると判断された場合、ステップS362において、CPU20は、時間を示すカウンタである時間カウンタの値を、時間情報付きI/Pピクチャデコードキューの先頭の時刻にあわせて修正し、処理は、図18のステップS197に戻り、図4のステップS36に進む。   If it is determined in step S361 that underflow has occurred, in step S362, the CPU 20 sets the value of the time counter, which is a counter indicating the time, to the start time of the I / P picture decoding queue with time information. At the same time, the process returns to step S197 in FIG. 18 and proceeds to step S36 in FIG.

図36および図37を用いて、アンダーフロー発生時の時間カウンタの値の補正について説明する。なお、図36および図37において、カッコ内の数字の0,1,2は、デコーダ22乃至デコーダ24のうちのいずれかに対応してそれぞれ設定されている情報キューに蓄積される情報、または、デコーダ22乃至デコーダ24のうちのいずれかにおいてそれぞれ実行される処理であることを示すものである。   36 and 37, correction of the value of the time counter when an underflow occurs will be described. In FIGS. 36 and 37, the numbers 0, 1, and 2 in parentheses are information accumulated in information queues respectively set corresponding to any of the decoders 22 to 24, or This indicates that the process is executed in any one of the decoders 22 to 24.

図36には、図29を用いて説明した場合と同様に、−5倍速再生でアンダーフローが発生していない場合の時間カウンタに対して、情報キューに蓄積される情報、および、デコードと表示のタイミングが図示されている。図36においては、あるGOPのIピクチャのデコード開始タイミングの時間カウンタの値が7である場合を例としている。   FIG. 36 shows the information stored in the information queue and the decoding and display for the time counter when no underflow has occurred in -5 × playback as in the case described with reference to FIG. The timing of is shown. FIG. 36 shows an example in which the value of the time counter of the decoding start timing of an I picture of a certain GOP is 7.

そして、例えば、2フレーム分アンダーフローが発生した場合、図37に示されるように、時間カウンタを2フレーム分遅延させ、その時間カウンタを参照して処理を再開させることにより、それ以降のスケジューリングとデコードおよび表示の制御を、滞りなく実行させることが可能となる。   For example, when an underflow has occurred for two frames, as shown in FIG. 37, the time counter is delayed by two frames and the processing is restarted with reference to the time counter. Decoding and display control can be executed without delay.

このような処理により、例えば、高速再生時のHDD16のスループット不足などにより、ストリームの供給が滞った場合であっても、ストリームの供給が滞ったことによるアンダーフロー状態を検出し、時間情報計数をアンダーフローした時間分戻すことにより、破綻無く再生処理を再開することが可能である。   By such processing, for example, even when the supply of the stream is delayed due to insufficient throughput of the HDD 16 during high-speed playback, an underflow state due to the delayed supply of the stream is detected, and the time information is counted. It is possible to resume the reproduction process without failure by returning the time underflowed.

そして、図4のステップS36において、すべてのフレームの処理が終了されていないと判断された場合、ステップS37において、時間カウンタがインクリメントされ、処理は、ステップS31に戻り、次のフレームに対して、それ以降の処理が繰り返される。   If it is determined in step S36 of FIG. 4 that the processing of all frames has not been completed, the time counter is incremented in step S37, and the process returns to step S31, and for the next frame, The subsequent processing is repeated.

7フレーム目以降、ステップS33においては、最初のフレームから6番目のフレームまでのいずれかのフレームではないと判断されるので、ステップS34において、1フレームディレイ表示設定処理が実行される。   From the seventh frame onward, in step S33, since it is determined that it is not any frame from the first frame to the sixth frame, one-frame delay display setting processing is executed in step S34.

次に、図38のフローチャートを参照して、7フレーム目以降で、図4のステップS34において実行される、1フレームディレイ表示処理について説明する。   Next, with reference to the flowchart of FIG. 38, the one-frame delay display process executed in step S34 of FIG. 4 after the seventh frame will be described.

ステップS361において、CPU20は、表示キューに保持されている情報を基に、デコーダ22乃至デコーダ24のうちの、設定されているデコーダによるデコード処理から1フレーム遅れで表示が行われるように、表示命令を、デコーダ22デコーダ24のうちの、設定されているデコーダに、コントロールバス19を介して通知し、表示キューの対応するピクチャIDを削除する。このとき、デコーダ22乃至デコーダ24のうちの、設定されているデコーダの出力アドレス決定部80は、コントロールバス76を介して、CPU20からの制御信号を受け、メモリコントローラ80を制御して、ビデオバンクメモリ82から、対応するピクチャを読み出させて、セレクタ25に供給する。   In step S361, the CPU 20 displays a display command so that display is performed with a delay of one frame from the decoding processing by the set decoder among the decoders 22 to 24 based on the information held in the display queue. To the set decoder among the decoders 22 and 24 via the control bus 19 and delete the corresponding picture ID in the display queue. At this time, the output address determination unit 80 of the set decoder among the decoders 22 to 24 receives the control signal from the CPU 20 via the control bus 76 and controls the memory controller 80 to control the video bank. The corresponding picture is read from the memory 82 and supplied to the selector 25.

ステップS362において、CPU20は、図6のステップS81において設定される次のデータを供給するデコーダを示すレジスタに保持されている値を基に、セレクタ25を制御して、デコード済みのフレームの出力を制御し、処理は、図4のステップS34に戻り、ステップS35に進む。   In step S362, the CPU 20 controls the selector 25 based on the value held in the register indicating the decoder that supplies the next data set in step S81 in FIG. 6, and outputs the decoded frame. The process returns to step S34 in FIG. 4 and proceeds to step S35.

例えば、再生速度が1倍である場合、図21を用いて説明したように、時間情報付き表示順設定キューに設定されている時間情報を基に実行されるBピクチャのデコードタイミングに対して、1フレーム分Bピクチャの表示が遅れて実行されるように、時間情報付き表示順設定キューに設定されているピクチャの順に、表示が設定される。   For example, when the playback speed is 1 time, as described with reference to FIG. 21, with respect to the decoding timing of the B picture executed based on the time information set in the display order setting queue with time information, The display is set in the order of the pictures set in the display order setting queue with time information so that the display of the B picture for one frame is delayed.

また、再生速度が−1倍である場合も、図22を用いて説明したように、時間情報付き表示順設定キューに設定されている時間情報を基に実行されるBピクチャのデコードタイミングに対して、1フレーム分Bピクチャの表示が遅れて実行されるように、時間情報付き表示順設定キューに設定されているピクチャの順に、表示が設定される。   Also, when the playback speed is -1 times, as described with reference to FIG. 22, the decoding timing of the B picture executed based on the time information set in the display order setting queue with time information is also described. Thus, the display is set in the order of the pictures set in the display order setting queue with time information so that the display of the B picture for one frame is delayed.

また、+2倍速の高速再生における場合は図25、−2倍速の高速再生における場合は図26、+4倍速の高速再生における場合は図27、−4倍速の高速再生における場合は図28、+5倍速の高速再生における場合は図29、そして、−5倍速の高速再生における場合は図30を用いて説明したように、時間情報付き表示順設定キューに設定されている時間情報を基に実行されるBピクチャのデコードタイミングに対して、1フレーム分Bピクチャの表示が遅れて実行されるように、時間情報付き表示順設定キューに設定されているピクチャの順に、表示が設定される。   25 for high-speed playback at + 2 × speed, FIG. 26 for high-speed playback at −2 × speed, FIG. 27 for high-speed playback at + 4 × speed, and FIG. 28 at + 4 × high-speed playback, + 5 × speed. As shown in FIG. 29 in the case of high-speed playback and in FIG. 30 in the case of high-speed playback at -5 times speed, the processing is executed based on the time information set in the display order setting queue with time information. The display is set in the order of the pictures set in the display order setting queue with time information so that the display of the B picture for one frame is delayed with respect to the decoding timing of the B picture.

このような処理により、フレームを保持しておくバンクの数が、デコードの処理単位に含まれるIピクチャおよびPピクチャの数と、Bピクチャ格納分の2面との合計数であれば、アンカーフレームであるIピクチャおよびPピクチャを、バンクの固定位置に格納して、複雑なバンク面制御を行わずに、高速再生、逆方向再生、および、逆方向高速再生を実現することができる。   As a result of such processing, if the number of banks holding frames is the total number of I pictures and P pictures included in the decoding processing unit and two planes for storing B pictures, anchor frames The I picture and the P picture can be stored at fixed positions in the bank, and high-speed reproduction, reverse reproduction, and reverse high-speed reproduction can be realized without performing complicated bank surface control.

なお、デコードと表示の開始タイミングの位相のずれは、デコード処理単位に含まれるIピクチャおよびPピクチャの数に基づいて求められるものとして説明したが、例えば、デコード処理単位に含まれるフレームのうち、表示されるフレーム数を基にデコードと表示の開始タイミングの位相のずれを求めることができるようにしても良い。   The phase shift between the decoding start timing and the display start timing has been described based on the number of I pictures and P pictures included in the decoding processing unit. For example, among the frames included in the decoding processing unit, Based on the number of frames to be displayed, it may be possible to obtain a phase shift between the decode and display start timings.

なお、正方向または逆方向の高速再生が実行される場合、例えば、2番目以降のデコード処理単位におけるデコードのスケジューリングにおいて、表示されるフレームと表示されないフレームとの判断、すなわち、間引きが行われるのに先立って、例えば、デコード処理単位の先頭で表示されるピクチャのピクチャタイプなどの符号化パラメータを予め検出するようにしても良い。   When high-speed playback in the forward direction or the reverse direction is executed, for example, in the scheduling of decoding in the second and subsequent decoding processing units, determination of a frame to be displayed and a frame not to be displayed, that is, thinning is performed. Prior to this, for example, an encoding parameter such as a picture type of a picture displayed at the head of a decoding processing unit may be detected in advance.

例えば、表示されるフレームと表示されないフレームとの判断が行われる前に、前のデコード処理単位のデコードのスケジュールにおいて計数されたフレームカウンタと、算出された間引き周期とに基づいて、デコード処理単位の先頭で表示されるピクチャのピクチャタイプを予め検出するようにしても良いし、他の方法で、デコード処理単位の先頭で表示されるピクチャのピクチャタイプを予め検出することができるようにしても良い。   For example, before the determination of the frame to be displayed and the frame not to be displayed is made, based on the frame counter counted in the decoding schedule of the previous decoding processing unit and the calculated thinning cycle, the decoding processing unit The picture type of the picture displayed at the head may be detected in advance, or the picture type of the picture displayed at the head of the decoding process unit may be detected in advance by another method. .

このようにすることにより、デコードのスケジュール処理を、更に、正確に高速に実行することが可能となる。   By doing so, it is possible to execute the decoding schedule processing more accurately and at high speed.

デコード処理単位の先頭で表示されるピクチャのピクチャタイプを予め検出するための具体的な処理の一例について、以下に説明する。   An example of specific processing for detecting in advance the picture type of the picture displayed at the beginning of the decoding processing unit will be described below.

図39のフローチャートを参照して、デコード処理単位の先頭で表示されるピクチャのピクチャタイプを予め検出する処理をスケジューリングに先立って行うことができるようにした、フレームごとに行う処理2について説明する。この処理ルーチンは、表示が指令されたストリームデータが終了するまで、または、表示の終了が指令されるまで、1フレームごとに繰り返して実行される。   With reference to the flowchart of FIG. 39, description will be given of a process 2 performed for each frame, in which a process of detecting a picture type of a picture displayed at the head of a decoding process unit in advance can be performed prior to scheduling. This processing routine is repeatedly executed for each frame until the stream data for which display is instructed is completed or until display is instructed.

ステップS431において、図5を用いて説明した入力ストリーム状態変更処理が実行される。   In step S431, the input stream state change process described with reference to FIG. 5 is executed.

ステップS432において、図40を用いて後述するデコードスケジュール処理2が実行される。デコードスケジュール処理2において、デコードタイミングがスケジュールされる。そして、デコードタイミングのスケジュール処理に先立って、デコード処理単位の先頭で表示されるピクチャのピクチャタイプを予め検出するための処理が実行されるようになされている。   In step S432, decode schedule processing 2 described later with reference to FIG. 40 is executed. In the decode schedule process 2, the decode timing is scheduled. Prior to the decoding timing schedule processing, processing for detecting in advance the picture type of the picture displayed at the head of the decoding processing unit is executed.

ステップS433において、CPU20は、1フレーム単位で処理の時間を表すカウンタである時間カウンタを参照することにより、処理の対象となっているのは、デコード順において、再生されるストリームデータの最初のフレームから6番目のフレームのうちのいずれかのフレームであるか否かを判断する。   In step S433, the CPU 20 refers to the time counter that is a counter representing the processing time in units of one frame, so that the processing target is the first frame of the stream data to be reproduced in the decoding order. It is determined whether the frame is one of the sixth frames from the first frame.

ステップS433において、処理の対象となっているのは、デコード順において、再生されるストリームデータの最初のフレームから6番目のフレームのうちのいずれかのフレームではないと判断された場合、ステップS434において、図38を用いて説明した1フレームディレイ表示設定処理が実行される。   If it is determined in step S433 that the processing target is not one of the sixth frames to the sixth frame of the stream data to be reproduced in the decoding order, in step S434 The one-frame delay display setting process described with reference to FIG. 38 is executed.

ステップS433において、処理の対象となっているのは、デコード順において、再生されるストリームデータの最初のフレームから6番目のフレームのうちのいずれかのフレームであると判断された場合、または、ステップS434の処理の終了後、ステップS435において、図42を用いて後述するフレーム制御処理2が実行される。フレーム制御処理2において、処理対象となっているフレームがデコードされる。   If it is determined in step S433 that the processing target is any one of the sixth frame to the sixth frame of the stream data to be reproduced in the decoding order, or step After the processing of S434 is completed, in step S435, frame control processing 2 described later with reference to FIG. 42 is executed. In the frame control process 2, the frame to be processed is decoded.

ステップS436において、CPU20は、すべてのフレームの処理が終了したか否かを判断する。ステップS436において、すべてのフレームの処理が終了していないと判断された場合、ステップS437において、CPU20は、1フレームを単位とする時間カウンタをインクリメントする。   In step S436, the CPU 20 determines whether or not processing of all frames has been completed. If it is determined in step S436 that processing of all frames has not been completed, in step S437, the CPU 20 increments a time counter in units of one frame.

ステップS437の処理の終了後、処理は、ステップS431に戻り、それ以降の処理が繰り返される。ステップS436において、すべてのフレームの処理が終了したと判断された場合、処理は終了される。   After the process of step S437 is completed, the process returns to step S431, and the subsequent processes are repeated. If it is determined in step S436 that all the frames have been processed, the process ends.

このようにして、CPU20は、1フレームの処理ごとに、時間カウンタをカウントアップし、ユーザの指令した再生速度に応じて、デコードをスケジュールして、1フレームごとに、デコードを行わせ、表示を設定するが、この処理においては、デコードタイミングのスケジュール処理に先立って、デコード処理単位の先頭で表示されるピクチャのピクチャタイプを予め検出するための処理を実行するようになされている。   In this way, the CPU 20 counts up the time counter for each processing of one frame, schedules decoding according to the playback speed instructed by the user, performs decoding for each frame, and displays the display. In this process, a process for detecting in advance the picture type of the picture displayed at the head of the decoding process unit is executed prior to the decoding timing schedule process.

次に、図40のフローチャートを参照して、図39のステップS432において実行される、デコードスケジュール処理1について説明する。   Next, the decoding schedule process 1 executed in step S432 in FIG. 39 will be described with reference to the flowchart in FIG.

ステップS471乃至ステップS478において、図6のステップS71乃至ステップS78と基本的に同様の処理が実行される。   In steps S471 through S478, basically the same processing as in steps S71 through S78 of FIG. 6 is executed.

すなわち、入力ピクチャキューを参照して、入力ピクチャキューが空であるか否かが判断され、入力ピクチャキューが空ではないと判断された場合、処理は、図39のステップS432に戻り、ステップS433に進む。入力ピクチャキューが空であると判断された場合、図15のフローチャートを用いて説明した入力処理が実行される。   That is, referring to the input picture queue, it is determined whether or not the input picture queue is empty. If it is determined that the input picture queue is not empty, the process returns to step S432 in FIG. Proceed to When it is determined that the input picture queue is empty, the input process described with reference to the flowchart of FIG. 15 is executed.

そして、次にデータの供給を受けるデコーダに対応して設定される時間情報付き表示順設定キューが空であるか否かが判断され、時間情報付き表示順設定キューが空ではないと判断された場合、すなわち、スケジュール済みの1GOP相当のピクチャに対して、フレームごとにデコード処理または表示処理が実行されている途中である場合、処理は、図39のステップS432に戻り、ステップS433に進む。   Then, it is determined whether or not the display order setting queue with time information set corresponding to the decoder that receives the next data supply is empty, and it is determined that the display order setting queue with time information is not empty. In other words, that is, when the decoding process or the display process is being executed for each frame for the scheduled picture corresponding to 1 GOP, the process returns to step S432 in FIG. 39 and proceeds to step S433.

時間情報付き表示順設定キューが空であると判断された場合、リオーダ処理が実行され、I/Pピクチャデコードキューに、デコードするGOPのうちのIピクチャおよびPピクチャのピクチャIDが、デコード順に設定される。そして、IピクチャおよびPピクチャを格納するバンク位置、および、Pピクチャのデコードにおける参照画像バンクが指定され、IピクチャおよびPピクチャがそれぞれ格納されるバンク位置を基に、Bピクチャのデコードにおける参照画像バンクの位置が指定され、図12を用いて説明した表示順設定キューが設定される。   When it is determined that the display order setting queue with time information is empty, reorder processing is executed, and the picture IDs of the I picture and P picture of the GOP to be decoded are set in the decoding order in the I / P picture decoding queue. Is done. Then, a bank position for storing the I picture and the P picture, and a reference image bank in the decoding of the P picture are designated, and a reference picture in the decoding of the B picture is based on the bank position in which the I picture and the P picture are respectively stored. The bank position is designated, and the display order setting queue described with reference to FIG. 12 is set.

そして、ステップS479において、図41を用いて後述する間引き処理2が実行される。この間引き処理2は、デコードタイミングのスケジュール処理に先立って、デコード処理単位の先頭で表示されるピクチャのピクチャタイプを予め検出するための処理である。   In step S479, the thinning process 2 described later with reference to FIG. 41 is executed. This thinning-out process 2 is a process for detecting in advance the picture type of the picture displayed at the head of the decoding process unit prior to the decoding timing schedule process.

そして、ステップS480乃至ステップS482において、図6のステップS79乃至ステップS81において実行された処理と基本的に同等の処理が実行される。すなわち、図16のフローチャートを用いて説明した表示位相決定処理が実行され、図17のフローチャートを用いて説明した時間情報付きスケジュール決定処理が実行され、デコードと表示のタイミングがスケジュールされる。   Then, in steps S480 to S482, basically the same processing as the processing executed in steps S79 to S81 in FIG. 6 is executed. That is, the display phase determination process described using the flowchart of FIG. 16 is executed, the schedule determination process with time information described using the flowchart of FIG. 17 is executed, and the timing of decoding and display is scheduled.

具体的には、ステップS479において実行された間引き処理2により、デコードタイミングのスケジュール処理に先立って、デコード処理単位の先頭で表示されるピクチャのピクチャタイプを予め検出することができるので、例えば、表示の先頭がIピクチャまたはPピクチャである場合、図13を用いて説明した様に、先にIピクチャおよびPピクチャがデコードされた後、Bピクチャがデコードされ、表示開始のタイミングは、デコード開始から6ピクチャ分ずれることにより、Bピクチャのデコードのタイミングと表示のタイミングが、1フレーム分ずれるように、デコードと表示のタイミングのスケジュールが行われる。また、表示の先頭がBピクチャである場合、図14を用いて説明した様に、先にIピクチャおよびPピクチャがデコードされた後、Bピクチャがデコードされ、表示開始のタイミングは、デコード開始から7ピクチャ分ずれることにより、Bピクチャのデコードのタイミングと表示のタイミングが、1フレーム分ずれるように、デコードと表示のタイミングのスケジュールが行われる。   Specifically, the thinning process 2 executed in step S479 can detect in advance the picture type of the picture displayed at the beginning of the decoding processing unit prior to the decoding timing scheduling process. When the head of the picture is an I picture or a P picture, as described with reference to FIG. 13, after the I picture and the P picture are first decoded, the B picture is decoded, and the display start timing is from the start of decoding. The decoding and display timing is scheduled so that the B picture decoding timing and the display timing are shifted by one frame by shifting by six pictures. If the top of the display is a B picture, as described with reference to FIG. 14, after the I picture and the P picture are first decoded, the B picture is decoded, and the display start timing is from the start of decoding. The decoding and display timing is scheduled so that the B picture decoding timing and the display timing are shifted by one frame by shifting by seven pictures.

そして、次にデコードされるデータを供給するデコーダの設定を切り替える処理が実行されて、処理は、図39のステップS432に戻り、ステップS433に進む。   Then, a process of switching the setting of a decoder that supplies data to be decoded next is executed, and the process returns to step S432 in FIG. 39 and proceeds to step S433.

このような処理により、デコードと表示のタイミングがスケジュールされる。   By such processing, the decoding and display timing is scheduled.

次に、図41のフローチャートを参照して、図40のステップS479において実行される間引き処理2について説明する。   Next, the thinning process 2 executed in step S479 of FIG. 40 will be described with reference to the flowchart of FIG.

ステップS501において、CPU20は、図5を用いて説明した入力ストリーム状態変更処理において設定されたストリーム入力状態を基に、ユーザの設定に基づいた再生速度は、正方向、または、逆方向の高速再生であるか否かを判断する。ステップS501において、高速再生ではないと判断された場合、処理は、後述するステップS510に進む。   In step S501, based on the stream input state set in the input stream state change process described with reference to FIG. 5, the CPU 20 sets the playback speed based on the user setting to high-speed playback in the forward direction or the reverse direction. It is determined whether or not. If it is determined in step S501 that high-speed playback is not performed, the process proceeds to step S510 described later.

ステップS501において、高速再生であると判断された場合、ステップS502において、CPU20は、処理中のフレームは、スピード設定が変更された後の最初のGOPの最初のフレームであるか否かを判断する。   If it is determined in step S501 that high-speed playback is performed, in step S502, the CPU 20 determines whether or not the frame being processed is the first frame of the first GOP after the speed setting is changed. .

ステップS502において、処理中のフレームは、入力ストリーム状態が変更された後の最初のGOPの最初のフレームであると判断された場合、ステップS503において、CPU20は、スピード設定値GOP_Speedを基に、間引き周期を決定して、レジスタに保存する。   If it is determined in step S502 that the frame being processed is the first frame of the first GOP after the input stream state has been changed, in step S503, the CPU 20 decimates based on the speed setting value GOP_Speed. Determine the period and save it in the register.

具体的には、CPU20は、例えば、2倍速または−2倍速で再生が行われる場合、間引き周期を1/2としてレジスタに保存し、3倍速または−3倍速で再生が行われる場合、間引き周期を1/3としてレジスタに保存する。   Specifically, for example, when reproduction is performed at 2 × speed or −2 × speed, the CPU 20 stores the thinning cycle in the register as ½, and when reproduction is performed at 3 × speed or −3 × speed, Is saved in the register as 1/3.

ステップS504において、CPU20は、間引き処理2においてデコード処理単位にかかわらずフレームの数をカウントするフレームカウンタをリセットする。   In step S504, the CPU 20 resets a frame counter that counts the number of frames in the thinning-out process 2 regardless of the decoding process unit.

ステップS502において、処理中のフレームは、入力ストリーム状態が変更された後の最初のGOPの最初のフレームではないと判断された場合、または、ステップS504の処理の終了後、ステップS505において、CPU20は、表示順設定キューに保持されているピクチャIDに対応付けられて、確認済みフラグが設定されているか否かを基に、表示順設定キューはすべて確認済みであるか否かを判断する。確認済みフラグは、後述するステップS509の処理により、表示順設定キューに設定されるフラグである。ステップS505において、表示順設定キューはすべて確認済みであると判断された場合、処理は、後述するステップS510に進む。   In step S502, if it is determined that the frame being processed is not the first frame of the first GOP after the input stream state is changed, or after the processing in step S504 is completed, the CPU 20 determines in step S505. Based on whether or not the confirmed flag is set in association with the picture ID held in the display order setting queue, it is determined whether or not all the display order setting queues have been confirmed. The confirmed flag is a flag that is set in the display order setting queue by processing in step S509 described later. If it is determined in step S505 that all display order setting queues have been confirmed, the process proceeds to step S510 described later.

ステップS505において、表示順設定キューはすべて確認済みではない、換言すれば、表示順設定キューに確認済みフラグが設定されていないピクチャIDが残っていると判断された場合、ステップS506において、CPU20は、フレームカウンタを1インクリメントする。   If it is determined in step S505 that all display order setting queues have not been confirmed, in other words, if there is a picture ID for which no confirmed flag is set in the display order setting queue, the CPU 20 in step S506 The frame counter is incremented by one.

ステップS507において、CPU20は、間引き周期の決定の結果、レジスタに保持されている間引き周期と、フレームカウンタの値を参照し、フレームカウンタに示されるフレームは表示されるか否かを判断する。具体的には、CPU20は、間引き周期が1/2である場合、フレーム数をカウントするフレームカウンタの値が2n(nは正の整数)であれば、表示を行い、それ以外の場合は、表示を行わないようにしたり、間引き周期が1/3である場合、フレーム数をカウントするフレームカウンタの値が3n(nは正の整数)であれば、表示を行い、それ以外の場合は、表示を行わないようにする。ステップS507において、表示が行われると判断された場合、すなわち、間引かれないフレームであると判断された場合、処理は、後述するステップS509に進む。   In step S507, the CPU 20 refers to the thinning cycle held in the register and the value of the frame counter as a result of determining the thinning cycle, and determines whether or not the frame indicated by the frame counter is displayed. Specifically, when the thinning cycle is ½, the CPU 20 performs display if the value of the frame counter that counts the number of frames is 2n (n is a positive integer), otherwise, When the display is not performed or the thinning cycle is 1/3, if the value of the frame counter that counts the number of frames is 3n (n is a positive integer), the display is performed. Otherwise, the display is performed. Do not display. If it is determined in step S507 that display is to be performed, that is, if it is determined that the frame is not thinned out, the process proceeds to step S509 described later.

ステップS507において、表示されないと判断された場合、すなわち、間引かれるフレームであると判断された場合、ステップS508において、CPU20は、表示順設定キューの処理対象のフレームに、非表示であることを示す削除フラグを設定する。   If it is determined in step S507 that the frame is not displayed, that is, if it is determined that the frame is to be thinned out, in step S508, the CPU 20 determines that the frame to be processed in the display order setting queue is not displayed. Set the delete flag to indicate.

ステップS507において、フレームカウンタに示されるフレームの表示が行われると判断された場合、または、ステップS508の処理の終了後、ステップS509において、CPU20は、表示順設定キューのフレームカウンタに示されるフレームに対応するピクチャIDに対応付けて確認済みフラグを設定し、処理は、ステップS505に戻り、それ以降の処理が繰り返される。   If it is determined in step S507 that the frame indicated by the frame counter is to be displayed, or after the processing of step S508 is completed, in step S509, the CPU 20 sets the frame indicated by the frame counter in the display order setting queue. A confirmed flag is set in association with the corresponding picture ID, the process returns to step S505, and the subsequent processes are repeated.

ステップS501において、高速再生ではないと判断された場合、または、ステップS505において、表示順設定キューはすべて確認済みであると判断された場合、ステップS510において、CPU20は、表示順設定キューに、間引き処理2の実行時のスピード設定値であるGOP_Speedを設定し、図40のステップS479に戻り、ステップS480に進む。   If it is determined in step S501 that high-speed playback is not performed, or if it is determined in step S505 that all display order setting queues have been confirmed, in step S510, the CPU 20 thins out the display order setting queue. GOP_Speed, which is a speed setting value at the time of executing process 2, is set, the process returns to step S479 in FIG. 40, and the process proceeds to step S480.

このような処理により、表示順設定キューにおいて、デコードのスケジューリングに先立って、表示されないフレームに非表示であることを示す削除フラグが対応付けられるので、デコードのスケジュール時には、デコード処理単位の先頭で表示されるピクチャのピクチャタイプを検出することができる。そして、この処理ルーチン以降にデコードされるBピクチャは、表示されるもののみとなり(間引かれるBピクチャは、デコード処理部77に供給されない)、間引かれるIピクチャまたはPピクチャは、デコードはされるが、表示されないようになされる。   By such processing, in the display order setting queue, a deletion flag indicating non-display is associated with a non-displayed frame prior to decoding scheduling, so when displaying a decoding schedule, the display is displayed at the head of the decoding processing unit. The picture type of the picture to be played can be detected. The B picture decoded after this processing routine is only displayed (the B picture to be thinned is not supplied to the decoding processing unit 77), and the I picture or P picture to be thinned is decoded. But not displayed.

次に、図42のフローチャートを参照して、図39のステップS435において実行される、フレーム制御処理2について説明する。   Next, the frame control process 2 executed in step S435 in FIG. 39 will be described with reference to the flowchart in FIG.

ステップS541において、CPU20は、再生装置1内で実行される各処理のタイミングを管理するためのカウンタである時間管理カウンタと、時間情報付きI/Pピクチャデコードキューを参照し、表示時刻が過ぎてしまったストリームデータがあるか否かを判断する。ステップS541において、表示時刻が過ぎてしまったストリームデータがあると判断された場合、処理は、後述するステップS547に進み、図35を用いて説明したアンダーフロー処理が実行されて、処理は、図39のステップS435に戻り、ステップS436に進む。   In step S541, the CPU 20 refers to the time management counter, which is a counter for managing the timing of each process executed in the playback device 1, and the I / P picture decode queue with time information, and the display time has passed. It is determined whether there is stream data. If it is determined in step S541 that there is stream data whose display time has passed, the process proceeds to step S547 described later, and the underflow process described with reference to FIG. 35 is executed. Returning to step S435 of step 39, the process proceeds to step S436.

ステップS541において、表示時刻が過ぎてしまったストリームデータがないと判断された場合、ステップS542乃至ステップS545において、図18のステップS192乃至ステップS195と基本的に同様の処理が実行される。   If it is determined in step S541 that there is no stream data whose display time has passed, basically the same processing as that in steps S192 to S195 of FIG. 18 is executed in steps S542 to S545.

すなわち、図19を用いて説明したIピクチャおよびPピクチャデコード処理が実行され、図20を用いて説明したBピクチャデコード処理が実行される。そして、CPU20から、CPU11に、表示ピクチャ情報が通知され、CPU20は、時間管理カウンタをインクリメントする。これらの処理は、図41のステップS508において削除フラグが設定されなかった(間引かれなかった)フレームに対して実行される。   That is, the I picture and P picture decoding process described with reference to FIG. 19 is executed, and the B picture decoding process described with reference to FIG. 20 is executed. Then, the display picture information is notified from the CPU 20 to the CPU 11, and the CPU 20 increments the time management counter. These processes are executed for frames for which the deletion flag is not set (not thinned out) in step S508 of FIG.

そして、ステップS546において、図43を用いて後述する間引き処理3が実行されて、処理は、図39のステップS435に戻り、ステップS436に進む。   In step S546, the thinning process 3 described later with reference to FIG. 43 is executed, and the process returns to step S435 in FIG. 39 and proceeds to step S436.

このような処理により、表示が遅れていなければ、設定されたデコードスケジュールに基づいて、1フレーム分のデコードが実行されて、表示ピクチャ情報が、CPU11に通知され、間引き処理3が実行される。そして、表示が遅れているとき、図35を用いて説明したアンダーフロー処理が実行される。   If display is not delayed by such processing, decoding for one frame is executed based on the set decoding schedule, display picture information is notified to the CPU 11, and thinning-out processing 3 is executed. When the display is delayed, the underflow process described using FIG. 35 is executed.

次に、図43のフローチャートを参照して、図42のステップS546において実行される間引き処理3について説明する。   Next, the thinning process 3 executed in step S546 in FIG. 42 will be described with reference to the flowchart in FIG.

ステップS571において、CPU20は、1つ前に実行された間引き処理(デコードスケジュール処理2において、間引き処理2が実行された場合は、間引き処理2)の実行時と比較して、再生のスピード設定が同方向で高速になったか否かを判断する。具体的には、CPU20は、現在のスピード設定値speedと、表示順設定キューに設定されているGOP_speedとを基に、speed/GOP_speed>1が成立するか否かを判断することにより、1つ前に実行された間引き処理の実行時と比較して、再生のスピード設定が同方向で高速になったか否かを判断する。ステップS571において、1つ前に実行された間引き処理の実行時と比較して、再生のスピード設定が、同方向で高速になっていない、すなわち、前の間引き処理と速度が変更されていないか、遅くなったか、または、逆方向になったと判断された場合、処理は、図42のステップS546に戻り、処理は、図39のステップS436に進む。   In step S <b> 571, the CPU 20 sets the playback speed setting compared to the execution of the thinning process that was executed immediately before (when the thinning process 2 is executed in the decoding schedule process 2). It is determined whether or not the speed is increased in the same direction. Specifically, the CPU 20 determines whether or not speed / GOP_speed> 1 is satisfied based on the current speed setting value speed and the GOP_speed set in the display order setting queue. It is determined whether or not the playback speed setting has become faster in the same direction as compared to the execution of the thinning process executed previously. In step S571, whether or not the playback speed setting is faster in the same direction as compared with the execution of the thinning process executed immediately before, that is, whether the speed of the previous thinning process is changed. If it is determined that the time has been delayed or the direction has been reversed, the process returns to step S546 in FIG. 42, and the process proceeds to step S436 in FIG.

ステップS571において、1つ前に実行された間引き処理の実行時と比較して、再生のスピード設定が、同方向で高速になったと判断された場合、ステップS572において、CPU20は、間引き処理2の実行時と現在のそれぞれのスピード設定値を基に、間引き周期を決定して、レジスタに保存する。   If it is determined in step S571 that the playback speed setting has become faster in the same direction as compared with the execution of the thinning process executed immediately before, the CPU 20 performs the thinning process 2 in step S572. Based on the speed setting values at the time of execution and the current values, a thinning cycle is determined and stored in a register.

具体的には、CPU20は、speed/GOP_speedの絶対値の逆数を基に間引き周期を設定し、例えば、間引き処理2の実行時にスピード設定が2倍速であったが、現在のスピード設定値が4倍速であった場合、間引き周期を1/2として、間引き周期を保持するレジスタに保存する。   Specifically, the CPU 20 sets the thinning cycle based on the reciprocal of the absolute value of speed / GOP_speed. For example, when the thinning process 2 is executed, the speed setting is double speed, but the current speed setting value is 4 In the case of double speed, the thinning cycle is halved and stored in a register that holds the thinning cycle.

ステップS573において、CPU20は、間引き処理3においてデコード処理単位にかかわらずフレームの数をカウントするフレームカウンタをリセットする。   In step S <b> 573, the CPU 20 resets the frame counter that counts the number of frames in the thinning-out process 3 regardless of the decoding process unit.

ステップS574において、CPU20は、時間情報付き表示順設定キューに保持されているピクチャIDに対応付けられて、確認済みフラグが設定されているか否かを基に、時間情報付き表示順設定キューはすべて確認済みであるか否かを判断する。確認済みフラグは、後述するステップS579の処理により、時間情報付き表示順設定キューに設定されるフラグである。ステップS574において、時間情報付き表示順設定キューはすべて確認済みであると判断された場合、処理は、図42のステップS546に戻り、処理は、図39のステップS436に進む。   In step S574, the CPU 20 associates all of the display order with time information display queues with reference to whether or not the confirmed flag is set in association with the picture ID held in the display order setting queue with time information. It is determined whether or not it has been confirmed. The confirmed flag is a flag that is set in the display order setting queue with time information by the process of step S579 described later. If it is determined in step S574 that all display order setting queues with time information have been confirmed, the process returns to step S546 in FIG. 42, and the process proceeds to step S436 in FIG.

ステップS574において、時間情報付き表示順設定キューはすべて確認済みではない、換言すれば、時間情報付き表示順設定キューに確認済みフラグが設定されていないピクチャIDが残っていると判断された場合、ステップS575において、CPU20は、フレームカウンタを1インクリメントする。   If it is determined in step S574 that all display order setting queues with time information have not been confirmed, in other words, it is determined that there is still a picture ID for which the confirmed flag is not set in the display order setting queue with time information. In step S575, the CPU 20 increments the frame counter by 1.

ステップS576において、CPU20は、間引き周期の決定の結果、レジスタに保持されている間引き周期と、フレームカウンタの値を参照し、フレームカウンタに示されるフレームは表示されるか否かを判断する。具体的には、CPU20は、間引き周期が1/2である場合、フレーム数をカウントするフレームカウンタの値が2n(nは正の整数)であれば、表示を行い、それ以外の場合は、表示を行わないようにしたり、間引き周期が1/3である場合、フレーム数をカウントするフレームカウンタの値が3n(nは正の整数)であれば、表示を行い、それ以外の場合は、表示を行わないようにする。ステップS576において、表示が行われると判断された場合、すなわち、間引かれないフレームであると判断された場合、処理は、後述するステップS579に進む。   In step S576, the CPU 20 refers to the thinning cycle held in the register and the value of the frame counter as a result of the determination of the thinning cycle, and determines whether the frame indicated by the frame counter is displayed. Specifically, when the thinning cycle is ½, the CPU 20 performs display if the value of the frame counter that counts the number of frames is 2n (n is a positive integer), otherwise, When the display is not performed or the thinning cycle is 1/3, if the value of the frame counter that counts the number of frames is 3n (n is a positive integer), the display is performed. Otherwise, the display is performed. Do not display. If it is determined in step S576 that display is to be performed, that is, if it is determined that the frame is not thinned out, the process proceeds to step S579 described later.

ステップS576において、表示されないと判断された場合、すなわち、間引かれるフレームであると判断された場合、ステップS577において、CPU20は、処理対象のフレームに対応するピクチャIDを、時間情報付き表示順設定キューから削除するか、または、時間情報付き表示順設定キューの対応するピクチャIDに対して、非表示であることを示すフラグを対応付ける。   If it is determined in step S576 that the frame is not displayed, that is, if it is determined that the frame is to be thinned out, in step S577, the CPU 20 sets the picture ID corresponding to the processing target frame to the display order with time information. Either delete from the queue, or associate a flag indicating non-display with the corresponding picture ID in the display order setting queue with time information.

ステップS578において、図24を用いて説明した、時間情報再設定処理が実行される。このとき、ステップS302において算出される時間情報調整値added_countは、一つ前の間引き処理と比較してスピード設定が変化した場合の、ステップS576およびステップS577の処理による間引きによって変更されたピクチャの数である。   In step S578, the time information resetting process described with reference to FIG. 24 is executed. At this time, the time information adjustment value added_count calculated in step S302 is the number of pictures changed by decimation by the processing of step S576 and step S577 when the speed setting is changed compared to the previous decimation processing. It is.

ステップS576において、フレームカウンタに示されるフレームの表示が行われると判断された場合、または、ステップS578の処理の終了後、ステップS579において、CPU20は、時間情報付き表示順設定キューのフレームカウンタに示されるフレームに対応するピクチャIDに対応付けて確認済みフラグを設定し、処理は、ステップS574に戻り、それ以降の処理が繰り返される。   When it is determined in step S576 that the frame indicated by the frame counter is to be displayed, or after the processing of step S578 is completed, in step S579, the CPU 20 indicates the frame counter in the display order setting queue with time information. The confirmed flag is set in association with the picture ID corresponding to the frame to be processed, the process returns to step S574, and the subsequent processes are repeated.

このような処理により、間引き処理2から速度設定が変更されて、同方向で、かつ、高速になった場合には、表示されないフレームのピクチャIDが、時間情報付き表示順設定キューから削除されるか、または、時間情報付き表示順設定キューの対応するピクチャIDに対して、非表示であることを示すフラグが対応付けられる。Bピクチャのデコード処理と、1フレームディレイ表示設定処理は、再設定された時間情報付き表示順設定キューを参照して実行される。間引き処理2から速度設定が変更されて、同方向で、かつ、高速になった場合には、その速度設定に基づいて、時間情報付き表示順設定キューの設定が更新されるため、この処理ルーチン以降にデコードされるBピクチャは、表示されるもののみとなり(間引かれるBピクチャは、デコード処理部77に供給されない)、間引かれるIピクチャまたはPピクチャは、デコードはされるが、表示されないようになされる。   With such processing, when the speed setting is changed from the thinning-out processing 2 and the speed is increased in the same direction, the picture ID of the frame that is not displayed is deleted from the display order setting queue with time information. Alternatively, a flag indicating non-display is associated with the corresponding picture ID in the display order setting queue with time information. The B picture decoding process and the one-frame delay display setting process are executed with reference to the reset display order setting queue with time information. When the speed setting is changed from the thinning process 2 and the speed is increased in the same direction, the setting of the display order setting queue with time information is updated based on the speed setting. Subsequent B pictures to be decoded are only displayed (thinned B pictures are not supplied to the decoding processing unit 77), and thinned I or P pictures are decoded but not displayed. It is made like.

したがって、デコードのスケジューリングが終了した後でも、1フレームごとに、速度設定の変更があるか否かが検出されて、間引き処理2から速度設定が変更されて、同方向で、かつ、高速になった場合には、時間情報付き表示順設定キューが再設定されるので、速度変更にすばやく追従して、ストリームが再生されるようにデコードをスケジューリングすることが可能となる。   Therefore, even after the scheduling of decoding is completed, whether or not there is a change in the speed setting is detected for each frame, and the speed setting is changed from the thinning-out process 2 to increase the speed in the same direction. In such a case, since the display order setting queue with time information is reset, it is possible to quickly follow the speed change and schedule the decoding so that the stream is reproduced.

以上においては、15ピクチャで1GOPが構成されている場合について説明したが、例えば、1GOPに含まれるアンカーフレーム(IピクチャおよびPピクチャ)の数が、5つ以上または4つ以下であるような場合について、図44乃至図64を用いて説明する。   In the above, the case where 1 GOP is configured with 15 pictures has been described. For example, the number of anchor frames (I picture and P picture) included in 1 GOP is 5 or more or 4 or less. Will be described with reference to FIGS. 44 to 64. FIG.

図44および図45を用いて、1GOPを構成するピクチャのアンカーフレーム数が多いため、図1を用いて説明した再生装置1により上述した15ピクチャで1GOPが構成されている場合と同様にしてデコード処理を行った場合に発生する不具合について説明する。   44 and 45, since the number of anchor frames of a picture constituting 1 GOP is large, decoding is performed in the same manner as in the case where 1 GOP is composed of the 15 pictures described above by the playback apparatus 1 described with reference to FIG. A problem that occurs when processing is performed will be described.

まず、B0からP14までの15ピクチャで1GOPが構成されているGOP(0)、B0からP20までの21ピクチャで1GOPが構成されているGOP(1)、B0からP14までの15ピクチャで1GOPが構成されているGOP(2)を含むストリームを、上述した15ピクチャで1GOPが構成されている場合と同様にして1GOPを1つのデコーダ(デコーダ22乃至デコーダ24のうちのいずれか)でデコードして1倍速で正方向に再生する場合について、図44を用いて説明する。   First, GOP (0) in which 1 GOP is composed of 15 pictures from B0 to P14, GOP (1) in which 1 GOP is composed of 21 pictures from B0 to P20, and 1 GOP in 15 pictures from B0 to P14 A stream including the configured GOP (2) is decoded by one decoder (any one of the decoders 22 to 24) in the same manner as when the 1 GOP is configured with the 15 pictures described above. A case of reproducing in the forward direction at 1 × speed will be described with reference to FIG.

それぞれのGOPの先頭のBピクチャは、前のGOPとともにデコードされる。GOP(1)のアンカーフレームは7フレームであるので、GOP(1)をデコードするデコーダにおいて、ビデオバンクメモリ82の8つのバンクのうち、アンカーフレームをデコードするために用いられる6つのバンクがI2乃至P17で一杯になり、続くアンカーフレーム(P20と次のGOP(2)のI2)が配置できなくなる。したがって、GOP(1)をデコードするデコーダでは、アンカーフレームP20と次のGOP(2)のI2をデコード時に参照することができない。これにより、GOP(1)のP17以降のピクチャと、GOP(2)のB0B1はデコードすることができない。   The leading B picture of each GOP is decoded along with the previous GOP. Since the anchor frame of GOP (1) is 7 frames, in the decoder for decoding GOP (1), of the 8 banks of the video bank memory 82, 6 banks used for decoding the anchor frame are I2 to P17 becomes full, and the following anchor frame (P20 and I2 of the next GOP (2)) cannot be arranged. Therefore, the decoder that decodes GOP (1) cannot refer to the anchor frame P20 and I2 of the next GOP (2) at the time of decoding. As a result, the picture after P17 of GOP (1) and B0B1 of GOP (2) cannot be decoded.

次に、B0からP14までの15ピクチャで1GOPが構成されているGOP(0)、B0からP20までの21ピクチャで1GOPが構成されているGOP(1)、B0からP14までの15ピクチャで1GOPが構成されているGOP(2)を含むストリームを、上述した15ピクチャで1GOPが構成されている場合と同様にして1GOPを1つのデコーダ(デコーダ22乃至デコーダ24のうちのいずれか)でデコードして1倍速で逆方向に再生する場合について、図45を用いて説明する。   Next, GOP (0) in which 1 GOP is composed of 15 pictures from B0 to P14, GOP (1) in which 1 GOP is composed of 21 pictures from B0 to P20, and 1 GOP in 15 pictures from B0 to P14 1 GOP is decoded by one decoder (any one of decoders 22 to 24) in the same manner as the case where 1 GOP is composed of 15 pictures as described above. A case of reproducing in the reverse direction at 1 × speed will be described with reference to FIG.

それぞれのGOPの先頭のBピクチャは、次にデコードされるGOPとともにデコードされる。この場合においても、GOP(1)のアンカーフレームは7フレームであるので、図44を用いて説明した場合と同様に、GOP(1)をデコードするデコーダにおいて、ビデオバンクメモリ82の8つのバンクのうち、アンカーフレームをデコードするために用いられる6つのバンクがI2乃至P17で一杯になり、続くアンカーフレーム(P20と前のGOP(2)のI2)が配置できなくなる。したがって、GOP(1)をデコードするデコーダでは、アンカーフレームP20と前のGOP(2)のI2をデコード時に参照することができない。これにより、GOP(1)のP17以降のピクチャと、GOP(2)のB0B1はデコードすることができない。   The top B picture of each GOP is decoded together with the GOP to be decoded next. Even in this case, since the anchor frame of GOP (1) is 7 frames, the decoder of GOP (1) decodes the eight banks of the video bank memory 82 as in the case described with reference to FIG. Of these, the six banks used for decoding the anchor frame are filled with I2 to P17, and the subsequent anchor frame (P20 and I2 of the previous GOP (2)) cannot be arranged. Therefore, the decoder that decodes GOP (1) cannot refer to the anchor frame P20 and I2 of the previous GOP (2) at the time of decoding. As a result, the picture after P17 of GOP (1) and B0B1 of GOP (2) cannot be decoded.

このように、1GOPを構成するピクチャのアンカーフレーム数が多い場合、図1を用いて説明した再生装置1により上述した15ピクチャで1GOPが構成されている場合と同様にして1GOPごとにデコード処理を施すと、再生できないフレームが発生してしまう。   As described above, when the number of anchor frames of a picture constituting one GOP is large, decoding processing is performed for each GOP in the same manner as in the case where one GOP is constituted by the 15 pictures described above by the playback device 1 described with reference to FIG. If applied, a frame that cannot be reproduced is generated.

一方、1GOPに含まれるアンカーフレームの数が5つ以下であるGOPと、1GOPに含まれるアンカーフレームの数が5つ以上であるGOPとが連続し、かつ、高速再生される場合に発生する不具合ついて、図46および図47を用いて説明する。   On the other hand, a problem that occurs when a GOP in which the number of anchor frames included in one GOP is five or less and a GOP in which the number of anchor frames included in one GOP is five or more are continuous and played back at high speed This will be described with reference to FIGS. 46 and 47. FIG.

まず、B0B1I2の3ピクチャで1GOPが構成されているGOP(0)、GOP(1)、GOP(2)が連続し、B0からP14までの15ピクチャで1GOPが構成されているGOP(3)およびGOP(4)を含むストリームを、上述した15ピクチャで1GOPが構成されている場合と同様にして1GOPを1つのデコーダ(デコーダ22乃至デコーダ24のうちのいずれか)でデコードして2倍速で正方向に再生する場合について、図46を用いて説明する。   First, GOP (0), GOP (1), and GOP (2) in which 1 GOP is composed of 3 pictures of B0B1I2 are continuous, and GOP (3) in which 1 GOP is composed of 15 pictures from B0 to P14. A stream including GOP (4) is decoded by one decoder (any one of the decoders 22 to 24) and double-speed-corrected in the same manner as in the case where one GOP is composed of 15 pictures described above. The case of reproducing in the direction will be described with reference to FIG.

それぞれのGOPの先頭のBピクチャは、前のGOPとともにデコードされる。GOP(0)乃至GOP(2)のアンカーフレームはそれぞれ1フレームのみであり、続くGOP(3)のアンカーフレームは5つである。GOP(0)のB0B1のうち表示されるピクチャであるB0は、一つ前のフレームとともに、デコーダ2においてデコードされ、次に、GOP(0)のI2ピクチャと、表示されるGOP(1)のB1とが、デコーダ0においてデコードされ、次に、GOP(1)のI2ピクチャと、表示されるGOP(2)のB0とが、デコーダ1においてデコードされる。そして、それぞれのデコーダにおいて、表示される全てのピクチャが出力された後、次のデコード処理が始まるようになされる。   The leading B picture of each GOP is decoded along with the previous GOP. Each GOP (0) to GOP (2) has only one anchor frame, and the following GOP (3) has five anchor frames. Of the B0B1 of GOP (0), B0, which is the displayed picture, is decoded by the decoder 2 together with the previous frame, and then the I2 picture of GOP (0) and the displayed GOP (1) B1 is decoded by the decoder 0, and then the I2 picture of GOP (1) and the B0 of the displayed GOP (2) are decoded by the decoder 1. In each decoder, after all the pictures to be displayed are output, the next decoding process is started.

すなわち、デコーダ0においては、GOP(1)のB1が表示のために出力されたのち、GOP(3)のアンカーフレームのデコードが開始されるので、デコード遅れが発生してしまい、GOP(3)のアンカーフレームのデコードが終了して、最初に表示されるピクチャであるB3がデコードされるまでの間、デコーダ2によりデコードされたGOP(3)のB1が出力された状態となってしまう。   That is, in decoder 0, since B1 of GOP (1) is output for display, decoding of the anchor frame of GOP (3) is started, so that a decoding delay occurs, and GOP (3) The B1 of GOP (3) decoded by the decoder 2 is output until B3 which is the first displayed picture is decoded after the decoding of the anchor frame is completed.

次に、B0B1I2の3ピクチャで1GOPが構成されているGOP(4)、GOP(3)、GOP(2)が連続し、B0からP14までの15ピクチャで1GOPが構成されているGOP(1)およびGOP(0)を含むストリームを、上述した15ピクチャで1GOPが構成されている場合と同様にして1GOPを1つのデコーダ(デコーダ22乃至デコーダ24のうちのいずれか)でデコードして2倍速で逆方向に再生する場合について、図47を用いて説明する。   Next, GOP (4), GOP (3), and GOP (2) in which 1 GOP is composed of 3 pictures of B0B1I2 are consecutive, and GOP (1) in which 1 GOP is composed of 15 pictures from B0 to P14 1 GOP is decoded by one decoder (any one of decoders 22 to 24) in the same manner as in the case where 1 GOP is composed of 15 pictures as described above, and the stream including GOP (0) is doubled. The case of reproducing in the reverse direction will be described with reference to FIG.

それぞれのGOPの先頭のBピクチャは、次にデコードされるGOPとともにデコードされる。この場合においても、GOP(4)乃至GOP(2)のアンカーフレームはそれぞれ1フレームのみであり、続くGOP(1)のアンカーフレームは5つである。GOP(4)の前のGOPのB0B1のうち、表示されるB0は、GOP(4)のI2とともにデコーダ1でデコードされ、GOP(4)のB0B1のうち表示されるピクチャであるB1は、次のGOP(3)のI2とともに、デコーダ0においてデコードされる。次に、GOP(3)のB0B1のうち表示されるピクチャであるB1は、次のGOP(2)のI2とともに、デコーダ2においてデコードされ、次に、GOP(2)のB0B1のうち表示されるピクチャであるB0は、次のGOP(1)とともに、デコーダ1においてデコードされる。そして、それぞれのデコーダにおいて、表示される全てのピクチャが出力された後、次のデコード処理が始まるようになされる。   The top B picture of each GOP is decoded together with the GOP to be decoded next. Also in this case, there are only one anchor frame for GOP (4) to GOP (2), and there are five anchor frames for GOP (1). Of B0B1 of GOP before GOP (4), B0 to be displayed is decoded by decoder 1 together with I2 of GOP (4), and B1 which is a picture to be displayed among B0B1 of GOP (4) is Is decoded in the decoder 0 together with I2 of the GOP (3). Next, B1 which is a picture to be displayed in B0B1 of GOP (3) is decoded by decoder 2 together with I2 of next GOP (2), and then displayed in B0B1 of GOP (2). The picture B0 is decoded by the decoder 1 together with the next GOP (1). In each decoder, after all the pictures to be displayed are output, the next decoding process is started.

すなわち、デコーダ1においては、GOP(4)のI2が表示のために出力されたのち、GOP(1)のアンカーフレームのデコードが開始されるので、デコード遅れが発生してしまい、GOP(1)のアンカーフレームのデコードが終了して、最初に表示されるピクチャであるGOP(2)のB0がデコードされるまで、デコーダ2によりデコードされたGOP(3)のI2が出力された状態となってしまう。   That is, the decoder 1 starts decoding the anchor frame of the GOP (1) after the I2 of the GOP (4) is output for display, so that a decoding delay occurs and the GOP (1) After the decoding of the anchor frame is completed, I2 of GOP (3) decoded by decoder 2 is output until B0 of GOP (2), which is the first displayed picture, is decoded. End up.

このように、1GOPを構成するピクチャのアンカーフレーム数が少ないものと多いものが連続している場合、図1を用いて説明した再生装置1により上述した15ピクチャで1GOPが構成されている場合と同様にして1GOPごとにデコード処理を施すと、アンカーフレームのデコードにかかる時間のため、デコード遅れが発生してしまう。   In this way, when the number of anchor frames of a picture constituting one GOP is small and large, a case where 1 GOP is constituted by the above-described 15 pictures by the playback apparatus 1 described with reference to FIG. Similarly, when decoding processing is performed for each GOP, a decoding delay occurs due to the time required for decoding the anchor frame.

図44乃至図47を用いて説明した様な、15ピクチャで1GOPが構成されていない場合の不具合を解消するために、図1を用いて説明した再生装置1においては、それぞれのGOPの構成を検出し、デコーダ22乃至デコーダ24のビデオバンクメモリ82の数に対応したアンカーフレームを有するデコード処理単位としてのデコードユニットを、GOPの分割および結合により構成するようにしても良い。   As described with reference to FIGS. 44 to 47, in order to solve the problem in the case where 1 GOP is not configured with 15 pictures, the playback apparatus 1 described with reference to FIG. A decoding unit as a decoding processing unit that detects and has an anchor frame corresponding to the number of video bank memories 82 of the decoders 22 to 24 may be configured by dividing and combining GOPs.

1GOPに30フレーム含まれている場合のGOP分割と、分割されたGOPのそれぞれのデコードについて、図48乃至図50を用いて説明する。   GOP division when 30 frames are included in one GOP and decoding of each of the divided GOPs will be described with reference to FIGS. 48 to 50. FIG.

図48に示されるように、GOP(0)は、B0乃至P29の30フレームで構成され、次にGOP(1)が続いている。それぞれのデコード処理単位において、先頭の2枚のBピクチャは、その前のGOPと一緒にデコードされるようになされている。   As shown in FIG. 48, GOP (0) is composed of 30 frames from B0 to P29, followed by GOP (1). In each decoding processing unit, the first two B pictures are decoded together with the preceding GOP.

ビデオバンクメモリ82においてアンカーフレームに割り当てられるのはビデオバンクメモリ82の8バンクのうちの6バンクであるが、GOP(0)には、アンカーフレームが10フレーム存在するので、上述したように、15ピクチャで1GOPが構成されている場合と同様にして1GOPごとにデコード処理を施す方法では、全てのフレームをデコードすることができない。そこで、図48の下段に示されるように、GOP(0)をアンカーフレームが6フレーム以下となるように2つに分割してデコード処理単位を構成し、分割された中に含まれるPピクチャおよびBピクチャを全てデコードするために必要となるアンカーフレームを含めてデコードを行うものとする。   In the video bank memory 82, six of the eight banks of the video bank memory 82 are allocated to the anchor frames. However, since there are ten anchor frames in GOP (0), as described above, 15 In the same way as when 1 GOP is composed of pictures, the method of performing decoding processing for each GOP cannot decode all frames. Therefore, as shown in the lower part of FIG. 48, GOP (0) is divided into two so that the anchor frame is 6 frames or less to form a decoding processing unit, and the P picture and It is assumed that decoding is performed including an anchor frame necessary for decoding all B pictures.

図49に示されるように、GOP(0)をI2乃至P17と、B18乃至P29およびB0B1の2つのデコード単位GOP(0−0)とGOP(0−1)とに分割してそれぞれ異なるデコーダにてデコードする。後半のGOP(0−1)の先頭の2つのBピクチャB18B19をデコードするには、GOP(0−0)の最後のアンカーフレームP17が必要である。すなわち、P17はGOP(0−1)のアンカーフレームでもある。また、後半のGOP(0−1)のアンカーフレームをデコードするには、前半のGOP(0−0)のアンカーフレームが必要である。したがって、GOP(0−1)のアンカーフレームをデコードする前に、GOP(0−0)のアンカーフレームを、アンカーフレームのデコード用の6つのバンクを用いてデコードし、その後、GOP(0−1)のアンカーフレームと次のGOPの先頭のIピクチャをアンカーフレームのデコード用の6つのバンクを用いて(それぞれのバンクを上書きして)デコードする。   As shown in FIG. 49, GOP (0) is divided into two decoding units GOP (0-0) and GOP (0-1) of I2 to P17 and B18 to P29 and B0B1, and each is divided into different decoders. To decode. In order to decode the first two B pictures B18B19 of the latter half GOP (0-1), the last anchor frame P17 of GOP (0-0) is required. That is, P17 is also an anchor frame of GOP (0-1). Further, in order to decode the anchor frame of the latter half GOP (0-1), the anchor frame of the first half GOP (0-0) is necessary. Therefore, before decoding the anchor frame of GOP (0-1), the anchor frame of GOP (0-0) is decoded using the six banks for decoding the anchor frame, and then GOP (0-1). ) And the first I picture of the next GOP are decoded using the six banks for decoding the anchor frame (overwriting each bank).

したがって、GOP(0−0)とGOP(0−1)のいずれのデコード処理単位をデコードするデコーダにおいても、アンカーフレームは固定バンクでデコードされ、正方向であっても逆方向であっても、通常再生であっても、高速再生であっても、そのデコード順は不変である。一方、GOP(0−0)とGOP(0−1)のいずれのデコード処理単位においても、Bピクチャは、再生方向および再生速度によって、デコード順が異なる。図49においては、再生速度1倍の正方向再生および逆方向再生におけるデコード順が示されている。   Therefore, in a decoder that decodes any decoding processing unit of GOP (0-0) and GOP (0-1), an anchor frame is decoded in a fixed bank, Whether the playback is normal playback or high-speed playback, the decoding order is unchanged. On the other hand, in any decoding processing unit of GOP (0-0) and GOP (0-1), the decoding order of B pictures differs depending on the playback direction and playback speed. FIG. 49 shows the decoding order in forward reproduction and reverse reproduction with a reproduction speed of 1 ×.

すなわち、図50に示されるように、再生速度1倍の正方向再生においては、いずれかのデコーダにおいて、GOP(0−0)のアンカーフレームI2乃至P17がデコードされた後、GOP(0−0)のBピクチャB3乃至B16がデコードされるとともに、異なるデコーダにおいて、アンカーフレームI2乃至P14がデコードされた後、それを参照画像として、GOP(0−1)のアンカーフレームP17乃至P29およびGOP(1)の先頭のI2がデコードされ、続いて、GOP(0−1)のBピクチャB18乃至B28と、GOP(1)のB0B1がデコードされる。   That is, as shown in FIG. 50, in forward playback at a playback speed of 1 time, after GOP (0-0) anchor frames I2 to P17 are decoded by any decoder, GOP (0-0) ) B pictures B3 to B16 are decoded and anchor frames I2 to P14 are decoded in different decoders, and are then used as reference images to anchor frames P17 to P29 and GOP (1) of GOP (0-1). ) At the head I2 is decoded, and then B pictures B18 to B28 of GOP (0-1) and B0B1 of GOP (1) are decoded.

そして、再生速度1倍の逆方向再生においては、いずれかのデコーダにおいて、アンカーフレームI2乃至P14がデコードされた後、それを参照画像として、GOP(0−1)のアンカーフレームP17乃至P29およびGOP(1)の先頭のI2がデコードされ、続いて、GOP(1)のB1B0とGOP(0−1)のBピクチャB28乃至B18がデコードされ、異なるデコーダにおいて、GOP(0−0)のアンカーフレームI2乃至P17がデコードされた後、GOP(0−0)のBピクチャB16乃至B3がデコードされる。   In reverse playback at a playback speed of 1 ×, after any of the anchor frames I2 to P14 is decoded by any decoder, the anchor frames P17 to P29 of GOP (0-1) and GOP are used as reference images. The first I2 of (1) is decoded, and then B1B0 of GOP (1) and B pictures B28 to B18 of GOP (0-1) are decoded, and the GOP (0-0) anchor frame is decoded in different decoders. After I2 to P17 are decoded, B pictures B16 to B3 of GOP (0-0) are decoded.

次に、1GOPに含まれるアンカーフレーム数が4以下であるGOPが連続する場合のデコード処理単位の設定と、デコード処理について、図51乃至図53を用いて説明する。   Next, setting of decoding processing units and decoding processing when GOPs having 4 or less anchor frames included in one GOP continue will be described with reference to FIGS.

図51に示されるように、B0乃至P5の6フレームで1GOPのGOP(0)が構成され、B(0)乃至P8の9フレームでGOP(1)が構成され、そして、GOP(2)が続いている。それぞれのデコード処理単位において、先頭の2枚のBピクチャは、その前のGOPと一緒にデコードされるようになされている。   As shown in FIG. 51, GOP (0) of 1 GOP is composed of 6 frames B0 to P5, GOP (1) is composed of 9 frames B (0) to P8, and GOP (2) is composed of in the process of. In each decoding processing unit, the first two B pictures are decoded together with the preceding GOP.

ビデオバンクメモリ82においてアンカーフレームに割り当てられるのはビデオバンクメモリ82の8バンクのうちの6バンクであるが、GOP(0)には、アンカーフレームが2フレーム存在し、GOP(1)には、アンカーフレームが3フレーム存在する。そこで、図51の下段に示されるように、GOP(0)とGOP(1)とを結合してアンカーフレームが6フレーム以下となるデコード処理単位を設定し、デコードを行うものとする。   In the video bank memory 82, six of the eight banks of the video bank memory 82 are allocated to the anchor frame. However, there are two anchor frames in GOP (0), and GOP (1) has two frames. There are three anchor frames. Therefore, as shown in the lower part of FIG. 51, GOP (0) and GOP (1) are combined to set a decoding processing unit in which anchor frames are 6 frames or less, and decoding is performed.

ここでは、GOP(0)の先頭のB0およびB1は、前のGOPとともにデコードされ、GOP(0)のI2乃至P5、GOP(1)、および、GOP(2)の先頭のB0およびB1を、1つのデコード処理単位GOP(0−0)としてデコードする。図52に示されるように、アンカーフレームは固定バンクでデコードされ、正方向であっても逆方向であっても、通常再生であっても、高速再生であっても、そのデコード順は不変である。一方、Bピクチャは、再生方向および再生速度によって、デコード順が異なる。図52においては、再生速度1倍の正方向再生および逆方向再生におけるデコード順が示されている。   Here, the top B0 and B1 of GOP (0) are decoded together with the previous GOP, and GOP (0) 's I2 to P5, GOP (1), and the top B0 and B1 of GOP (2) are Decoding is performed as one decoding processing unit GOP (0-0). As shown in FIG. 52, the anchor frame is decoded in a fixed bank, and the decoding order is invariable regardless of whether it is normal direction, reverse direction, normal reproduction, or high-speed reproduction. is there. On the other hand, the decoding order of B pictures differs depending on the playback direction and playback speed. In FIG. 52, the decoding order in forward reproduction and reverse reproduction at a reproduction speed of 1 is shown.

すなわち、図53に示されるように、再生速度1倍の正方向再生においては、いずれかのデコーダにおいて、GOP(0−0)のアンカーフレームおよびGOP(2)の先頭のI2がデコードされ、続いて、GOP(0−0)のBピクチャがデコードされる。そして、再生速度1倍の逆方向再生においては、いずれかのデコーダにおいて、GOP(0−0)のアンカーフレームおよびGOP(2)の先頭のI2がデコードされ、続いて、GOP(0−0)のBピクチャが、逆方向再生されるようにデコードされる。   That is, as shown in FIG. 53, in forward playback at a playback speed of 1 ×, the anchor frame of GOP (0-0) and the head I2 of GOP (2) are decoded in either decoder, Thus, the B picture of GOP (0-0) is decoded. In reverse playback at a playback speed of 1 ×, the anchor frame of GOP (0-0) and the leading I2 of GOP (2) are decoded in any decoder, and then GOP (0-0) The B pictures are decoded so as to be reproduced in the reverse direction.

次に、1GOPに含まれるアンカーフレーム数が6GOP以上の長いGOPと、1GOPに含まれるアンカーフレーム数が4以下の短いGOPが連続している場合、これらのGOPを結合した後分割してデコード処理単位を設定し、デコーダへの負荷を均等化するようにした場合について、図54乃至図56を用いて説明する。   Next, if a long GOP with 6 GOP or more anchor frames included in one GOP and a short GOP with 4 or less anchor frames included in 1 GOP are consecutive, these GOPs are combined and then divided and decoded. A case where the unit is set and the load on the decoder is equalized will be described with reference to FIGS.

図54に示されるように、B0乃至P20の21フレームで1GOPのGOP(0)が構成され、B0乃至P8の9フレームで1GOPのGOP(1)が構成され、次にGOP(2)が続いている。それぞれのデコード処理単位において、先頭の2枚のBピクチャは、その前のGOPと一緒にデコードされるようになされている。   As shown in FIG. 54, GOP (0) of 1 GOP is composed of 21 frames from B0 to P20, GOP (1) of 1 GOP is composed of 9 frames from B0 to P8, and then GOP (2) follows. ing. In each decoding processing unit, the first two B pictures are decoded together with the preceding GOP.

ビデオバンクメモリ82においてアンカーフレームに割り当てられるのはビデオバンクメモリ82の8バンクのうちの6バンクであるが、GOP(0)には、アンカーフレームが7フレーム存在するので、上述したように、15ピクチャで1GOPが構成されている場合と同様にして1GOPごとにデコード処理を施す方法では、不具合なくデコードすることができない。そこで、GOP(0)をアンカーフレームが6フレーム以下となる2つのデコード処理単位に分割するようにしてもよいが、ここでは、続くGOPを構成するフレーム数が少ないので、図54の下段に示されるように、GOP(0)とGOP(1)を結合した後、分割して、GOP(0)とGOP(1)から、2つのデコード処理単位GOP(0−0)とGOP(0−1)とを設定し、このデコード処理単位に基づいてデコードを行うものとする。   In the video bank memory 82, six of the eight banks of the video bank memory 82 are allocated to the anchor frame. However, since there are seven anchor frames in GOP (0), as described above, 15 In the same manner as when 1 GOP is configured with a picture, the method of performing decoding processing for each 1 GOP cannot be decoded without any trouble. Therefore, GOP (0) may be divided into two decoding processing units in which the anchor frame is 6 frames or less, but here, since the number of frames constituting the subsequent GOP is small, it is shown in the lower part of FIG. As shown in the figure, GOP (0) and GOP (1) are combined and then divided, and GOP (0) and GOP (1) are divided into two decoding processing units GOP (0-0) and GOP (0-1). ) Is set, and decoding is performed based on this decoding processing unit.

図55に示されるように、GOP(0)とGOP(1)を結合した後、GOP(0)のI2乃至P17を第1のデコード処理単位GOP(0−0)とし、GOP(0)のB18乃至P20、GOP(1)全体、および、GOP(2)のB1B2とを第2のデコード処理単位GOP(0−1)として、それぞれ異なるデコーダにてデコードする。GOP(0−1)の先頭の2つのBピクチャB18B19をデコードするには、GOP(0−0)の最後のアンカーフレームP17が必要である。すなわち、P17はGOP(0−1)のアンカーフレームでもある。また、後半のGOP(0−1)のアンカーフレームをデコードするには、前半のGOP(0−0)のアンカーフレームが必要である。したがって、GOP(0−1)のアンカーフレームをデコードする前に、GOP(0−0)のアンカーフレームを、アンカーフレームのデコード用の6つのバンクを用いてデコードし、その後、GOP(0−1)のアンカーフレームと次のGOPの先頭のIピクチャをアンカーフレームのデコード用の6つのバンクを用いて(それぞれのバンクを上書きして)デコードする。   As shown in FIG. 55, after combining GOP (0) and GOP (1), I2 to P17 of GOP (0) are set as the first decoding processing unit GOP (0-0), and GOP (0) B18 to P20, the entire GOP (1), and B1B2 of GOP (2) are decoded as different decoding processing units GOP (0-1) by different decoders. In order to decode the first two B pictures B18B19 of GOP (0-1), the last anchor frame P17 of GOP (0-0) is required. That is, P17 is also an anchor frame of GOP (0-1). Further, in order to decode the anchor frame of the latter half GOP (0-1), the anchor frame of the first half GOP (0-0) is necessary. Therefore, before decoding the anchor frame of GOP (0-1), the anchor frame of GOP (0-0) is decoded using the six banks for decoding the anchor frame, and then GOP (0-1). ) And the first I picture of the next GOP are decoded using the six banks for decoding the anchor frame (overwriting each bank).

したがって、GOP(0−0)とGOP(0−1)のいずれのデコード処理単位をデコードするデコーダにおいても、アンカーフレームは固定バンクでデコードされ、正方向であっても逆方向であっても、通常再生であっても、高速再生であっても、そのデコード順は不変である。一方、GOP(0−0)とGOP(0−1)のいずれのデコード処理単位においても、Bピクチャは、再生方向および再生速度によって、デコード順が異なる。図55においては、再生速度1倍の正方向再生および逆方向再生におけるデコード順が示されている。   Therefore, in a decoder that decodes any decoding processing unit of GOP (0-0) and GOP (0-1), an anchor frame is decoded in a fixed bank, Whether the playback is normal playback or high-speed playback, the decoding order is unchanged. On the other hand, in any decoding processing unit of GOP (0-0) and GOP (0-1), the decoding order of B pictures differs depending on the playback direction and playback speed. FIG. 55 shows the decoding order in forward reproduction and backward reproduction at a reproduction speed of 1 ×.

すなわち、図56に示されるように、再生速度1倍の正方向再生においては、いずれかのデコーダにおいて、GOP(0−0)のアンカーフレームである、GOP(0)のI2乃至P17がデコードされた後、GOP(0−0)のBピクチャ、すなわち、GOP(0)のB3乃至B16がデコードされる。そして、異なるデコーダにおいて、GOP(0−0)のアンカーフレームI2乃至P14がデコードされた後、それを参照画像として、GOP(0−1)のアンカーフレームである、GOP(0)のP17,P20、GOP(1)のI2,P5,P8、およびGOP(2)の先頭のI2がデコードされ、続いて、GOP(0−1)のBピクチャである、GOP(0)のB18、B19、GOP(1)のB0乃至B7、および、GOP(2)のB0B1がデコードされる。   That is, as shown in FIG. 56, in forward playback at a playback speed of 1 ×, IOP to G17 of GOP (0), which is an anchor frame of GOP (0-0), is decoded in any decoder. Then, the B picture of GOP (0-0), that is, B3 to B16 of GOP (0) are decoded. Then, after the anchor frames I2 to P14 of GOP (0-0) are decoded in different decoders, using them as reference images, P17 and P20 of GOP (0) which are anchor frames of GOP (0-1) , GOP (1) I2, P5, P8 and GOP (2) leading I2 are decoded, followed by GOP (0-1) B picture, GOP (0) B18, B19, GOP B0 to B7 in (1) and B0B1 in GOP (2) are decoded.

そして、再生速度1倍の逆方向再生においては、いずれかのデコーダにおいて、GOP(0−0)のアンカーフレームI2乃至P14がデコードされた後、それを参照画像として、GOP(0−1)のアンカーフレームである、GOP(0)のP17,P20、GOP(1)のI2,P5,P8、およびGOP(2)の先頭のI2がデコードされ、続いて、GOP(2)のB1B0と、GOP(0−1)のBピクチャである、GOP(1)のB7乃至B0、および、GOP(0)のB19、B18がデコードされる。そして、異なるデコーダにおいて、GOP(0−0)のアンカーフレームである、GOP(0)のI2乃至P17がデコードされた後、GOP(0−0)のBピクチャ、すなわち、GOP(0)のB16乃至B3がデコードされる。   In reverse playback at a playback speed of 1 time, after any of the anchor frames I2 to P14 of GOP (0-0) is decoded in any decoder, it is used as a reference image for GOP (0-1). The anchor frames P17 and P20 of GOP (0), I2, P5 and P8 of GOP (1), and the top I2 of GOP (2) are decoded, and then B1B0 of GOP (2) and GOP B7 to B0 of GOP (1) and B19 and B18 of GOP (0), which are B pictures of (0-1), are decoded. Then, after different I2 to P17 of GOP (0), which are anchor frames of GOP (0-0), are decoded by different decoders, B picture of GOP (0-0), that is, B16 of GOP (0) Through B3 are decoded.

次に、1GOPに含まれるアンカーフレーム数が4以下の短いGOPと、1GOPに含まれるアンカーフレーム数が6GOP以上の長いGOPとが連続している場合、これらのGOPを結合した後分割してデコード処理単位を設定し、デコーダへの負荷を均等化するようにした場合について、図57乃至図59を用いて説明する。   Next, if a short GOP with 4 or less anchor frames included in 1 GOP and a long GOP with 6 or more anchor frames included in 1 GOP are consecutive, these GOPs are combined and then divided and decoded. The case where the processing unit is set and the load on the decoder is equalized will be described with reference to FIGS.

図57に示されるように、B0乃至P8の9フレームで1GOPのGOP(0)が構成され、B0乃至P20の21フレームで1GOPのGOP(1)が構成され、次にGOP(2)が続いている。それぞれのデコード処理単位において、先頭の2枚のBピクチャは、その前のGOPと一緒にデコードされるようになされている。   As shown in FIG. 57, GOP (0) of 1 GOP is composed of 9 frames B0 to P8, GOP (1) of 1 GOP is composed of 21 frames of B0 to P20, and then GOP (2) follows. ing. In each decoding processing unit, the first two B pictures are decoded together with the preceding GOP.

ビデオバンクメモリ82においてアンカーフレームに割り当てられるのはビデオバンクメモリ82の8バンクのうちの6バンクである。GOP(0)には、アンカーフレームが3フレームしか存在しないが、GOP(1)には、アンカーフレームが7フレーム存在するので、図57の下段に示されるように、GOP(0)とGOP(1)を結合した後、分割して、GOP(0)とGOP(1)から、2つのデコード処理単位GOP(0−0)とGOP(0−1)とを設定し、このデコード処理単位に基づいてデコードを行うものとする。   In the video bank memory 82, six of the eight banks of the video bank memory 82 are allocated to anchor frames. GOP (0) has only three anchor frames, but GOP (1) has seven anchor frames. Therefore, as shown in the lower part of FIG. 57, GOP (0) and GOP ( 1) are combined and divided, and two decoding processing units GOP (0-0) and GOP (0-1) are set from GOP (0) and GOP (1). It is assumed that decoding is performed based on this.

図58に示されるように、GOP(0)とGOP(1)を結合した後、GOP(0)のI2乃至GOP(1)のP8を第1のデコード処理単位GOP(0−0)とし、GOP(1)のB9乃至P20と、GOP(2)のB1B2とを第2のデコード処理単位GOP(0−1)として、それぞれ異なるデコーダにてデコードする。GOP(0−1)の先頭の2つのBピクチャB9B10をデコードするには、GOP(0−0)の最後のアンカーフレームP8が必要である。すなわち、P8はGOP(0−1)のアンカーフレームでもある。また、後半のGOP(0−1)のアンカーフレームをデコードするには、前半のGOP(0−0)のアンカーフレームのうち、GOP(1)のI2およびP5が必要である。したがって、GOP(0−1)のアンカーフレームをデコードする前に、GOP(0−0)のアンカーフレームに含まれるGOP(1)のI2およびP5を、アンカーフレームのデコード用の6つのバンクのうちのいずれかを用いてデコードし、その後、GOP(0−1)のアンカーフレームと次のGOPの先頭のIピクチャをアンカーフレームのデコード用の6つのバンクを用いて(それぞれのバンクを上書きして)デコードする。   As shown in FIG. 58, after combining GOP (0) and GOP (1), I2 of GOP (0) to P8 of GOP (1) are set as the first decoding processing unit GOP (0-0). B9 to P20 of GOP (1) and B1B2 of GOP (2) are decoded by different decoders as second decoding processing units GOP (0-1). In order to decode the first two B pictures B9B10 of GOP (0-1), the last anchor frame P8 of GOP (0-0) is required. That is, P8 is also an anchor frame of GOP (0-1). Further, in order to decode the anchor frame of the latter half GOP (0-1), I2 and P5 of GOP (1) are required among the anchor frames of the first half GOP (0-0). Therefore, before decoding the anchor frame of GOP (0-1), I2 and P5 of GOP (1) included in the anchor frame of GOP (0-0) are selected from the six banks for decoding the anchor frame. After that, the GOP (0-1) anchor frame and the first I picture of the next GOP are decoded using the six banks for anchor frame decoding (overwriting each bank). ) Decode.

したがって、GOP(0−0)とGOP(0−1)のいずれのデコード処理単位をデコードするデコーダにおいても、アンカーフレームは固定バンクでデコードされ、正方向であっても逆方向であっても、通常再生であっても、高速再生であっても、そのデコード順は不変である。一方、GOP(0−0)とGOP(0−1)のいずれのデコード処理単位においても、Bピクチャは、再生方向および再生速度によって、デコード順が異なる。図58においては、再生速度1倍の正方向再生および逆方向再生におけるデコード順が示されている。   Therefore, in a decoder that decodes any decoding processing unit of GOP (0-0) and GOP (0-1), an anchor frame is decoded in a fixed bank, Whether the playback is normal playback or high-speed playback, the decoding order is unchanged. On the other hand, in any decoding processing unit of GOP (0-0) and GOP (0-1), the decoding order of B pictures differs depending on the playback direction and playback speed. FIG. 58 shows the decoding order in forward playback and backward playback at a playback speed of 1 ×.

すなわち、図59に示されるように、再生速度1倍の正方向再生においては、いずれかのデコーダにおいて、GOP(0−0)のアンカーフレームである、GOP(0)のI2乃至P8と、GOP(1)のI2乃至P8がデコードされた後、GOP(0−0)のBピクチャ、すなわち、GOP(0)のB3乃至B7とGOP(1)のB0乃至B7がデコードされる。そして、異なるデコーダにおいて、GOP(0−0)のアンカーフレームのうちGOP(1)のアンカーフレームであるI2およびP5がデコードされた後、それを参照画像として、GOP(0−1)のアンカーフレームである、GOP(1)のP8乃至P20、およびGOP(2)の先頭のI2がデコードされ、続いて、GOP(0−1)のBピクチャであるGOP(1)のB9乃至B19、および、GOP(2)のB0B1がデコードされる。   That is, as shown in FIG. 59, in forward playback at a playback speed of 1 ×, in any decoder, GOP (0-0) I2 to P8, which are anchor frames of GOP (0-0), and GOP After I2 through P8 of (1) are decoded, B pictures of GOP (0-0), that is, B3 through B7 of GOP (0) and B0 through B7 of GOP (1) are decoded. Then, in different decoders, I2 and P5 which are anchor frames of GOP (1) among the anchor frames of GOP (0-0) are decoded, and then are used as reference images to anchor frames of GOP (0-1). P8 to P20 of GOP (1) and the head I2 of GOP (2) are decoded, and then B9 to B19 of GOP (1) which is a B picture of GOP (0-1), and B0B1 of GOP (2) is decoded.

そして、再生速度1倍の逆方向再生においては、いずれかのデコーダにおいて、GOP(0−0)のアンカーフレームのうちGOP(1)のアンカーフレームであるI2およびP5がデコードされた後、それを参照画像として、GOP(0−1)のアンカーフレームである、GOP(1)のP8乃至P20、およびGOP(2)の先頭のI2がデコードされ、続いて、GOP(2)のB1B0と、GOP(0−1)のBピクチャである、GOP(1)のB19乃至B9がデコードされる。そして、異なるデコーダにおいて、GOP(0−0)のアンカーフレームである、GOP(0)のI2乃至P8およびGOP(1)のI2乃至P8がデコードされた後、GOP(0−0)のBピクチャ、すなわち、GOP(1)のB7乃至B0およびGOP(0)のB7乃至B3がデコードされる。   Then, in reverse playback at a playback speed of 1 ×, any decoder decodes I2 and P5 which are anchor frames of GOP (1) out of the anchor frames of GOP (0-0), and then decodes them. As reference images, P8 to P20 of GOP (1), which is an anchor frame of GOP (0-1), and the top I2 of GOP (2) are decoded, and then B1B0 of GOP (2) and GOP B19 to B9 of GOP (1) which are B pictures of (0-1) are decoded. Then, in different decoders, the GOP (0-0) anchor frames I2 to P8 of GOP (0) and I2 to P8 of GOP (1) are decoded, and then the B picture of GOP (0-0) That is, B7 to B0 of GOP (1) and B7 to B3 of GOP (0) are decoded.

図48乃至図59を用いて説明した様にして、デコード処理単位としてのデコードユニットが構成されるので、デコードユニットごとにスケジューリングが実行されて、指定された再生方向および再生速度で再生されるように、必要に応じて間引き処理が実行されて、デコードが行われ、ストリームが再生出力される。   As described with reference to FIGS. 48 to 59, a decoding unit as a decoding processing unit is configured, so that scheduling is executed for each decoding unit so that playback is performed at a specified playback direction and playback speed. In addition, a thinning process is performed as necessary, decoding is performed, and a stream is reproduced and output.

具体的には、CPU20が、メモリ18に転送されて保存されている複数のGOPのうちの次にデコードされるGOPと、その次(2番目)のGOPの構成を読み出して、アンカーフレームの数を基に、デコード処理単位としてのデコードユニットを、GOPの分割および結合により構成し、PCIブリッジ17に制御コマンドを送出して、メモリ18からデコードユニットごとにストリームデータを読み出させて、デコーダ22乃至デコーダ24のいずれかに供給させるように制御する。PCIブリッジ17は、CPU20の制御に基づいて、メモリ18からデコードユニットごとにストリームデータを読み出して、デコーダ22乃至デコーダ24のいずれかに供給する。   Specifically, the CPU 20 reads the configuration of the GOP to be decoded next among the plurality of GOPs transferred and stored in the memory 18 and the next (second) GOP, and determines the number of anchor frames. Based on the above, a decoding unit as a decoding processing unit is configured by dividing and combining GOPs, a control command is sent to the PCI bridge 17, and stream data is read from the memory 18 for each decoding unit, and the decoder 22 Or the decoder 24 is controlled so as to be supplied. The PCI bridge 17 reads the stream data for each decoding unit from the memory 18 based on the control of the CPU 20 and supplies the stream data to any one of the decoders 22 to 24.

そして、CPU20は、デコードユニットに対して、上述した場合と同様にしてスケジューリングを行う。このとき、例えば、図48を用いて説明したGOP(0−1)図54を用いて説明したGOP(0−1)、または、図57を用いて説明したGOP(0−1)図54を用いて説明したGOP(0−1)のように、そのデコードユニットのアンカーフレームをデコードするために、他のデコードユニットのアンカーフレームの少なくとも一部をデコードする必要がある場合、入力ピクチャキューには、アンカーフレームをデコードするために必要な他のデコードユニットのアンカーフレームも設定され、これらは、I/Pピクチャデコードキューの先頭から順に設定される。しかし、アンカーフレームをデコードするために必要な他のデコードユニットのアンカーフレームは、この処理によって表示されないので、表示順設定キューには設定されない。   Then, the CPU 20 performs scheduling for the decode unit in the same manner as described above. At this time, for example, the GOP (0-1) described with reference to FIG. 48, the GOP (0-1) described with reference to FIG. 54, or the GOP (0-1) FIG. 54 described with reference to FIG. When it is necessary to decode at least a part of the anchor frame of another decoding unit in order to decode the anchor frame of the decoding unit, such as GOP (0-1) described above, the input picture queue includes Anchor frames of other decoding units necessary for decoding the anchor frame are also set, and these are set in order from the head of the I / P picture decoding queue. However, the anchor frames of other decoding units necessary for decoding the anchor frame are not displayed by this processing, and thus are not set in the display order setting queue.

そして、CPU20は、次のデータを供給するデコーダを示すレジスタに保持されている値を参照し、デコーダ22乃至デコーダ24のうちデコードを実行するデコーダとして設定されているものを制御する。デコード処理を実行するデコーダ22乃至デコーダ24のうちのいずれかのエレメンタリストリームアドレス決定部73は、CPU20の制御に基づいて、時間情報付きI/Pピクチャデコードキューに設定されたピクチャIDに対応するピクチャのデータを、メモリコントローラ74により、入力バッファ75から読み出して、デコード処理部77に供給する。   Then, the CPU 20 refers to a value held in a register indicating a decoder that supplies the next data, and controls one of the decoders 22 to 24 that is set as a decoder that performs decoding. The elementary stream address determination unit 73 of any one of the decoders 22 to 24 that executes the decoding process corresponds to the picture ID set in the I / P picture decoding queue with time information based on the control of the CPU 20. The picture data is read from the input buffer 75 by the memory controller 74 and supplied to the decoding processing unit 77.

デコードされるピクチャがIピクチャである場合、CPU20は、デコード処理部77を制御して、メモリコントローラ74から供給されたIピクチャをデコードさせるとともに、書き込み画アドレス決定部78を制御して、デコードされたフレームデータをメモリコントローラ81に供給させて、ビデオバンクメモリ82のうちIピクチャの格納用に指定されたバンクに保存させる。また、デコードされるピクチャがPピクチャである場合、CPU20は、参照画アドレス決定部79を制御してPピクチャの参照バンク位置を基に、メモリコントローラ81により、ビデオバンクメモリ82に格納されている参照画を読み出させて、デコード処理部77に供給させ、デコード処理部77を制御して、メモリコントローラ74から供給されたPピクチャをデコードさせるとともに、書き込み画アドレス決定部78を制御して、デコードされたフレームデータをメモリコントローラ81に供給させて、ビデオバンクメモリ82のうちPピクチャの格納用に指定されたバンクに保存させる。また、デコードされるピクチャがBピクチャである場合、CPU20は、参照画アドレス決定部79を制御して、Bピクチャの参照バンク位置を基に、メモリコントローラ81により、ビデオバンクメモリ82に格納されている参照画を読み出させて、デコード処理部77に供給させ、デコード処理部77を制御して、メモリコントローラ74から供給されたBピクチャをデコードさせる。   When the picture to be decoded is an I picture, the CPU 20 controls the decoding processing unit 77 to decode the I picture supplied from the memory controller 74 and also controls the writing image address determining unit 78 to perform decoding. The frame data is supplied to the memory controller 81 and stored in the bank designated for storing the I picture in the video bank memory 82. When the picture to be decoded is a P picture, the CPU 20 controls the reference picture address determination unit 79 and stores it in the video bank memory 82 by the memory controller 81 based on the reference bank position of the P picture. The reference image is read out and supplied to the decoding processing unit 77, the decoding processing unit 77 is controlled to decode the P picture supplied from the memory controller 74, and the writing image address determining unit 78 is controlled, The decoded frame data is supplied to the memory controller 81 and stored in the bank designated for storing the P picture in the video bank memory 82. If the picture to be decoded is a B picture, the CPU 20 controls the reference picture address determination unit 79 and stores it in the video bank memory 82 by the memory controller 81 based on the reference bank position of the B picture. The reference picture is read out, supplied to the decode processing unit 77, and the decode processing unit 77 is controlled to decode the B picture supplied from the memory controller 74.

次に、図60のフローチャートを参照して、1GOPを構成するピクチャ数が15以外であるときのGOP分割・結合処理について説明する。   Next, GOP division / combination processing when the number of pictures constituting one GOP is other than 15 will be described with reference to the flowchart of FIG.

ステップS601において、CPU20は、分割後、スケジューリングされていないデコードユニットがあるか否かを判断する。   In step S601, the CPU 20 determines whether there is any unscheduled decoding unit after the division.

ステップS601において、スケジューリングされていないデコードユニットがあると判断された場合、ステップS602において、CPU20は、上述したフレームごとに行う処理1またはフレームごとに行う処理2によって、スケジュールされていない分割後のデコードユニットのデコードをスケジューリングし、デコードする。   When it is determined in step S601 that there is an unscheduled decoding unit, in step S602, the CPU 20 performs unscheduled decoding after the process 1 performed for each frame or the process 2 performed for each frame. Schedule and decode unit decoding.

ステップS601において、スケジューリングされていないデコードユニットがないと判断された場合、ステップS603において、CPU20は、デコードのスケジューリングが行われていない次のGOPおよび2番目のGOPの構成を検出する。   If it is determined in step S601 that there is no unscheduled decoding unit, in step S603, the CPU 20 detects the configuration of the next GOP and the second GOP that are not scheduled for decoding.

ステップS604において、CPU20は、次のGOPは、1つのデコーダでデコード可能な最大のサイズよりも大きいか否かを判断する。具体的には、CPU20は、次のGOPのアンカーフレームの数を確認し、1つのデコーダにおいてアンカーフレームのデコード用に用意されているバンクの数と比較することにより、次のGOPが1つのデコーダでデコード可能な最大のサイズよりも大きいか否かを判断する。   In step S604, the CPU 20 determines whether or not the next GOP is larger than the maximum size that can be decoded by one decoder. Specifically, the CPU 20 confirms the number of anchor frames of the next GOP and compares it with the number of banks prepared for decoding the anchor frame in one decoder, so that the next GOP has one decoder. It is determined whether or not the size is larger than the maximum size that can be decoded by.

ステップS604において、次のGOPは1つのデコーダでデコード可能な最大のサイズよりも大きいと判断された場合、ステップS605において、CPU20は、次のGOPと2番目のGOPとを結合して、2つのデコーダでデコード可能なサイズとなるか否かを判断する。具体的には、CPU20は、ビデオバンクメモリ82が8つのバンクを有している場合、次のGOPと2番目のGOPとを結合したときにアンカーフレームが10フレーム以下、すなわち、ビデオバンクメモリ82のバンク数から3を減算した値の2倍以下となっているか否かを判断する。   If it is determined in step S604 that the next GOP is larger than the maximum size that can be decoded by one decoder, in step S605, the CPU 20 combines the next GOP and the second GOP, It is determined whether or not the size is decodable by the decoder. Specifically, when the video bank memory 82 has eight banks, the CPU 20 determines that the anchor frame is 10 frames or less when the next GOP and the second GOP are combined, that is, the video bank memory 82. It is determined whether or not it is less than or equal to twice the value obtained by subtracting 3 from the number of banks.

ステップS605において、次のGOPと2番目のGOPとを結合して、2つのデコーダでデコード可能なサイズとなると判断された場合(例えば、図54乃至図56を用いて説明した様に、1GOPに含まれるアンカーフレーム数が6GOP以上の長いGOPと、1GOPに含まれるアンカーフレーム数が4以下の短いGOPが連続している場合など)、処理は、後述するステップS610に進む。   If it is determined in step S605 that the next GOP and the second GOP are combined to be a size that can be decoded by two decoders (for example, as described with reference to FIGS. 54 to 56, 1 GOP For example, when a long GOP including 6 GOPs or more and a short GOP including 4 or less anchor frames included in one GOP are consecutive), the process proceeds to step S610 described later.

ステップS605において、次のGOPと2番目のGOPとを結合して、2つのデコーダでデコード可能なサイズとならないと判断された場合、ステップS606において、CPU20は、例えば、図48乃至図50を用いて説明した30ピクチャで1GOPが構成されている場合のように、次のGOPを、1つのデコーダでデコード可能な大きさの複数のデコードユニットに分割し、処理は、後述するステップS612に進む。   If it is determined in step S605 that the next GOP and the second GOP are combined and cannot be decoded by two decoders, in step S606, the CPU 20 uses, for example, FIG. 48 to FIG. As in the case where 1 GOP is composed of 30 pictures described above, the next GOP is divided into a plurality of decoding units of a size that can be decoded by one decoder, and the process proceeds to step S612 described later.

ステップS604において、次のGOPは1つのデコーダでデコード可能な最大のサイズよりも大きくない(すなわち、小さい)と判断された場合、ステップS607において、CPU20は、次のGOPと2番目のGOPとを結合して、1つのデコーダでデコード可能なサイズとなるか否かを判断する。   If it is determined in step S604 that the next GOP is not larger (that is, smaller) than the maximum size that can be decoded by one decoder, in step S607, the CPU 20 determines the next GOP and the second GOP. In combination, it is determined whether or not the size is one that can be decoded by one decoder.

ステップS607において、次のGOPと2番目のGOPとを結合して、1つのデコーダでデコード可能なサイズとなると判断された場合、ステップS608において、CPU20は、例えば、図51乃至図53を用いて説明した1GOPに含まれるアンカーフレーム数が4以下であるGOPが連続する場合のようにして、次のGOPと2番目のGOPとを結合して、1つのデコードユニットとし、処理は、後述するステップS612に進む。   If it is determined in step S607 that the next GOP and the second GOP are combined to be a size that can be decoded by one decoder, in step S608, the CPU 20 uses, for example, FIG. 51 to FIG. As in the case where GOPs in which the number of anchor frames included in one GOP is 4 or less are consecutive, the next GOP and the second GOP are combined into one decoding unit, and the process is a step described later. The process proceeds to S612.

ステップS607において、次のGOPと2番目のGOPとを結合して、1つのデコーダでデコード可能なサイズとならないと判断された場合、ステップS609において、CPU20は、次のGOPと2番目のGOPとを結合して、2つのデコーダでデコード可能なサイズとなるか否かを判断する。具体的には、CPU20は、例えば、図57乃至図59を用いて説明した1GOPに含まれるアンカーフレーム数が4以下の短いGOPと、1GOPに含まれるアンカーフレーム数が6GOP以上の長いGOPとが連続しているときなどのように、ビデオバンクメモリ82が8つのバンクを有している場合、次のGOPと2番目のGOPとを結合したときにアンカーフレームが10フレーム以下、すなわち、ビデオバンクメモリ82のバンク数から3を減算した値の2倍以下となっているか否かを判断する。   If it is determined in step S607 that the next GOP and the second GOP are combined and cannot be decoded by one decoder, the CPU 20 determines in step S609 that the next GOP and the second GOP Are combined to determine whether the size can be decoded by the two decoders. Specifically, the CPU 20 includes, for example, a short GOP in which the number of anchor frames included in one GOP described with reference to FIGS. 57 to 59 is four or less and a long GOP in which the number of anchor frames included in one GOP is 6 GOP or more. When the video bank memory 82 has 8 banks, such as when it is continuous, the anchor frame is 10 frames or less when the next GOP and the second GOP are combined, that is, the video bank It is determined whether or not the value is equal to or less than twice the value obtained by subtracting 3 from the number of banks in the memory 82.

ステップS605において、次のGOPと2番目のGOPとを結合して、2つのデコーダでデコード可能なサイズとなると判断された場合、または、ステップS609において、次のGOPと2番目のGOPとを結合して、2つのデコーダでデコード可能なサイズとなると判断された場合、ステップS610において、CPU20は、例えば、図54乃至図56を用いて説明した場合や、図57乃至図59を用いて説明した場合のように、次のGOPと2番目のGOPとを結合後、分割して、2つのデコードユニットとし、処理は、後述するステップS612に進む。   If it is determined in step S605 that the next GOP and the second GOP are combined to be a size that can be decoded by two decoders, or in step S609, the next GOP and the second GOP are combined. When it is determined that the size can be decoded by the two decoders, in step S610, for example, the CPU 20 has been described with reference to FIGS. 54 to 56, or with reference to FIGS. As in the case, the next GOP and the second GOP are combined and then divided into two decoding units, and the process proceeds to step S612 described later.

ステップS609において、次のGOPと2番目のGOPとを結合して、2つのデコーダでデコード可能なサイズとならないと判断された場合、ステップS611において、CPU20は、次のGOPを、そのまま、1つのデコードユニットとする。   If it is determined in step S609 that the next GOP and the second GOP are combined and the size cannot be decoded by the two decoders, in step S611, the CPU 20 directly changes the next GOP to one A decoding unit.

ステップS606、ステップS608、ステップS610、または、ステップS611の処理の終了後、ステップS612において、CPU20は、上述した処理により設定されたデコードユニットのうち、次にデコードされるデコードユニットのデコードを、上述したフレームごとに行う処理1またはフレームごとに行う処理2によってスケジューリングし、デコードする。   After step S606, step S608, step S610, or step S611 is completed, in step S612, the CPU 20 performs decoding of the decoding unit to be decoded next among the decoding units set by the above-described processing. Scheduling and decoding are performed by processing 1 performed for each frame or processing 2 performed for each frame.

ステップS613において、CPU20は、スケジュールされていない分割後のデコードユニットがある場合、そのデコードユニットを、スケジュール待ちのデータとして保持し、処理が終了される。   In step S613, if there is a divided decoding unit that is not scheduled, the CPU 20 holds the decoding unit as data waiting for the schedule, and the process is terminated.

このような処理により、1GOPを構成するピクチャ数が、15ピクチャ以外であり、GOPごとに異なるような場合においても、高速にデコード処理ができるように、GOPの分割や結合が行われる。   By such processing, even when the number of pictures constituting one GOP is other than 15 pictures and is different for each GOP, division and combination of GOPs are performed so that decoding processing can be performed at high speed.

なお、ここでは、デコーダ22乃至デコーダ24のそれぞれのビデオバンクメモリ82が8バンクであり、そのうち6バンクがアンカーフレームのデコード用として固定されている場合のスケジューリングが無駄なく行われるようなGOPの分割または結合の方法について説明したが、デコーダ22乃至デコーダ24のそれぞれのビデオバンクメモリ82に保持可能なフレームの数(バンクの数)が8つではない場合、または、アンカーフレームのデコード用として固定されているバンクの数が上述したものとは異なる場合などにおいては、ビデオバンクメモリ82に保持可能なフレームの数(バンクの数)やアンカーフレームのデコード用として固定されているバンクの数に応じて、GOPの分割または結合が行われるようにしても良いことは言うまでもない。具体的には、アンカーフレームのデコード用として固定されているバンクの数が6つよりも少ない場合、1つのデコードユニットに含まれるアンカーフレームの数が6つよりも少なくなるようにデコードユニットが設定され、アンカーフレームのデコード用として固定されているバンクの数が6つより多い場合、1つのデコードユニットに含まれるアンカーフレームの数が6つよりも多いアンカーフレームのデコード用として固定されているバンクの数よりも少なくなるようにデコードユニットが設定される。   It should be noted that here, the video bank memory 82 of each of the decoders 22 to 24 is 8 banks, of which GOP division is such that scheduling is performed without waste when 6 banks are fixed for anchor frame decoding. Although the method of combining has been described, the number of frames (the number of banks) that can be held in the video bank memory 82 of each of the decoders 22 to 24 is not eight, or is fixed for decoding an anchor frame. Depending on the number of banks that are different from those described above, the number of frames (number of banks) that can be held in the video bank memory 82 and the number of banks that are fixed for anchor frame decoding are used. , GOP may be split or combined. It goes without saying. Specifically, when the number of banks fixed for decoding an anchor frame is less than 6, the decode unit is set so that the number of anchor frames included in one decode unit is less than 6. If the number of banks fixed for decoding an anchor frame is more than six, the number of anchor frames included in one decoding unit is fixed for decoding an anchor frame larger than six. The decoding unit is set so as to be smaller than the number of.

以上説明した処理により、図44を用いて説明した様に21フレームで1GOPが構成されている場合の正方向1倍速再生においても、図61に示されるように、不具合なくデコード処理が実行される。   As described with reference to FIG. 44, the processing described above performs decoding processing without any trouble as shown in FIG. 61 even in the normal direction 1 × speed playback when 1 GOP is composed of 21 frames. .

すなわち、21フレームで1GOPが構成されているGOP(1)は、2つのデコードユニットに分割され、デコーダ1とデコーダ2によりデコードされる。そのとき、後半のデコードユニットのアンカーフレームをデコードするために、まず、デコーダ2から出力されない前半のデコードユニットのアンカーフレームがデコードされた後、後半のデコードユニットのアンカーフレームが、アンカーフレーム用に固定されているバンクを用いて(必要に応じて、前半のデコードユニットのアンカーフレームに上書きされて)デコードされる。   That is, GOP (1) in which 1 GOP is composed of 21 frames is divided into two decoding units and decoded by decoder 1 and decoder 2. At that time, in order to decode the anchor frame of the second half decoding unit, the anchor frame of the first half decoding unit which is not output from the decoder 2 is first decoded, and then the anchor frame of the second half decoding unit is fixed for the anchor frame. Is decoded (overwritten on the anchor frame of the first decoding unit if necessary).

また、同様にして、図45を用いて説明した様に21フレームで1GOPが構成されている場合の逆方向1倍速再生においても、図62に示されるように、不具合なくデコード処理が実行される。   Similarly, as described with reference to FIG. 45, the decoding process is executed without any trouble as shown in FIG. 62 even in the reverse 1 × speed playback when 1 GOP is composed of 21 frames. .

すなわち、21フレームで1GOPが構成されているGOP(1)は、2つのデコードユニットに分割され、デコーダ2とデコーダ1によりデコードされる。そのとき、後半のデコードユニットのアンカーフレームをデコードするために、まず、デコーダ2から出力されない前半のデコードユニットのアンカーフレームがデコードされた後、後半のデコードユニットのアンカーフレームが、アンカーフレーム用に固定されているバンクを用いて(必要に応じて、前半のデコードユニットのアンカーフレームに上書きされて)デコードされる。   That is, GOP (1) in which 1 GOP is composed of 21 frames is divided into two decode units and decoded by decoder 2 and decoder 1. At that time, in order to decode the anchor frame of the second half decoding unit, the anchor frame of the first half decoding unit which is not output from the decoder 2 is first decoded, and then the anchor frame of the second half decoding unit is fixed for the anchor frame. Is decoded (overwritten on the anchor frame of the first decoding unit if necessary).

同様にして、図46を用いて説明した様にアンカーフレーム数の少ないGOPとアンカーフレーム数の多いGOPが連続している場合の正方向2倍速再生においても、図63に示されるように、不具合なくデコード処理が実行される。   Similarly, as described with reference to FIG. 46, in the double-speed playback in the forward direction when a GOP with a small number of anchor frames and a GOP with a large number of anchor frames are continuous, as shown in FIG. The decoding process is executed.

すなわち、B0B1I2で構成されているGOP(0)とGOP(1)とが結合されて1つのデコードユニットが構成され、B0B1I2で構成されているGOP(2)とB0乃至P14の15フレームで構成されているGOP(3)とは、結合された後、2つのデコードユニットに分割される。   That is, GOP (0) and GOP (1) configured by B0B1I2 are combined to form one decoding unit, and configured by GOP (2) configured by B0B1I2 and 15 frames B0 to P14. GOP (3), which has been combined, is divided into two decoding units.

GOP(0)とGOP(1)とで構成されているデコードユニットの先頭のB0B1(GOP(0)のB0B1)のうちの表示されるB(0)と、このBピクチャをデコードするために必要な参照画であるI2は、その前のGOPまたはデコードユニットとともに、デコーダ2でデコードされる。GOP(2)とGOP(3)の前半とで構成されているデコードユニットの先頭のB0B1(GOP(2)のB0B1)のうちの表示されるB(0)と、このBピクチャをデコードするために必要な参照画であるI2は、その前のデコードユニットであるGOP(0)とGOP(1)とで構成されるデコードユニットとともに、デコーダ0でデコードされる。GOP(3)の後半で構成されているデコードユニットの表示されるBピクチャの先頭であるB(7)は、その前のデコードユニットであるGOP(2)とGOP(3)の前半とで構成されているデコードユニットとともに、デコーダ1でデコードされる。GOP(4)の先頭のB0B1のうち、表示されるB0と、このBピクチャをデコードするために必要な参照画であるI2は、その前のデコードユニットであるGOP(3)の後半で構成されているデコードユニットとともに、デコーダ2でデコードされる。そして、GOP(4)のI2以降は、デコーダ0でデコードされる。   Necessary for decoding the displayed B (0) of B0B1 (B0B1 of GOP (0)) of the decoding unit composed of GOP (0) and GOP (1) and this B picture The reference picture I2 is decoded by the decoder 2 together with the previous GOP or decoding unit. In order to decode this B picture, the displayed B (0) of B0B1 (B0B1 of GOP (2)) at the head of the decoding unit composed of GOP (2) and the first half of GOP (3) The reference picture I2 necessary for the decoding is decoded by the decoder 0 together with the decoding unit composed of the preceding decoding units GOP (0) and GOP (1). B (7), which is the head of the B picture to be displayed of the decoding unit configured in the second half of GOP (3), is composed of GOP (2), which is the preceding decoding unit, and the first half of GOP (3). It is decoded by the decoder 1 together with the decoded unit. Of the first B0B1 of GOP (4), B0 to be displayed and I2 which is a reference picture necessary for decoding this B picture are composed of the latter half of GOP (3) which is the preceding decoding unit. It is decoded by the decoder 2 together with the decoding unit. Then, after I2 of GOP (4), it is decoded by the decoder 0.

更に、同様に、図47を用いて説明した様にアンカーフレーム数の少ないGOPとアンカーフレーム数の多いGOPが連続している場合の逆方向2倍速再生においても、図64に示されるように、不具合なくデコード処理が実行される。   Further, similarly, as described with reference to FIG. 47, also in reverse double speed playback when a GOP with a small number of anchor frames and a GOP with a large number of anchor frames are continuous, as shown in FIG. The decoding process is executed without any problems.

すなわち、B0B1I2で構成されているGOP(4)とGOP(3)とが結合されて1つのデコードユニットが構成され、B0B1I2で構成されているGOP(2)とB0乃至P14の15フレームで構成されているGOP(1)とは、結合された後、2つのデコードユニットに分割される。   That is, GOP (4) composed of B0B1I2 and GOP (3) are combined to form one decoding unit, and composed of GOP (2) composed of B0B1I2 and 15 frames B0 to P14. GOP (1), which has been combined, is divided into two decoding units.

GOP(4)とGOP(3)とで構成されているデコードユニットの先頭のB0B1(GOP(3)のB0B1)を除いたピクチャと、その前のデコードユニットの2枚のBピクチャのうちの表示されるピクチャ(この図においては、B0)およびこのBピクチャをデコードするために必要な参照画であるI2は、デコーダ1でデコードされる。そして、GOP(4)とGOP(3)とで構成されているデコードユニットの先頭のB0B1(GOP(3)のB0B1)のうちの表示されるB(0)と、このBピクチャをデコードするために必要な参照画であるI2は、その次にデコードされるデコードユニットであるGOP(2)とGOP(1)の後半により構成されるデコードユニットとともに、デコーダ0でデコードされる。GOP(2)とGOP(1)の後半とで構成されているデコードユニットの先頭のB9B10(GOP(1)のB9B10)のうちの表示されるB(9)と、このBピクチャをデコードするために必要な参照画であるP8P11は、その次にデコードされるデコードユニットである、GOP(1)の前半とともに、デコーダ2でデコードされる。GOP(1)の前半で構成されているデコードユニットの表示されるBピクチャの先頭であるB(1)は、GOP(0)とともに、デコーダ1でデコードされる。   Display of a picture excluding the first B0B1 (B0B1 of GOP (3)) of the decoding unit composed of GOP (4) and GOP (3) and two B pictures of the preceding decoding unit A picture (B0 in this figure) and a reference picture I2 necessary for decoding the B picture are decoded by the decoder 1. In order to decode this B picture, the displayed B (0) of B0B1 (B0B1 of GOP (3)) at the head of the decoding unit composed of GOP (4) and GOP (3) is displayed. The reference picture I2 necessary for the decoding is decoded by the decoder 0 together with the decoding unit composed of the second half of GOP (2) and GOP (1) which are the decoding units to be decoded next. In order to decode B (9) displayed in B9B10 (B9B10 of GOP (1)) at the head of the decoding unit composed of GOP (2) and the latter half of GOP (1), and this B picture P8P11, which is a reference picture necessary for the above, is decoded by the decoder 2 together with the first half of GOP (1), which is a decoding unit to be decoded next. B (1), which is the head of the B picture displayed by the decoding unit configured in the first half of GOP (1), is decoded by decoder 1 together with GOP (0).

このようにして、CPU20は、アンカーフレーム数に基づいて、GOPを適宜分割または結合して、デコーダ22乃至デコーダ24に設けられているビデオバンクメモリ82の数に対応する数のアンカーフレームを有するデコードユニットを構成し、PCIブリッジ17を制御して、デコードユニットごとに、デコーダ22乃至デコーダ24にストリームを供給させるとともに、デコードユニットごとにデコード処理や表示順をスケジュールし、デコーダ22乃至デコーダ24を制御してデコードさせるようにする。これにより、アンカーフレーム数がGOPによって異なるようなストリームデータが供給された場合にも、再生装置1は、デコードされないフレームを発生させたり、デコード遅れを発生させることなく、高速にデコード処理を行うようにすることが可能となる。   In this way, the CPU 20 appropriately divides or combines the GOPs based on the number of anchor frames, and decodes the number of anchor frames corresponding to the number of video bank memories 82 provided in the decoders 22 to 24. The unit is configured, and the PCI bridge 17 is controlled so that the stream is supplied to the decoder 22 to the decoder 24 for each decoding unit, the decoding process and the display order are scheduled for each decoding unit, and the decoder 22 to the decoder 24 are controlled. To be decoded. As a result, even when stream data whose number of anchor frames differs depending on the GOP is supplied, the playback device 1 performs a high-speed decoding process without generating a frame that is not decoded or causing a decoding delay. It becomes possible to.

なお、GOP分割時の後ろのデコードユニット、すなわち、アンカーフレームデコードのために、前のデコードユニットのアンカーフレームをデコードする必要があるデコードユニットにおいては、そのデコードユニットに含まれているアンカーフレームの数が6フレームである場合、そのデコードユニットに含まれているアンカーフレームのデコード開始タイミングから表示開始タイミングのずれは、先頭がIピクチャまたはPピクチャのとき6ピクチャずれで、Bピクチャのとき7ピクチャずれである。また、そのデコードユニットに含まれているアンカーフレームの数が5フレーム以下のnフレームである場合、そのデコードユニットに含まれているアンカーフレームのデコード開始タイミングと表示開始タイミングのずれは、デコードユニットに含まれるアンカーフレーム数に基づいて変更されるものとなり、先頭がIピクチャまたはPピクチャのときnフレームずれで、Bピクチャのときn+1フレームずれである。   In the decoding unit after the GOP division, that is, the decoding unit that needs to decode the anchor frame of the preceding decoding unit for anchor frame decoding, the number of anchor frames included in the decoding unit Is 6 frames when the start is an I picture or P picture, and 7 pictures when the head is a B picture. It is. In addition, when the number of anchor frames included in the decode unit is n frames or less, the difference between the decode start timing and the display start timing of the anchor frame included in the decode unit is It is changed based on the number of included anchor frames. When the head is an I picture or P picture, the frame is shifted by n frames, and when it is a B picture, the frame is shifted by n + 1 frames.

なお、以上の説明においては、アンカーフレームのデコード用として固定されているバンクの数に対して、1つのデコードユニットに含まれるアンカーフレームの数が同一か、それよりも少なくなるようにデコードユニットが設定されるものとして説明したが、デコードユニットは、前のデコードユニットのアンカーフレーム数と比較して、m(mは1以上の実験的経験的に設定可能な正の整数で、例えば、2乃至4フレーム程度が好適である)フレーム以上多くしないようにデコードユニットを設定すると、更に好適である。   In the above description, the decoding unit is arranged so that the number of anchor frames included in one decoding unit is the same or less than the number of banks fixed for decoding the anchor frame. Although described as being set, the decoding unit is m (m is a positive integer that can be set experimentally and empirically equal to or greater than 1, for example, 2 to It is more preferable to set the decoding unit so that the number of frames is not more than 4).

例えば、アンカーフレーム数1のGOPと、アンカーフレーム数10のGOPとがが連続していた場合、2GOPの合計アンカーフレーム数が11となり、この2GOPを加えて、2つのデコードユニットを構成することができない。このため、「アンカーフレーム数1+1」「アンカーフレーム数5+1」「アンカーフレーム数5+1」の構成でデコードが行われてしまい、デコード遅れが発生してしまう。   For example, when a GOP with 1 anchor frame and a GOP with 10 anchor frames are continuous, the total number of anchor frames of 2 GOP is 11, and two decoding units can be configured by adding 2 GOPs. Can not. For this reason, decoding is performed with a configuration of “anchor frame number 1 + 1”, “anchor frame number 5 + 1”, and “anchor frame number 5 + 1”, and a decoding delay occurs.

そこで、例えば、前のデコードユニットのアンカーフレーム数と比較して、2以上多いアンカーフレームを含まないようにデコードユニットを設定するものとした場合、2GOPの合計アンカーフレーム数が11であるとき、「アンカーフレーム数1+1」「アンカーフレーム数3+1」「アンカーフレーム数3+1」「アンカーフレーム数4+1」の構成でデコードユニットが構成されて、デコードが実行されるので、デコード遅れは発生しない。   Therefore, for example, when the decoding unit is set so as not to include two or more anchor frames compared to the number of anchor frames of the previous decoding unit, when the total number of anchor frames of 2 GOP is 11, Since the decoding unit is configured with the configuration of “anchor frame number 1 + 1”, “anchor frame number 3 + 1”, “anchor frame number 3 + 1”, and “anchor frame number 4 + 1”, and decoding is executed, no decoding delay occurs.

以上説明した処理(間引き処理が2段階である場合と1段階のみである場合のいずれの場合も)においては、HDD16に記録されている圧縮符号化データに対して、HDD16から読み出すデータとして有効であるか否かを示す読み出し用のフラグ群、デコードのスケジューリングにおいて有効であるか否かを示すデコード用のフラグ群、デコードされたデータを表示するスケジューリングにおいて有効であるか否かを示す表示用のフラグ群等をメタデータとして適宜設け、一連のフラグ群を再生速度・方向に応じて自動的に更新することによりスケジューリングを管理することも可能である。   In the processing described above (both in the case where the thinning-out processing is in two steps and in the case of only one step), the compression encoded data recorded in the HDD 16 is effective as data read from the HDD 16. A flag group for reading indicating whether or not there is a flag group for decoding indicating whether or not it is effective in scheduling for decoding, and a display for indicating whether or not it is effective in scheduling for displaying decoded data It is also possible to manage scheduling by appropriately providing a flag group or the like as metadata and automatically updating a series of flag groups according to the playback speed and direction.

このとき、過去の可変速再生処理に用いた一連のスケジューリング、フラグ群の更新情報を、別途スケジューリングのメタデータ(履歴情報)として管理することも可能であり、必要に応じて、圧縮符号化データ中にシンタックスとして記述したり、記録媒体であるHDD16等に別途記録したりしても良い。   At this time, it is also possible to manage a series of scheduling and flag group update information used in the past variable-speed playback processing as separate scheduling metadata (history information). It may be described as syntax inside or separately recorded on the HDD 16 or the like as a recording medium.

また、デコーダ数、バンク数、デコーダID等をメタデータ(構成履歴情報)として管理することも可能である。さらに、再生速度、再生方向等をメタデータ(再生履歴情報)として管理することも可能である。このとき、これらメタデータを、必要に応じて圧縮符号化データ中にシンタックスとして記述したり、記録媒体であるHDD16等に別途記録したりしても良い。   Also, the number of decoders, the number of banks, the decoder ID, and the like can be managed as metadata (configuration history information). Furthermore, it is possible to manage the playback speed, playback direction, and the like as metadata (playback history information). At this time, these metadata may be described as syntax in the compressed and encoded data as needed, or may be separately recorded on the HDD 16 or the like as a recording medium.

このようなメタデータ(履歴情報)を参照することにより、過去に行われたスケジューリング処理を再利用することができ、更に正確に高速にスケジューリング処理を実行することが可能となる。   By referring to such metadata (history information), scheduling processing performed in the past can be reused, and scheduling processing can be executed more accurately and at high speed.

なお、このようなメタデータは、例えば、データベースとして外部装置で管理するような構成にしてもよい。   Note that such metadata may be managed by an external device as a database, for example.

なお、上述の実施の形態においては、デコーダ22乃至デコーダ24が、HDD16に記録されている圧縮符号化データを、完全にデコードしない(中途段階までデコードする)場合においても、本発明は適用可能である。   In the above-described embodiment, the present invention can be applied even when the decoder 22 to the decoder 24 do not completely decode (decode halfway) the compression-coded data recorded in the HDD 16. is there.

具体的には、例えば、デコーダ22乃至デコーダ24が、可変長符号に対する復号および逆量子化のみを行い、逆DCT変換を実行しない場合や、逆量子化を行うが可変長符号に対する復号を行わない場合などにおいても、本発明を適用することができる。このような場合、例えば、デコーダ22乃至デコーダ24は、例えば、符号化処理および復号処理処理においてどの段階(例えば逆量子化の段階)まで処理が行われたかを示す履歴情報を必要に応じて生成し、不完全に復号されたデータに対応付けて出力することができるようにしても良い。   Specifically, for example, the decoder 22 to the decoder 24 only perform decoding and inverse quantization on the variable length code and do not perform inverse DCT transform, or perform inverse quantization but do not perform decoding on the variable length code. The present invention can also be applied to cases. In such a case, for example, the decoder 22 to the decoder 24 generate, as necessary, history information indicating how many stages (for example, the inverse quantization stage) have been performed in the encoding process and the decoding process. However, it may be possible to output in association with incompletely decoded data.

さらに、上述の実施の形態においては、HDD16に、不完全に符号化されたデータ(例えば、DCT変換および量子化が行われているが、可変長符号化処理が行われていないデータなど)と、必要に応じて、符号化処理および復号処理の履歴情報が記憶されており、デコーダ22乃至デコーダ24が、CPU20の制御に基づいて、供給された不完全に符号化されたデータをデコードし、ベースバンド信号に変換することができるような場合においても、本発明は適用可能である。   Further, in the above-described embodiment, incompletely encoded data (for example, data that has been subjected to DCT transform and quantization but not subjected to variable length encoding processing) is stored in the HDD 16. Where necessary, history information of the encoding process and the decoding process is stored, and the decoders 22 to 24 decode the supplied incompletely encoded data based on the control of the CPU 20, The present invention can be applied even in a case where conversion into a baseband signal is possible.

具体的には、デコーダ22乃至デコーダ24が、例えば、DCT変換および量子化が行われているが、可変長符号化処理が行われていない不完全に符号化されたデータに対して、逆DCT変換および逆量子化のみを行い、可変長符号に対する復号は実行しない場合などにおいても、本発明を適用することができる。   Specifically, the decoder 22 to the decoder 24 perform, for example, inverse DCT on incompletely encoded data that has been subjected to DCT transform and quantization but not subjected to variable length encoding processing. The present invention can also be applied to cases where only transformation and inverse quantization are performed and decoding for variable length codes is not performed.

また、このような場合、例えば、CPU20は、不完全に符号化されたデータに対応付けられてHDD16に記憶されている符号化処理および復号処理の履歴情報を取得し、これらの情報に基づいて、デコーダ22乃至デコーダ24によるデコードのスケジューリングを行うことができるようにしても良い。   In such a case, for example, the CPU 20 acquires the history information of the encoding process and the decoding process stored in the HDD 16 in association with the incompletely encoded data, and based on these information Decoding scheduling by the decoders 22 to 24 may be performed.

さらに、上述の実施の形態においては、HDD16に、不完全に符号化されたデータと、必要に応じて、符号化処理および復号処理の履歴情報が記憶されており、デコーダ22乃至デコーダ24が、CPU20の制御に基づいて、供給された不完全に符号化されたデータを完全にデコードしない(中途段階までデコードする)場合においても、本発明は適用可能である。   Further, in the above-described embodiment, the HDD 16 stores incompletely encoded data and, if necessary, history information of the encoding process and the decoding process. The present invention can also be applied to a case where the supplied incompletely encoded data is not completely decoded (decodes halfway) based on the control of the CPU 20.

また、このような場合も、例えば、CPU20は、不完全に符号化されたデータに対応付けられてHDD16に記憶されている符号化処理および復号処理の履歴情報を取得し、これらの情報に基づいて、デコーダ22乃至デコーダ24によるデコードのスケジューリングを行うことができるようにしても良い。更に、この場合においても、デコーダ22乃至デコーダ24は、符号化処理および復号処理の履歴情報を必要に応じて生成し、不完全に復号されたデータに対応付けて出力することができるようにしても良い。   Also in such a case, for example, the CPU 20 acquires the history information of the encoding process and the decoding process stored in the HDD 16 in association with the incompletely encoded data, and based on these information Thus, decoding scheduling by the decoders 22 to 24 may be performed. Further, in this case, the decoder 22 to the decoder 24 can generate the history information of the encoding process and the decoding process as necessary, and output the history information in association with the incompletely decoded data. Also good.

換言すれば、デコーダ22乃至デコーダ24が、CPU20の制御に基づいて、部分的な復号を行う(復号処理の工程のうちの一部を実行する)場合においても、本発明は適用可能であり、CPU20は、不完全に符号化されたデータに対応付けてHDD16に記憶されている符号化処理および復号処理の履歴情報を取得し、これらの情報に基づいて、デコーダ22乃至デコーダ24によるデコードのスケジューリングを行うことができ、デコーダ22乃至デコーダ24は、符号化処理および復号処理の履歴情報を必要に応じて生成し、不完全に復号されたデータに対応付けて出力することができるようにしても良い。   In other words, the present invention can be applied even when the decoder 22 to the decoder 24 perform partial decoding based on the control of the CPU 20 (execute a part of the decoding process). The CPU 20 acquires the history information of the encoding process and the decoding process stored in the HDD 16 in association with the incompletely encoded data, and schedules decoding by the decoder 22 to the decoder 24 based on the information. The decoder 22 to the decoder 24 can generate the history information of the encoding process and the decoding process as necessary, and output the history information in association with the incompletely decoded data. good.

更に、HDD16には、圧縮符号化されたストリームデータに対応付けて、更に、符号化処理および復号処理の履歴情報を記録するようにしても良く、CPU20は、圧縮符号化されたストリームデータのデコードのスケジューリングを、符号化処理および復号処理の履歴情報に基づいて行うようにしても良い。さらに、デコーダ22乃至デコーダ24が、CPU20の制御に基づいて、圧縮符号化されたストリームデータをデコードして、ベースバンド信号に変換することができるような場合においても、符号化処理および復号処理の履歴情報を必要に応じて生成し、ベースバンド信号に対応付けて出力することができるようにしても良い。   Further, the history information of the encoding process and the decoding process may be further recorded in the HDD 16 in association with the compression encoded stream data, and the CPU 20 decodes the compression encoded stream data. The scheduling may be performed based on the history information of the encoding process and the decoding process. Further, even when the decoder 22 to the decoder 24 can decode the stream data that has been compression-encoded under the control of the CPU 20 and convert the stream data into a baseband signal, the encoding process and the decoding process are performed. The history information may be generated as necessary and output in association with the baseband signal.

なお、上述の実施の形態においては、再生装置1が、それぞれ、複数のデコーダを有しているものとして説明したが、デコーダが、それぞれ、独立した装置として構成されている場合においても、本発明は適用可能である。   In the above-described embodiment, the playback apparatus 1 has been described as having a plurality of decoders. However, the present invention can be applied to cases where the decoders are configured as independent apparatuses. Is applicable.

このとき、独立した装置として構成されているデコーダは、圧縮符号化データの供給を受けてこれを復号し、表示または出力するのみならず、上述した場合と同様にして、圧縮符号化データの供給を受け、中途段階まで部分的に復号して、符号化および復号の履歴情報とともに外部に出力したり、部分的に符号化されたデータの供給を受け、復号処理を行い、ベースバンド信号に変換して外部に出力したり、部分的に符号化されたデータの供給を受け、中途段階まで部分的に復号して、符号化および復号の履歴情報とともに外部に出力するようにしても良い。   At this time, the decoder configured as an independent device receives the compressed encoded data, decodes it, displays or outputs it, and supplies the compressed encoded data in the same manner as described above. Received, partially decoded up to the middle stage, output to the outside along with encoding and decoding history information, or supplied with partially encoded data, decoded, and converted to a baseband signal Then, the data may be output to the outside, supplied with partially encoded data, partially decoded up to an intermediate stage, and output to the outside together with encoding and decoding history information.

さらに、上述の実施の形態においては、CPU11およびCPU20がそれぞれ別の形態で構成されているが、CPUの構成は、これに限らず、例えば、CPU11およびCPU20を、再生装置1全体を制御する1つのCPUとして構成する形態も考えられる。また、CPU11およびCPU20がそれぞれ独立して構成されている場合であっても、CPU11およびCPU20を1つのチップとして構成するようにしてもよい。   Furthermore, in the above-described embodiment, the CPU 11 and the CPU 20 are configured in different forms. However, the configuration of the CPU is not limited to this, and for example, the CPU 11 and the CPU 20 control the entire playback device 1 1. A configuration in which two CPUs are configured is also conceivable. Further, even when the CPU 11 and the CPU 20 are configured independently, the CPU 11 and the CPU 20 may be configured as one chip.

更に、CPU11およびCPU20がそれぞれ独立して構成されている場合、上述の実施の形態においてCPU11が実行した処理の少なくとも一部を、例えば、時分割で、CPU20が実行することができるようにしたり、CPU20が実行した処理の少なくとも一部を、例えば、時分割で、CPU11が実行することができるようにしてもよい。すなわち、CPU11およびCPU20には、分散処理が可能なプロセッサを用いるようにしても良い。   Further, when the CPU 11 and the CPU 20 are configured independently of each other, at least a part of the processing executed by the CPU 11 in the above-described embodiment can be executed by the CPU 20 in, for example, time division, For example, the CPU 11 may execute at least a part of the processing executed by the CPU 20 by time division. That is, a processor capable of distributed processing may be used for the CPU 11 and the CPU 20.

また、例えば、再生装置1をネットワークに接続可能な構成とし、上述の実施の形態において、CPU11またはCPU20が実行した処理の少なくとも一部を、ネットワークを介して接続されている他の装置のCPUにおいて実行させることができるようにしても良い。   Further, for example, the playback apparatus 1 is configured to be connectable to a network, and in the above-described embodiment, at least a part of the processing executed by the CPU 11 or the CPU 20 is performed in the CPU of another apparatus connected via the network. It may be made possible to execute.

同様に、上述の実施の形態においては、メモリ13およびメモリ21がそれぞれ別の形態で構成されているが、これに限らず、メモリ13およびメモリ21を、再生装置1において1つのメモリとして構成する形態も考えられる。   Similarly, in the above-described embodiment, the memory 13 and the memory 21 are configured in different forms. However, the present invention is not limited to this, and the memory 13 and the memory 21 are configured as one memory in the playback device 1. Forms are also conceivable.

さらに、上述の実施の形態においては、HDD16、デコーダ22乃至デコーダ24、および、セレクタ25を、それぞれ、ブリッジおよびバスを介して接続し、再生装置として一体化されている場合について述べたが、本発明はこれに限らず、例えば、これらの構成要素のうちの一部が、外部から有線または無線で接続される場合や、これらの構成要素が、この他、種々の接続形態で相互に接続される場合にも適用することができる。   Furthermore, in the above-described embodiment, the case where the HDD 16, the decoder 22 to the decoder 24, and the selector 25 are connected via a bridge and a bus and integrated as a playback device has been described. The invention is not limited to this. For example, some of these components are connected to each other by wire or wirelessly, or these components are connected to each other in various connection forms. This can also be applied.

さらに、上述の実施の形態においては、圧縮されたストリームデータがHDDに記憶されている場合について述べたが、本発明はこれに限らず、例えば、光ディスク、光磁気ディスク、半導体メモリ、磁気ディスク等の種々の記録媒体に記録されたストリームデータに対して再生処理を行う場合にも適用することができる。   Furthermore, in the above-described embodiment, the case where the compressed stream data is stored in the HDD has been described. However, the present invention is not limited to this, and for example, an optical disk, a magneto-optical disk, a semiconductor memory, a magnetic disk, etc. The present invention can also be applied to a case where reproduction processing is performed on stream data recorded on various recording media.

さらに、上述の実施の形態においては、CPU20、メモリ21、メモリ18、デコーダ22乃至デコーダ24、および、セレクタ25を、同一の拡張カード(例えば、PCIカード、PCI−Expressカード)に搭載する形態に限らず、例えばPCI−Expressなどの技術によりカード間の転送速度が高い場合には、これらの構成要素を、それぞれ別の拡張カードに搭載するようにしてもよい。   Furthermore, in the above-described embodiment, the CPU 20, the memory 21, the memory 18, the decoders 22 to 24, and the selector 25 are mounted on the same expansion card (for example, a PCI card or a PCI-Express card). For example, when the transfer rate between cards is high by a technique such as PCI-Express, these components may be mounted on different expansion cards.

また、本発明は、例えば、H264/AVCなどの他の符号化方法においても適用可能であることはいうまでもない。   Needless to say, the present invention is also applicable to other encoding methods such as H264 / AVC.

上述した一連の処理は、ソフトウェアにより実行することもできる。そのソフトウェアは、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。この場合、例えば、図1を用いて説明した再生装置1は、図65に示されるようなパーソナルコンピュータ201により構成される。   The series of processes described above can also be executed by software. The software is a computer in which the program constituting the software is incorporated in dedicated hardware, or various functions can be executed by installing various programs, for example, a general-purpose personal computer For example, it is installed from a recording medium. In this case, for example, the playback apparatus 1 described with reference to FIG. 1 is configured by a personal computer 201 as shown in FIG.

図65において、CPU(Central Processing Unit)211は、ROM(Read Only Memory)212に記憶されているプログラム、または記憶部218からRAM(Random Access Memory)213にロードされたプログラムにしたがって、各種の処理を実行する。RAM213にはまた、CPU211が各種の処理を実行する上において必要なデータなども適宜記憶される。   65, a CPU (Central Processing Unit) 211 performs various processes according to a program stored in a ROM (Read Only Memory) 212 or a program loaded from a storage unit 218 to a RAM (Random Access Memory) 213. Execute. The RAM 213 also appropriately stores data necessary for the CPU 211 to execute various processes.

CPU211、ROM212、およびRAM213は、バス214を介して相互に接続されている。このバス214にはまた、入出力インタフェース215も接続されている。   The CPU 211, ROM 212, and RAM 213 are connected to each other via a bus 214. An input / output interface 215 is also connected to the bus 214.

入出力インタフェース215には、キーボード、マウスなどよりなる入力部216、ディスプレイやスピーカなどよりなる出力部217、ハードディスクなどより構成される記憶部218、モデム、ターミナルアダプタなどより構成される通信部219が接続されている。通信部219は、インターネットを含むネットワークを介しての通信処理を行う。   The input / output interface 215 includes an input unit 216 including a keyboard and a mouse, an output unit 217 including a display and a speaker, a storage unit 218 including a hard disk, and a communication unit 219 including a modem and a terminal adapter. It is connected. The communication unit 219 performs communication processing via a network including the Internet.

入出力インタフェース215にはまた、必要に応じてドライブ220が接続され、磁気ディスク231、光ディスク232、光磁気ディスク233、もしくは、半導体メモリ234などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部218にインストールされる。   A drive 220 is connected to the input / output interface 215 as necessary, and a magnetic disk 231, an optical disk 232, a magneto-optical disk 233, a semiconductor memory 234, or the like is appropriately mounted, and a computer program read from them is loaded. The storage unit 218 is installed as necessary.

一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。   When a series of processing is executed by software, a program constituting the software may execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, it is installed from a network or a recording medium into a general-purpose personal computer or the like.

この記録媒体は、図65に示されるように、装置本体とは別に、ユーザにプログラムを供給するために配布される、プログラムが記憶されている磁気ディスク231(フロッピディスクを含む)、光ディスク232(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク233(MD(Mini-Disk)(商標)を含む)、もしくは半導体メモリ234などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに供給される、プログラムが記憶されているROM212や、記憶部218に含まれるハードディスクなどで構成される。   As shown in FIG. 65, the recording medium is distributed to supply a program to the user separately from the apparatus main body, and a magnetic disk 231 (including a floppy disk) storing the program, an optical disk 232 ( Package media including CD-ROM (compact disk-read only memory), DVD (including digital versatile disk), magneto-optical disk 233 (including MD (mini-disk) (trademark)), or semiconductor memory 234 In addition to being configured, it is configured by a ROM 212 storing a program and a hard disk included in the storage unit 218 supplied to the user in a state of being pre-installed in the apparatus main body.

また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。   Further, in the present specification, the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but may be performed in parallel or It also includes processes that are executed individually.

なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。   The embodiment of the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present invention.

本発明を適用した再生装置の構成を示すブロック図である。It is a block diagram which shows the structure of the reproducing | regenerating apparatus to which this invention is applied. 図1のデコーダの詳細な構成を示すブロック図である。FIG. 2 is a block diagram illustrating a detailed configuration of a decoder in FIG. 1. 制御処理について説明するためのフローチャートである。It is a flowchart for demonstrating a control process. フレームごとに行う処理1について説明するためのフローチャートである。It is a flowchart for demonstrating the process 1 performed for every flame | frame. 入力ストリーム状態変更処理について説明するためのフローチャートである。It is a flowchart for demonstrating an input stream state change process. デコードスケジュール処理1について説明するためのフローチャートである。10 is a flowchart for explaining decode schedule processing 1; MPEG LONG GOPについて説明するための図である。It is a figure for demonstrating MPEG LONG GOP. 1つのデコーダでデコードが行われる処理単位について説明するための図である。It is a figure for demonstrating the processing unit in which decoding is performed by one decoder. 入力ピクチャキューに蓄積される情報について説明するための図である。It is a figure for demonstrating the information accumulate | stored in an input picture queue. 表示順情報キューに蓄積される情報について説明するための図である。It is a figure for demonstrating the information accumulate | stored in a display order information queue. I/Pピクチャデコードキューに蓄積される情報について説明するための図である。It is a figure for demonstrating the information accumulate | stored in an I / P picture decoding queue. 表示順設定キューに蓄積される情報について説明するための図である。It is a figure for demonstrating the information accumulate | stored in a display order setting queue. デコードと表示のタイミングについて説明するための図である。It is a figure for demonstrating the timing of a decoding and a display. デコードと表示のタイミングについて説明するための図である。It is a figure for demonstrating the timing of a decoding and a display. 入力処理について説明するためのフローチャートである。It is a flowchart for demonstrating an input process. 表示位相決定処理について説明するためのフローチャートである。It is a flowchart for demonstrating a display phase determination process. 時間情報付きスケジュール決定処理について説明するためのフローチャートである。It is a flowchart for demonstrating the schedule determination process with time information. フレーム制御処理1について説明するためのフローチャートである。5 is a flowchart for explaining frame control processing 1; IピクチャおよびPピクチャデコード処理について説明するためのフローチャートである。It is a flowchart for demonstrating an I picture and P picture decoding process. Bピクチャデコード処理について説明するためのフローチャートである。It is a flowchart for demonstrating a B picture decoding process. デコードと表示のスケジュールについて説明するための図である。It is a figure for demonstrating the schedule of a decoding and a display. デコードと表示のスケジュールについて説明するための図である。It is a figure for demonstrating the schedule of a decoding and a display. 間引き処理1について説明するためのフローチャートである。5 is a flowchart for explaining a thinning process 1; 時間情報再設定処理について説明するためのフローチャートである。It is a flowchart for demonstrating a time information reset process. 2倍速の場合の間引き後のデコードと表示のスケジュールについて説明するための図である。It is a figure for demonstrating the schedule of the decoding after thinning | decimation in the case of 2 times speed, and a display. −2倍速の場合の間引き後のデコードと表示のスケジュールについて説明するための図である。FIG. 10 is a diagram for explaining a decoding and display schedule after thinning in the case of −2 times speed. 4倍速の場合の間引き後のデコードと表示のスケジュールについて説明するための図である。It is a figure for demonstrating the schedule of the decoding after thinning | decimation in the case of 4 times speed, and a display. −4倍速の場合の間引き後のデコードと表示のスケジュールについて説明するための図である。FIG. 6 is a diagram for explaining a decoding and display schedule after thinning in the case of -4 × speed. 5倍速の場合の間引き後のデコードと表示のスケジュールについて説明するための図である。It is a figure for demonstrating the schedule of the decoding and display after thinning | decimating in the case of 5 times speed. −5倍速の場合の間引き後のデコードと表示のスケジュールについて説明するための図である。It is a figure for demonstrating the schedule of the decoding after thinning | decimation in the case of -5 times speed, and a display. 通常再生時のバンク管理について説明するための図である。It is a figure for demonstrating the bank management at the time of normal reproduction | regeneration. 2倍速再生時のバンク管理について説明するための図である。It is a figure for demonstrating the bank management at the time of double speed reproduction | regeneration. −1倍速再生時のバンク管理について説明するための図である。It is a figure for demonstrating the bank management at the time of -1 time-speed reproduction | regeneration. −2倍速再生時のバンク管理について説明するための図である。It is a figure for demonstrating the bank management at the time of -2 speed reproduction | regeneration. アンダーフロー処理について説明するためのフローチャートである。It is a flowchart for demonstrating an underflow process. アンダーフローが発生していない場合の時間カウンタについて説明するための図である。It is a figure for demonstrating the time counter when the underflow has not generate | occur | produced. アンダーフローが発生した場合の時間カウンタの修正について説明するための図である。It is a figure for demonstrating correction of the time counter when an underflow generate | occur | produces. 1フレームディレイ処理について説明するためのフローチャートである。It is a flowchart for demonstrating 1 frame delay processing. フレームごとに行う処理2について説明するためのフローチャートである。It is a flowchart for demonstrating the process 2 performed for every flame | frame. デコードスケジュール処理2について説明するためのフローチャートである。10 is a flowchart for explaining decode schedule processing 2; 間引き処理2について説明するためのフローチャートである。10 is a flowchart for explaining a thinning process 2; フレーム制御処理2について説明するためのフローチャートである。10 is a flowchart for explaining frame control processing 2; 間引き処理3について説明するためのフローチャートである。10 is a flowchart for explaining a thinning process 3; アンカーフレーム数が多いGOPをデコードする場合について説明するための図である。It is a figure for demonstrating the case where GOP with many anchor frames is decoded. アンカーフレーム数が多いGOPをデコードする場合について説明するための図である。It is a figure for demonstrating the case where GOP with many anchor frames is decoded. アンカーフレーム数が少ないGOPをデコードする場合について説明するための図である。It is a figure for demonstrating the case where GOP with few anchor frames is decoded. アンカーフレーム数が少ないGOPをデコードする場合について説明するための図である。It is a figure for demonstrating the case where GOP with few anchor frames is decoded. GOPの分割により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the division | segmentation of GOP. GOPの分割により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the division | segmentation of GOP. GOPの分割により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the division | segmentation of GOP. GOPの結合により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the coupling | bonding of GOP. GOPの結合により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the coupling | bonding of GOP. GOPの結合により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the coupling | bonding of GOP. GOPの結合および分割により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the coupling | bonding and division | segmentation of GOP. GOPの結合および分割により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the coupling | bonding and division | segmentation of GOP. GOPの結合および分割により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the coupling | bonding and division | segmentation of GOP. GOPの結合および分割により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the coupling | bonding and division | segmentation of GOP. GOPの結合および分割により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the coupling | bonding and division | segmentation of GOP. GOPの結合および分割により構成されるデコードユニットについて説明するための図である。It is a figure for demonstrating the decoding unit comprised by the coupling | bonding and division | segmentation of GOP. GOP分割・結合処理について説明するためのフローチャートである。It is a flowchart for demonstrating a GOP division | segmentation / coupling | bonding process. GOPの分割により構成されるデコードユニットのデコード処理について説明するための図である。It is a figure for demonstrating the decoding process of the decoding unit comprised by the division | segmentation of GOP. GOPの分割により構成されるデコードユニットのデコード処理について説明するための図である。It is a figure for demonstrating the decoding process of the decoding unit comprised by the division | segmentation of GOP. GOPの結合、および、GOPの結合後の分割により構成されるデコードユニットのデコード処理について説明するための図である。It is a figure for demonstrating the decoding process of the decoding unit comprised by the coupling | bonding after GOP coupling | bonding and GOP coupling | bonding. GOPの結合、および、GOPの結合後の分割により構成されるデコードユニットのデコード処理について説明するための図である。It is a figure for demonstrating the decoding process of the decoding unit comprised by the coupling | bonding after GOP coupling | bonding and GOP coupling | bonding. パーソナルコンピュータの構成を示すブロック図である。It is a block diagram which shows the structure of a personal computer.

符号の説明Explanation of symbols

1 再生装置, 11 CPU, 16 HDD, 20 CPU, 22乃至24 デコーダ, 25 セレクタ, 71 入力処理部, 72 アドレス管理テーブル, 73 エレメンタリストリームアドレス決定部, 74 メモリコントローラ, 75 入力バッファ, 76 コントロールバス, 77 デコード処理部, 78 書き込み画アドレス決定部, 79 参照画アドレス決定部, 80 出力アドレス決定部, 81 メモリコントローラ, 82 ビデオバンクメモリ   1 playback device, 11 CPU, 16 HDD, 20 CPU, 22 to 24 decoder, 25 selector, 71 input processing unit, 72 address management table, 73 elementary stream address determination unit, 74 memory controller, 75 input buffer, 76 control bus , 77 decode processing unit, 78 writing image address determining unit, 79 reference image address determining unit, 80 output address determining unit, 81 memory controller, 82 video bank memory

Claims (47)

圧縮符号化映像データをデコードする情報処理装置において、
前記圧縮符号化映像データをデコードするデコード手段と、
前記デコード手段への前記圧縮符号化映像データの供給を制御する供給制御手段と、
前記供給制御手段および前記デコード手段が実行する処理を制御する制御手段と
を備え、
前記デコード手段は、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを備えて、デコード処理済のピクチャデータを保持し、
前記制御手段は、IピクチャおよびPピクチャが、前記バンクメモリのうち、ピクチャタイプにより定められる固定の位置に保持され、前記バンクメモリに保持されているデコード処理済のピクチャデータが、必要に応じて参照画像として利用されるように、前記デコード手段によるデコード処理を制御する
情報処理装置。
In an information processing apparatus for decoding compression-encoded video data,
Decoding means for decoding the compression-encoded video data;
Supply control means for controlling the supply of the compressed encoded video data to the decoding means;
Control means for controlling the processing executed by the supply control means and the decoding means,
The decoding means includes a number of bank memories corresponding to the number of pictures included in a processing unit in which decoding processing is performed, and holds decoded picture data.
The control means holds the I picture and the P picture at a fixed position determined by the picture type in the bank memory, and the decoded picture data held in the bank memory An information processing apparatus for controlling a decoding process by the decoding means so as to be used as a reference image.
前記デコード手段は、前記処理単位に含まれる前記Iピクチャおよび前記Pピクチャのピクチャ数に2を加えた数のピクチャを保持することができる前記バンクメモリを備える
請求項1に記載の情報処理装置。
The information processing apparatus according to claim 1, wherein the decoding unit includes the bank memory capable of holding a number of pictures obtained by adding two to the number of pictures of the I picture and the P picture included in the processing unit.
前記デコード手段は、3つ備えられ、
前記デコード手段は、8ピクチャを保持することができる前記バンクメモリをそれぞれ備える
請求項1に記載の情報処理装置。
Three decoding means are provided,
The information processing apparatus according to claim 1, wherein the decoding unit includes each of the bank memories that can hold eight pictures.
前記制御手段は、前記処理単位に含まれる複数のピクチャのうち、前記Iピクチャおよび前記Pピクチャが、Bピクチャよりも先にデコードされるように、ピクチャごとのデコード処理の順番を決定する
請求項1に記載の情報処理装置。
The control means determines an order of decoding processing for each picture so that the I picture and the P picture are decoded before a B picture among a plurality of pictures included in the processing unit. The information processing apparatus according to 1.
前記制御手段に再生速度を指令する再生速度指令手段を更に備え、
前記制御手段は、
前記再生速度指令手段により指令された再生速度に基づいて、前記処理単位に含まれるピクチャのうち、前記デコード手段から出力されるピクチャを選択し、
前記デコード手段は、
デコード処理を実行するデコード処理実行手段と、
前記デコード処理実行手段へのピクチャの供給を制御するピクチャ供給制御手段と
を備え、
前記ピクチャ供給制御手段は、前記制御手段の制御に基づいて、前記処理単位に含まれるピクチャのうち、前記Iピクチャおよび前記Pピクチャ、並びに、前記デコード手段から出力されるピクチャとして選択された前記Bピクチャを前記デコード処理手段へ供給し、
前記デコード処理手段は、前記制御手段の制御に基づいて、前記ピクチャ供給制御手段により供給されたそれぞれのピクチャをデコードするとともに、前記デコード手段から出力されるピクチャとして選択されたピクチャを出力する
請求項1に記載の情報処理装置。
Reproduction speed command means for commanding the control means for reproduction speed,
The control means includes
Based on the playback speed instructed by the playback speed command means, a picture output from the decoding means is selected from the pictures included in the processing unit,
The decoding means includes
Decoding processing execution means for executing decoding processing;
Picture supply control means for controlling the supply of pictures to the decoding processing execution means,
The picture supply control means, based on the control of the control means, out of the pictures included in the processing unit, the I picture and the P picture, and the B selected as a picture output from the decoding means Supplying a picture to the decoding means;
The decoding processing means decodes each picture supplied by the picture supply control means based on the control of the control means, and outputs a picture selected as a picture output from the decoding means. The information processing apparatus according to 1.
前記デコード手段は複数備えられ、
複数の前記デコード手段から出力された非圧縮のデータの供給を受け、供給された前記非圧縮のデータを切り替えて選択的に出力する出力切り替え手段を更に備え、
前記制御手段は、前記出力切り替え手段による処理を更に制御する
請求項1に記載の情報処理装置。
A plurality of the decoding means are provided,
Further comprising output switching means for receiving the supply of uncompressed data output from the plurality of decoding means, and switching and selectively outputting the supplied uncompressed data;
The information processing apparatus according to claim 1, wherein the control unit further controls processing by the output switching unit.
前記制御手段は、前記デコード手段から出力されるデコード済みのピクチャのうち、前記処理単位の先頭で出力されるピクチャが前記Iピクチャまたは前記Pピクチャであった場合、前記デコード手段によるデコードの開始タイミングと、前記デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第1の所定数のピクチャ分ずれるように前記デコード手段を制御する
請求項1に記載の情報処理装置。
The control means, when the picture outputted at the head of the processing unit among the decoded pictures outputted from the decoding means is the I picture or the P picture, the decoding start timing by the decoding means The information processing apparatus according to claim 1, wherein the decoding unit is controlled such that a timing at which the decoding unit starts outputting decoded pictures is shifted by a first predetermined number of pictures.
前記第1の所定数は、前記Iピクチャと前記Pピクチャの合計数に1を加えた数である
請求項7に記載の情報処理装置。
The information processing apparatus according to claim 7, wherein the first predetermined number is a number obtained by adding 1 to a total number of the I picture and the P picture.
前記制御手段は、前記デコード手段から出力されるデコード済みのピクチャのうち、前記処理単位の先頭で出力されるピクチャがBピクチャであった場合、前記デコード手段によるデコードの開始タイミングと、前記デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第2の所定数のピクチャ分ずれるように前記デコード手段を制御する
請求項1に記載の情報処理装置。
When the picture output at the head of the processing unit among the decoded pictures output from the decoding means is a B picture, the control means includes a decoding start timing by the decoding means, and the decoding means The information processing apparatus according to claim 1, wherein the decoding unit is controlled so that a timing at which an output of a decoded picture is started is shifted by a second predetermined number of pictures.
前記第2の所定数は、前記Iピクチャと前記Pピクチャの合計数に2を加えた数である
請求項9に記載の情報処理装置。
The information processing apparatus according to claim 9, wherein the second predetermined number is a number obtained by adding 2 to a total number of the I picture and the P picture.
前記制御手段は、前記制御手段に再生速度及び再生方向を指令する再生速度指令手段により指令された再生速度および再生方向が、通常再生速度、かつ、再生方向が正方向であった場合、前記デコード手段によるデコードの開始タイミングと、前記デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第1の所定数のピクチャ分ずれるように前記デコード手段を制御する
請求項1に記載の情報処理装置。
When the playback speed and playback direction instructed by the playback speed command means for instructing the playback speed and playback direction to the control means are the normal playback speed and the playback direction is the positive direction, the control means 2. The information processing according to claim 1, wherein the decoding means is controlled such that a start timing of decoding by the means and a timing at which output of a decoded picture from the decoding means is started are shifted by a first predetermined number of pictures. apparatus.
前記第1の所定数は、前記Iピクチャと前記Pピクチャの合計数に1を加えた数である
請求項11に記載の情報処理装置。
The information processing apparatus according to claim 11, wherein the first predetermined number is a number obtained by adding 1 to a total number of the I picture and the P picture.
前記制御手段は、前記再生速度指令手段により指令された再生速度および再生方向が、通常再生速度、かつ、再生方向が逆方向であった場合、前記デコード手段によるデコードの開始タイミングと、前記デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第2の所定数のピクチャ分ずれるように前記デコード手段を制御する
請求項1に記載の情報処理装置。
When the playback speed and the playback direction instructed by the playback speed command means are a normal playback speed and the playback direction is the reverse direction, the control means has a decoding start timing by the decoding means, and the decoding means The information processing apparatus according to claim 1, wherein the decoding unit is controlled so that a timing at which an output of a decoded picture is started is shifted by a second predetermined number of pictures.
前記第2の所定数は、前記Iピクチャと前記Pピクチャの合計数に2を加えた数である
請求項13に記載の情報処理装置。
The information processing apparatus according to claim 13, wherein the second predetermined number is a number obtained by adding 2 to a total number of the I picture and the P picture.
前記制御手段は、前記デコード手段によりBピクチャがデコードされるタイミングが、前記デコード手段によりデコードされて出力されるタイミングの1ピクチャ前になるように、前記デコード手段によるピクチャごとのデコード処理のタイミングを決定する
請求項1に記載の情報処理装置。
The control means sets the timing of the decoding process for each picture by the decoding means so that the timing at which the B picture is decoded by the decoding means is one picture before the timing at which the B picture is decoded and output. The information processing apparatus according to claim 1.
前記デコード手段は、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリとして、前記デコード処理が実行される処理単位に含まれるピクチャ数より少ない数のバンクメモリを備える
請求項1に記載の情報処理装置。
The decoding means includes, as the number of bank memories corresponding to the number of pictures included in a processing unit in which decoding processing is executed, a number of bank memories smaller than the number of pictures included in the processing unit in which decoding processing is executed. Item 4. The information processing apparatus according to Item 1.
前記圧縮符号化映像データは、GOPで構成されており、
前記制御手段は、前記バンクメモリの数から3を引いた値より多い数の前記Iピクチャまたは前記Pピクチャを含むGOPの供給を受けた場合、供給されたGOPを分割して前記バンクメモリの数から2を引いた値より少ない数の前記Iピクチャまたは前記Pピクチャを含むデコード処理単位を構成し、前記供給制御手段を制御して、前記デコード手段に前記デコード処理単位の前記圧縮符号化映像データを供給させる
請求項1に記載の情報処理装置。
The compressed encoded video data is composed of GOP,
When the control means receives a GOP including the number of the I picture or the P picture that is larger than a value obtained by subtracting 3 from the number of the bank memories, the control means divides the supplied GOP to obtain the number of the bank memories. A decoding processing unit including the number of the I picture or the P picture smaller than a value obtained by subtracting 2 from the control unit, and controlling the supply control unit to send the compressed encoded video data of the decoding processing unit to the decoding unit The information processing apparatus according to claim 1.
前記制御手段は、分割されて生成された前記デコード処理単位に含まれる前記Iピクチャまたは前記Pピクチャの数の合計が、前記デコード処理単位より時間的に1つ前のGOPまたはデコード処理単位に含まれる前記Iピクチャまたは前記Pピクチャの数の合計よりも所定の数以上多くならないように、前記デコード単位を構成する
請求項17に記載の情報処理装置。
The control means includes a total of the number of the I picture or the P picture included in the decoded processing unit generated by division included in a GOP or a decoding processing unit one time earlier than the decoding processing unit. The information processing apparatus according to claim 17, wherein the decoding unit is configured so as not to exceed a predetermined number more than a total number of the I pictures or the P pictures.
前記圧縮符号化映像データは、GOPで構成されており、
前記制御手段は、前記バンクメモリの数から3を引いた値より少ない数の前記Iピクチャまたは前記Pピクチャを含む第1のGOPの供給を受けた場合、時間的に前記第1のGOPと連続する第2のGOPの構成を検出し、前記第1のGOPと前記第2のGOPとに含まれる前記Iピクチャまたは前記Pピクチャの数の合計が前記バンクメモリの数から3を引いた値より少ない数である場合、前記第1のGOPと前記第2のGOPとを結合してデコード処理単位を構成し、前記供給制御手段を制御して、前記デコード手段に前記デコード処理単位の前記圧縮符号化映像データを供給させる
請求項1に記載の情報処理装置。
The compressed encoded video data is composed of GOP,
When receiving the supply of the first GOP including the number of the I picture or the P picture less than the value obtained by subtracting 3 from the number of the bank memories, the control means is continuous with the first GOP in terms of time. The total number of the I picture or the P picture included in the first GOP and the second GOP is calculated by subtracting 3 from the number of the bank memories. When the number is small, the first GOP and the second GOP are combined to form a decoding processing unit, and the supply control means is controlled to cause the decoding means to send the compressed code of the decoding processing unit. The information processing apparatus according to claim 1, wherein the video data is supplied.
前記制御手段は、前記デコード処理単位に含まれる前記Iピクチャまたは前記Pピクチャの数の合計が、前記デコード処理単位より時間的に1つ前のGOPに含まれる前記Iピクチャまたは前記Pピクチャの数の合計よりも所定の数以上多くならないように、前記デコード単位を構成する
請求項19に記載の情報処理装置。
The control means is configured such that the total number of the I pictures or the P pictures included in the decoding processing unit is the number of the I pictures or the P pictures included in the GOP that is temporally previous to the decoding processing unit. The information processing apparatus according to claim 19, wherein the decoding unit is configured so as not to exceed a predetermined number more than a total of the information.
前記圧縮符号化映像データは、GOPで構成されており、
前記制御手段は、第1のGOP、および、時間的に前記第1のGOPと連続する第2のGOPの構成を検出し、前記第1のGOPと前記第2のGOPとに含まれる前記Iピクチャまたは前記Pピクチャの数の合計が前記バンクメモリの数から3を引いた値の2倍より少ない数である場合、前記第1のGOPと前記第2のGOPとを結合した後分割して、前記バンクメモリの数から2を引いた値より少ない数の前記Iピクチャまたは前記Pピクチャを含む第1のデコード処理単位および第2のデコード処理単位を構成し、前記供給制御手段を制御して、前記デコード手段に前記第1のデコード処理単位および前記第2のデコード処理単位の前記圧縮符号化映像データを個別に供給させる
請求項1に記載の情報処理装置。
The compressed encoded video data is composed of GOP,
The control means detects a configuration of a first GOP and a second GOP that is temporally continuous with the first GOP, and the I G included in the first GOP and the second GOP. If the total number of pictures or P pictures is less than twice the number of bank memories minus 3, the first GOP and the second GOP are combined and then divided. Forming a first decoding processing unit and a second decoding processing unit including the number of the I picture or the P picture smaller than a value obtained by subtracting 2 from the number of the bank memories, and controlling the supply control means The information processing apparatus according to claim 1, wherein the decoding unit separately supplies the compressed encoded video data of the first decoding processing unit and the second decoding processing unit.
前記制御手段は、前記デコード処理単位に含まれる前記Iピクチャまたは前記Pピクチャの数の合計が、前記デコード処理単位より時間的に1つ前のデコード処理単位、または、GOPに含まれる前記Iピクチャまたは前記Pピクチャの数の合計よりも所定の数以上多くならないように、前記デコード単位を構成する
請求項21に記載の情報処理装置。
The control means is configured such that the total number of the I picture or the P picture included in the decoding processing unit is a decoding processing unit that is temporally previous to the decoding processing unit or the I picture included in a GOP. The information processing apparatus according to claim 21, wherein the decoding unit is configured so as not to exceed a predetermined number more than a total number of the P pictures.
圧縮符号化映像データをデコードする情報処理装置の情報処理方法において、
前記圧縮符号化映像データの複数のデコーダへの供給を制御する供給制御ステップと、
デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて前記供給制御ステップの処理により前記デコーダへの供給が制御された前記圧縮符号化映像データをデコードするデコードステップと
を含み、
前記バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、
前記デコードステップの処理では、前記バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される
情報処理方法。
In an information processing method of an information processing apparatus for decoding compression-encoded video data,
A supply control step for controlling supply of the compressed encoded video data to a plurality of decoders;
Decoding step of decoding the compressed encoded video data whose supply to the decoder is controlled by the processing of the supply control step using the number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed Including and
In the bank memory, an I picture and a P picture are held at fixed positions determined by a picture type,
In the decoding step, the decoded picture data held in the bank memory is used as a reference image as necessary, and decoding is executed.
圧縮符号化映像データをデコードする処理をコンピュータに実行させるためのプログラムであって、
前記圧縮符号化映像データの複数のデコーダへの供給を制御する供給制御ステップと、
デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて前記供給制御ステップの処理により前記デコーダへの供給が制御された前記圧縮符号化映像データをデコードするデコードステップと
を含み、
前記バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、
前記デコードステップの処理では、前記バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される
処理をコンピュータに実行させるためのプログラムが記録された記録媒体。
A program for causing a computer to execute processing for decoding compression-encoded video data,
A supply control step for controlling supply of the compressed encoded video data to a plurality of decoders;
Decoding step of decoding the compressed encoded video data whose supply to the decoder is controlled by the processing of the supply control step using the number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed Including and
In the bank memory, an I picture and a P picture are held at fixed positions determined by a picture type,
In the decoding step, the decoded picture data held in the bank memory is used as a reference image as necessary, and a program for causing the computer to execute the decoding process is recorded. Recording medium.
圧縮符号化映像データをデコードする処理をコンピュータに実行させるためのプログラムであって、
前記圧縮符号化映像データの複数のデコーダへの供給を制御する供給制御ステップと、
デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて前記供給制御ステップの処理により前記デコーダへの供給が制御された前記圧縮符号化映像データをデコードするデコードステップと
を含み、
前記バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、
前記デコードステップの処理では、前記バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される
処理をコンピュータに実行させるためのプログラム。
A program for causing a computer to execute processing for decoding compression-encoded video data,
A supply control step for controlling supply of the compressed encoded video data to a plurality of decoders;
A decoding step of decoding the compressed encoded video data whose supply to the decoder is controlled by the processing of the supply control step using the number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed. Including and
In the bank memory, an I picture and a P picture are held at fixed positions determined by a picture type,
A program for causing a computer to execute processing in which decoding is performed by using decoded picture data held in the bank memory as a reference image as necessary in the processing of the decoding step.
圧縮符号化映像データをデコードする情報処理装置において、
前記圧縮符号化映像データを記憶する記憶手段と、
前記記憶手段により記憶されている前記圧縮符号化映像データを読み出して出力する読み出し手段と、
前記圧縮符号化映像データをデコードするデコード手段と、
前記デコード手段への前記圧縮符号化映像データの供給を制御する供給制御手段と、
前記供給制御手段および前記デコード手段が実行する処理を制御する制御手段と、
前記制御手段に再生速度を指令する再生速度指令手段と
を備え、
前記デコード手段は、デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを備えて、デコード処理済のピクチャデータを保持し、
前記制御手段は、IピクチャおよびPピクチャが、前記バンクメモリのうち、ピクチャタイプにより定められる固定の位置に保持され、前記バンクメモリに保持されているデコード処理済のピクチャデータが、必要に応じて参照画像として利用されるように、前記デコード手段によるデコード処理を制御する
情報処理装置。
In an information processing apparatus for decoding compression-encoded video data,
Storage means for storing the compressed encoded video data;
Reading means for reading out and outputting the compressed encoded video data stored in the storage means;
Decoding means for decoding the compression-encoded video data;
Supply control means for controlling the supply of the compressed encoded video data to the decoding means;
Control means for controlling processing executed by the supply control means and the decoding means;
A playback speed command means for commanding the playback speed to the control means,
The decoding means includes a number of bank memories corresponding to the number of pictures included in a processing unit in which decoding processing is performed, and holds decoded picture data.
The control means holds the I picture and the P picture at a fixed position determined by the picture type in the bank memory, and the decoded picture data held in the bank memory An information processing apparatus for controlling a decoding process by the decoding means so as to be used as a reference image.
圧縮符号化映像データをデコードする情報処理装置の情報処理方法において、
記憶部に記憶された前記圧縮符号化映像データを読み出す読み出しステップと、
再生速度の指令を供給する再生速度指令供給ステップと、
前記再生速度指令供給ステップの処理により供給された前記再生速度の指令を取得する再生速度指令取得ステップと、
前記圧縮符号化映像データの複数のデコーダへの供給を制御する供給制御ステップと、
デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて前記供給制御ステップの処理により前記デコーダへの供給が制御された前記圧縮符号化映像データをデコードするデコードステップと
を含み、
前記バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、
前記デコードステップの処理では、前記バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される
情報処理方法。
In an information processing method of an information processing apparatus for decoding compression-encoded video data,
A reading step of reading out the compressed and encoded video data stored in the storage unit;
A playback speed command supply step for supplying a playback speed command;
A playback speed command acquisition step for acquiring the playback speed command supplied by the processing of the playback speed command supply step;
A supply control step for controlling supply of the compressed encoded video data to a plurality of decoders;
Decoding step of decoding the compressed encoded video data whose supply to the decoder is controlled by the processing of the supply control step using the number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed Including and
In the bank memory, an I picture and a P picture are held at fixed positions determined by a picture type,
In the decoding step, the decoded picture data held in the bank memory is used as a reference image as necessary, and decoding is executed.
圧縮符号化映像データをデコードする処理をコンピュータに実行させるためのプログラ
ムであって、
記憶部に記憶された前記圧縮符号化映像データを読み出す読み出しステップと、
再生速度の指令を供給する再生速度指令供給ステップと、
前記再生速度指令供給ステップの処理により供給された前記再生速度の指令を取得する再生速度指令取得ステップと、
前記圧縮符号化映像データの複数のデコーダへの供給を制御する供給制御ステップと、
デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて前記供給制御ステップの処理により前記デコーダへの供給が制御された前記圧縮符号化映像データをデコードするデコードステップと
を含み、
前記バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、
前記デコードステップの処理では、前記バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される
処理をコンピュータに実行させるためのプログラムが記録された記録媒体。
A program for causing a computer to execute processing for decoding compression-encoded video data,
A reading step of reading out the compressed and encoded video data stored in the storage unit;
A playback speed command supply step for supplying a playback speed command;
A playback speed command acquisition step for acquiring the playback speed command supplied by the processing of the playback speed command supply step;
A supply control step for controlling supply of the compressed encoded video data to a plurality of decoders;
Decoding step of decoding the compressed encoded video data whose supply to the decoder is controlled by the processing of the supply control step using the number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed Including and
In the bank memory, an I picture and a P picture are held at fixed positions determined by a picture type,
In the decoding step, the decoded picture data held in the bank memory is used as a reference image as necessary, and a program for causing the computer to execute the decoding process is recorded. Recording medium.
圧縮符号化映像データをデコードする処理をコンピュータに実行させるためのプログラムであって、
記憶部に記憶された前記圧縮符号化映像データを読み出す読み出しステップと、
再生速度の指令を供給する再生速度指令供給ステップと、
前記再生速度指令供給ステップの処理により供給された前記再生速度の指令を取得する再生速度指令取得ステップと、
前記圧縮符号化映像データの複数のデコーダへの供給を制御する供給制御ステップと、
デコード処理が実行される処理単位に含まれるピクチャ数に応じた数のバンクメモリを用いて前記供給制御ステップの処理により前記デコーダへの供給が制御された前記圧縮符号化映像データをデコードするデコードステップと
を含み、
前記バンクメモリには、IピクチャおよびPピクチャが、ピクチャタイプにより定められる固定の位置に保持され、
前記デコードステップの処理では、前記バンクメモリに保持されているデコード処理済のピクチャデータが必要に応じて参照画像として用いられて、デコードが実行される
処理をコンピュータに実行させるためのプログラム。
A program for causing a computer to execute processing for decoding compression-encoded video data,
A reading step of reading out the compressed and encoded video data stored in the storage unit;
A playback speed command supply step for supplying a playback speed command;
A playback speed command acquisition step for acquiring the playback speed command supplied by the processing of the playback speed command supply step;
A supply control step for controlling supply of the compressed encoded video data to a plurality of decoders;
Decoding step of decoding the compressed encoded video data whose supply to the decoder is controlled by the processing of the supply control step using the number of bank memories corresponding to the number of pictures included in the processing unit in which the decoding process is executed Including and
In the bank memory, an I picture and a P picture are held at fixed positions determined by a picture type,
A program for causing a computer to execute a process in which the decoded picture data held in the bank memory is used as a reference image as needed in the decoding step.
圧縮符号化映像データをデコードする情報処理装置において、
前記圧縮符号化映像データをデコードするデコード手段と、
前記デコード手段への前記圧縮符号化映像データの供給を制御する供給制御手段と、
前記供給制御手段および前記デコード手段が実行する処理を制御する制御手段と
を備え、
前記デコード手段は、所定数のバンクメモリを備えて、デコード処理済のピクチャデータを保持し、
前記圧縮符号化映像データは、GOPで構成されており、
前記制御手段は、1GOPの前記圧縮符号化映像データに含まれるIピクチャまたはPピクチャの数と、前記バンクメモリの数を比較することにより、GOPを分割または結合して、デコード処理単位を構成し、前記供給制御手段を制御して、前記デコード手段に前記デコード処理単位の前記圧縮符号化映像データを供給させる
情報処理装置。
In an information processing apparatus for decoding compression-encoded video data,
Decoding means for decoding the compression-encoded video data;
Supply control means for controlling the supply of the compressed encoded video data to the decoding means;
Control means for controlling the processing executed by the supply control means and the decoding means,
The decoding means comprises a predetermined number of bank memories, holds decoded picture data,
The compressed encoded video data is composed of GOP,
The control means divides or combines the GOPs by comparing the number of I-pictures or P-pictures included in the compression-coded video data of 1 GOP and the number of the bank memories, thereby forming a decoding processing unit. An information processing apparatus that controls the supply control means to cause the decoding means to supply the compressed encoded video data of the decoding processing unit.
前記制御手段は、前記バンクメモリの数から3を引いた値より多い数の前記Iピクチャまたは前記Pピクチャを含むGOPの供給を受けた場合、供給されたGOPを分割して前記バンクメモリの数から2を引いた値より少ない数の前記Iピクチャまたは前記Pピクチャを含む前記デコード処理単位を構成し、前記供給制御手段を制御して、前記デコード手段に前記デコード処理単位の前記圧縮符号化映像データを供給させる
請求項30に記載の情報処理装置。
When the control means receives a GOP including the number of the I picture or the P picture that is larger than a value obtained by subtracting 3 from the number of the bank memories, the control means divides the supplied GOP to obtain the number of the bank memories. The decoding processing unit including the I picture or the P picture having a number smaller than the value obtained by subtracting 2 from the control unit is configured, and the supply control unit is controlled so that the decoding unit receives the compressed encoded video of the decoding processing unit. The information processing apparatus according to claim 30, wherein data is supplied.
前記制御手段は、分割されて生成された前記デコード処理単位に含まれる前記Iピクチャまたは前記Pピクチャの数の合計が、前記デコード処理単位より時間的に1つ前のGOPまたはデコード処理単位に含まれる前記Iピクチャまたは前記Pピクチャの数の合計よりも所定の数以上多くならないように、前記デコード単位を構成する
請求項31に記載の情報処理装置。
The control means includes a total of the number of the I picture or the P picture included in the decoded processing unit generated by division included in a GOP or a decoding processing unit one time earlier than the decoding processing unit. 32. The information processing apparatus according to claim 31, wherein the decoding unit is configured so as not to exceed a predetermined number more than a total number of the I pictures or the P pictures.
前記制御手段は、前記バンクメモリの数から3を引いた値より少ない数の前記Iピクチャまたは前記Pピクチャを含む第1のGOPの供給を受けた場合、時間的に前記第1のGOPと連続する第2のGOPの構成を検出し、前記第1のGOPと前記第2のGOPとに含まれる前記Iピクチャまたは前記Pピクチャの数の合計が前記バンクメモリの数から3を引いた値より少ない数である場合、前記第1のGOPと前記第2のGOPとを結合して前記デコード処理単位を構成し、前記供給制御手段を制御して、前記デコード手段に前記デコード処理単位の前記圧縮符号化映像データを供給させる
請求項30に記載の情報処理装置。
When receiving the supply of the first GOP including the number of the I picture or the P picture less than the value obtained by subtracting 3 from the number of the bank memories, the control means is continuous with the first GOP in terms of time. The total number of the I picture or the P picture included in the first GOP and the second GOP is calculated by subtracting 3 from the number of the bank memories. When the number is small, the first GOP and the second GOP are combined to form the decoding processing unit, and the supply control means is controlled to cause the decoding means to compress the decoding processing unit. The information processing apparatus according to claim 30, wherein encoded video data is supplied.
前記制御手段は、前記デコード処理単位に含まれる前記Iピクチャまたは前記Pピクチャの数の合計が、前記デコード処理単位より時間的に1つ前のGOPに含まれる前記Iピクチャまたは前記Pピクチャの数の合計よりも所定の数以上多くならないように、前記デコード単位を構成する
請求項33に記載の情報処理装置。
The control means is configured such that the total number of the I pictures or the P pictures included in the decoding processing unit is the number of the I pictures or the P pictures included in the GOP that is temporally previous to the decoding processing unit. 34. The information processing apparatus according to claim 33, wherein the decoding unit is configured so as not to exceed a predetermined number more than a total of the information.
前記制御手段は、第1のGOP、および、時間的に前記第1のGOPと連続する第2のGOPの構成を検出し、前記第1のGOPと前記第2のGOPとに含まれる前記Iピクチャまたは前記Pピクチャの数の合計が前記バンクメモリの数から3を引いた値の2倍より少ない数である場合、前記第1のGOPと前記第2のGOPとを結合した後分割して、前記バンクメモリの数から2を引いた値より少ない数の前記Iピクチャまたは前記Pピクチャを含む第1のデコード処理単位および第2のデコード処理単位を構成し、前記供給制御手段を制御して、前記デコード手段に前記第1のデコード処理単位および前記第2のデコード処理単位の前記圧縮符号化映像データを個別に供給させる
請求項30に記載の情報処理装置。
The control means detects a configuration of a first GOP and a second GOP that is temporally continuous with the first GOP, and the I G included in the first GOP and the second GOP. If the total number of pictures or P pictures is less than twice the number of bank memories minus 3, the first GOP and the second GOP are combined and then divided. Forming a first decoding processing unit and a second decoding processing unit including the number of the I picture or the P picture smaller than a value obtained by subtracting 2 from the number of the bank memories, and controlling the supply control means The information processing apparatus according to claim 30, wherein the decoding unit individually supplies the compressed encoded video data of the first decoding processing unit and the second decoding processing unit.
前記制御手段は、前記デコード処理単位に含まれる前記Iピクチャまたは前記Pピクチャの数の合計が、前記デコード処理単位より時間的に1つ前のデコード処理単位、または、GOPに含まれる前記Iピクチャまたは前記Pピクチャの数の合計よりも所定の数以上多くならないように、前記デコード単位を構成する
請求項35に記載の情報処理装置。
The control means is configured such that the total number of the I picture or the P picture included in the decoding processing unit is a decoding processing unit that is temporally previous to the decoding processing unit or the I picture included in a GOP. The information processing apparatus according to claim 35, wherein the decoding unit is configured so as not to exceed a predetermined number more than a total number of the P pictures.
前記制御手段は、前記デコード手段から出力されるデコード済みのピクチャのうち、前記処理単位の先頭で出力されるピクチャが前記Iピクチャまたは前記Pピクチャであった場合、前記デコード手段によるデコードの開始タイミングと、前記デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第1の所定数のピクチャ分ずれるように前記デコード手段を制御する
請求項30に記載の情報処理装置。
The control means, when the picture outputted at the head of the processing unit among the decoded pictures outputted from the decoding means is the I picture or the P picture, the decoding start timing by the decoding means 31. The information processing apparatus according to claim 30, wherein the decoding unit is controlled such that a timing at which output of a decoded picture from the decoding unit is started is shifted by a first predetermined number of pictures.
前記第1の所定数は、前記Iピクチャと前記Pピクチャの合計数に1を加えた数である
請求項37に記載の情報処理装置。
The information processing apparatus according to claim 37, wherein the first predetermined number is a number obtained by adding 1 to a total number of the I picture and the P picture.
前記制御手段は、前記デコード手段から出力されるデコード済みのピクチャのうち、前記処理単位の先頭で出力されるピクチャがBピクチャであった場合、前記デコード手段によるデコードの開始タイミングと、前記デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第2の所定数のピクチャ分ずれるように前記デコード手段を制御する
請求項30に記載の情報処理装置。
When the picture output at the head of the processing unit among the decoded pictures output from the decoding means is a B picture, the control means includes a decoding start timing by the decoding means, and the decoding means 31. The information processing apparatus according to claim 30, wherein the decoding unit is controlled so that a timing at which output of a decoded picture is started from a second predetermined number of pictures is shifted.
前記第2の所定数は、前記Iピクチャと前記Pピクチャの合計数に2を加えた数である
請求項39に記載の情報処理装置。
40. The information processing apparatus according to claim 39, wherein the second predetermined number is a number obtained by adding 2 to a total number of the I picture and the P picture.
前記制御手段は、前記制御手段に再生速度及び再生方向を指令する再生速度指令手段により指令された再生速度および再生方向が、通常再生速度、かつ、再生方向が正方向であった場合、前記デコード手段によるデコードの開始タイミングと、前記デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第1の所定数のピクチャ分ずれるように前記デコード手段を制御する
請求項30に記載の情報処理装置。
When the playback speed and playback direction instructed by the playback speed command means for instructing the playback speed and playback direction to the control means are the normal playback speed and the playback direction is the positive direction, the control means 31. The information processing according to claim 30, wherein the decoding means is controlled such that a start timing of decoding by the means and a timing at which output of a decoded picture from the decoding means starts are shifted by a first predetermined number of pictures. apparatus.
前記第1の所定数は、前記Iピクチャと前記Pピクチャの合計数に1を加えた数である
請求項41に記載の情報処理装置。
The information processing apparatus according to claim 41, wherein the first predetermined number is a number obtained by adding 1 to a total number of the I picture and the P picture.
前記制御手段は、前記再生速度指令手段により指令された再生速度および再生方向が、通常再生速度、かつ、再生方向が逆方向であった場合、前記デコード手段によるデコードの開始タイミングと、前記デコード手段からデコード済みのピクチャの出力が開始されるタイミングが、第2の所定数のピクチャ分ずれるように前記デコード手段を制御する
請求項30に記載の情報処理装置。
When the playback speed and the playback direction instructed by the playback speed command means are a normal playback speed and the playback direction is the reverse direction, the control means has a decoding start timing by the decoding means, and the decoding means 31. The information processing apparatus according to claim 30, wherein the decoding unit is controlled so that a timing at which output of a decoded picture is started from a second predetermined number of pictures is shifted.
前記第2の所定数は、前記Iピクチャと前記Pピクチャの合計数に2を加えた数である
請求項43に記載の情報処理装置。
44. The information processing apparatus according to claim 43, wherein the second predetermined number is a number obtained by adding 2 to a total number of the I picture and the P picture.
複数のGOPで構成される圧縮符号化映像データをデコードする情報処理装置の情報処理方法において、
前記圧縮符号化映像データに含まれるGOPの構成を検出する検出ステップと、
1GOPの前記圧縮符号化映像データに含まれるIピクチャまたはPピクチャの数と、デコード処理済のピクチャデータを保持するためのバンクメモリの数とを比較する比較ステップと、
前記比較ステップの処理による比較結果に基づいて、GOPを分割または結合して、デコード処理単位を構成するデコード処理単位構成ステップと、
前記デコード処理単位構成ステップの処理により構成された前記デコード処理単位ごとにデコード処理を行うデコード処理ステップと
を含む情報処理方法。
In an information processing method of an information processing apparatus for decoding compression-coded video data composed of a plurality of GOPs,
A detection step of detecting a configuration of a GOP included in the compressed encoded video data;
A comparison step of comparing the number of I-pictures or P-pictures included in the compression-coded video data of 1 GOP with the number of bank memories for holding decoded picture data;
A decoding processing unit configuration step that forms a decoding processing unit by dividing or combining GOPs based on a comparison result by the processing of the comparison step;
A decoding processing step for performing decoding processing for each decoding processing unit configured by processing of the decoding processing unit configuration step.
複数のGOPで構成される圧縮符号化映像データをデコードする処理をコンピュータに実行させるためのプログラムであって、
前記圧縮符号化映像データに含まれるGOPの構成を検出する検出ステップと、
1GOPの前記圧縮符号化映像データに含まれるIピクチャまたはPピクチャの数と、デコード処理済のピクチャデータを保持するためのバンクメモリの数とを比較する比較ステップと、
前記比較ステップの処理による比較結果に基づいて、GOPを分割または結合して、デコード処理単位を構成するデコード処理単位構成ステップと、
前記デコード処理単位構成ステップの処理により構成された前記デコード処理単位ごとにデコード処理を行うデコード処理ステップと
を含む処理をコンピュータに実行させるためのプログラムが記録された記録媒体。
A program for causing a computer to execute processing for decoding compression-encoded video data composed of a plurality of GOPs,
A detection step of detecting a configuration of a GOP included in the compressed encoded video data;
A comparison step of comparing the number of I-pictures or P-pictures included in the compression-coded video data of 1 GOP with the number of bank memories for holding decoded picture data;
A decoding processing unit configuration step that forms a decoding processing unit by dividing or combining GOPs based on a comparison result by the processing of the comparison step;
A recording medium on which a program for causing a computer to execute a process including a decoding process step for performing a decoding process for each decoding process unit configured by the process of the decoding process unit configuration step is recorded.
複数のGOPで構成される圧縮符号化映像データをデコードする処理をコンピュータに実行させるためのプログラムであって、
前記圧縮符号化映像データに含まれるGOPの構成を検出する検出ステップと、
1GOPの前記圧縮符号化映像データに含まれるIピクチャまたはPピクチャの数と、デコード処理済のピクチャデータを保持するためのバンクメモリの数とを比較する比較ステップと、
前記比較ステップの処理による比較結果に基づいて、GOPを分割または結合して、デコード処理単位を構成するデコード処理単位構成ステップと、
前記デコード処理単位構成ステップの処理により構成された前記デコード処理単位ごとにデコード処理を行うデコード処理ステップと
を含む処理をコンピュータに実行させるためのプログラム。
A program for causing a computer to execute processing for decoding compression-encoded video data composed of a plurality of GOPs,
A detection step of detecting a configuration of a GOP included in the compressed encoded video data;
A comparison step of comparing the number of I-pictures or P-pictures included in the compression-coded video data of 1 GOP with the number of bank memories for holding decoded picture data;
A decoding processing unit configuration step that forms a decoding processing unit by dividing or combining GOPs based on a comparison result by the processing of the comparison step;
A program for causing a computer to execute a process including a decoding process step of performing a decoding process for each decoding process unit configured by the process of the decoding process unit configuration step.
JP2005242164A 2004-10-26 2005-08-24 Information processing apparatus and method, recording medium, and program Pending JP2006157871A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005242164A JP2006157871A (en) 2004-10-26 2005-08-24 Information processing apparatus and method, recording medium, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004311524 2004-10-26
JP2005242164A JP2006157871A (en) 2004-10-26 2005-08-24 Information processing apparatus and method, recording medium, and program

Publications (1)

Publication Number Publication Date
JP2006157871A true JP2006157871A (en) 2006-06-15

Family

ID=36635542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005242164A Pending JP2006157871A (en) 2004-10-26 2005-08-24 Information processing apparatus and method, recording medium, and program

Country Status (1)

Country Link
JP (1) JP2006157871A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06233242A (en) * 1993-02-03 1994-08-19 Matsushita Electric Ind Co Ltd Video signal encoding device and video signal decoding and reproducing device
JP2002010186A (en) * 2001-05-07 2002-01-11 Sony Corp Discoidal data recording medium
JP2003244643A (en) * 2002-02-18 2003-08-29 Hitachi Ltd Information reproducing apparatus and information reproducing method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06233242A (en) * 1993-02-03 1994-08-19 Matsushita Electric Ind Co Ltd Video signal encoding device and video signal decoding and reproducing device
JP2002010186A (en) * 2001-05-07 2002-01-11 Sony Corp Discoidal data recording medium
JP2003244643A (en) * 2002-02-18 2003-08-29 Hitachi Ltd Information reproducing apparatus and information reproducing method

Similar Documents

Publication Publication Date Title
JP4375305B2 (en) Information processing apparatus, information processing method, recording medium, and program
JP4867235B2 (en) Information processing apparatus, information processing method, recording medium, and program
US7817900B2 (en) GPU timeline with render-ahead queue
JP2007336066A (en) Information processing apparatus, information processing method, recording medium and program
JP2006324848A (en) Apparatus and method for information processing
US20080075175A1 (en) Information processing apparatus and method
JP4730593B2 (en) Information processing apparatus, information processing method, recording medium, and program
JP2006157869A (en) Information processing apparatus and method, recording medium, and program
JP2006157871A (en) Information processing apparatus and method, recording medium, and program
US20070286244A1 (en) Information processing apparatus and information processing method
US8442376B2 (en) Image data recording/playback device, system, and method
US8345760B2 (en) Information processing apparatus and information processing method
JP2005080073A (en) Image reproducing device and backward reproduction method of image data
JP4350585B2 (en) Playback device
JP2007336069A (en) Information processor and processing method, program, and recording medium
US7627232B2 (en) Reproduction apparatus, data processing system, reproduction method, program, and storage medium
JP2009165009A (en) Recording/playing back method and device
JP2002084499A (en) Device and method for recording/reproducing image and computer-readable storage medium
JPH05207421A (en) Picture reproduction device and its method
JP2010233183A (en) Moving picture holding device and control method of the same
JP2006246043A (en) Data transfer control apparatus and recording/reproducing apparatus for monitoring

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100816

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100831