Decoding apparatus for image signal

Abstract: A video image data decoding apparatus is disclosed which comprises a pair of buffer memories for storing decoded intra coded picture data or forward prediction coded picture data, a switching circuit for causing the decoded intra coded picture data or forward prediction coded picture data to be sequentially stored in the pair of buffer memories, and a generation circuit utilizing picture data stored in one buffer memory of the pair of buffer memories for generating picture data to be stored into another buffer memory and also utilizing picture data stored in one buffer memory for generating picture data to be newly stored into the same buffer memory. The generation circuit performs motion compensation when the same utilizes picture data stored in one buffer memory for generating picture data to be stored into another buffer memory, while the same is forbidden to perform motion compensation within a predetermined range when the same utilizes picture data stored in one buffer memory for generating picture data to be newly stored into the same buffer memory.

Description: The present invention relates to a video image data decoding apparatus (hereinafter briefly called "picture data decoder") suitable for use for example in reproducing picture data compressed and recorded in a recording medium such as a disk. Conventionally, when picture data were compressed, pictures were classed in three types: I picture, P picture, and B picture. The I picture (intra coded picture) is such that, when it is coded, uses a set of closed data within one area (one frame) of picture. Although the quantity of data increases when the I pictures are used, random access or high-speed reproduction can be achieved by scattering the I pictures in the picture data. The P picture (forward prediction coded picture) is such that uses an I picture or a P picture which has already been decoded and temporally located forward as the prediction picture (the picture serving as a reference in obtaining a differential). The B picture (bidirectional prediction coded picture) is such that uses, as the prediction picture, three types of pictures: an I picture or a P picture which has already been decoded and temporally located forward, an I picture or a P picture which has already been decoded and temporally located backward, and an interpolated picture produced from both of them. In the case shown in FIG. 6, for example, the pictures denoted by numerals 0 to 9 are compressed as I0, B1, B2, P3, B4, B5, P6, B7, B8, and P9. Here, character I denotes the I picture, character P denotes the P picture, and character B denotes the B picture, respectively. That is, the picture No. 0 is an I picture, the picture Nos. 3, 6, and 9 are P pictures, and the picture Nos. 1, 2, 4, 5, 7, and 8 are B pictures. For example, it is arranged such that the picture I0 is generated from the data of itself, the picture P3 is generated from the temporally forward picture I0, and the picture B1 is generated from both the temporally forward picture I0 and the temporally backward picture P3. FIG. 5 is a block diagram showing an example of structure of a conventional picture data decoder for decoding such compressed picture data as described above. An inverse VLC circuit 1 gives an inverse VLC (inverse Variable Length Coding) treatment to picture data supplied from a picture data encoder, not shown, and outputs the data to an inverse quantization circuit 2. The inverse quantization circuit 2 performs inverse zigzag scanning on the data undergone the inverse VLC treatment, gives an inverse quantization treatment thereto, and outputs the treated data to an inverse DCT circuit 3. The inverse DCT circuit 3 gives an inverse DCT (inverse Discrete Cosine Transform) treatment to the input data and outputs the data to an adder circuit 4. In the adder circuit 4, there is present prediction picture data which has been selected by a switch 15 and input thereto through a gate 17, and this prediction picture data and the output data from the inverse DCT circuit 3 are added up and thereby decoded picture data is generated. When the output from the adder circuit 4 is an I picture or a P picture, a gate 5 is opened and the output is supplied, through a switch 6, to a buffer memory 7 or a buffer memory 8 to be stored therein. The inverse VLC circuit 1 is supplied with such data as motion vector data, quantization width data, and coding mode data, in addition to the picture data. The inverse VLC circuit 1 controls a timing circuit 16 in accordance with such data. The timing circuit 16 generates various timing signals in accordance with outputs from the inverse VLC circuit 1 to thereby operate the gate 5 and the gate 17 and turn switches 6, 9, 10, and 15 to the sides of predetermined contacts. When the output from the adder circuit 4 is an I picture or a P picture, the switch 10 is turned to the side of the contact a. The switch 6 is adapted to be alternately turned to the sides of the contacts a and b so that the pictures output from the adder circuit 4 (I pictures or P pictures) are alternately stored into the pair of buffer memories 7 and 8. For example, as shown in FIG. 6, the picture data in which pictures are arranged in the sequence of I0, B1, B2, P3, B4, B5, P6, B7, B8, P9 are processed in the encoder in the sequence of I0, P3, B1, B2, P6, B4, B5, P9, B7, B8. Accordingly, the data are input to the inverse VLC circuit 1 on the decoder side in the same sequence. As a result, if, for example, decoded data of the picture I0 is stored into the buffer memory 7, then decoded data of the picture P3 is stored into the buffer memory 8. Thereafter, the data of the picture I0 in the buffer memory 7 is updated to data of the picture P6 and the data of the picture P3 in the buffer memory 8 is updated to data of the picture P9. When the data of the picture B1 or B2 is input from the inverse DCT circuit 3 to the adder circuit 4 in succession to the data of the picture I0 and picture P3, the data of the picture I0 stored in the buffer memory 7 is motion compensated in accordance with a motion vector in a motion compensation circuit 12 to be supplied to an interpolation circuit 14. At the same time, the data of P3 stored in the buffer memory 8 is motion compensated in accordance with a motion vector in a motion compensation circuit 13 to be supplied to the interpolation circuit 14. The interpolation circuit 14 combines the inputs from the motion compensation circuits 12 and 13 in the ratio according to data input from the inverse VLC circuit 1. The combined data is selected by the switch 15 and supplied to the adder circuit 4 through the contact b of the switch 15 and the gate 17. The adder circuit 4 adds up the data from the inverse DCT circuit 3 and the data selected by the switch 15 to thereby decode the picture B1 or B2. When the picture B1 or B2 is decoded only from the forward picture I0, the switch 15 is turned to the side of the contact a , and when it is decoded only from the backward picture P3, the switch 15 is turned to the side of the contact c , whereby the data of the picture I0 and the picture P3 are respectively supplied to the adder circuit 4. The switch 9 is adapted to be turned to the side opposite to the side of the switch 6. More specifically, when the switch 6 is turned to the side of the contact a (the contact b ), the switch 9 is turned to the side of the contact b (the contact a ). Therefore, when the switch 6 is turned to the side of the contact b and the picture P3 is stored into the buffer memory 8 after the picture I0 has been stored in the buffer memory 7, the switch 9 is turned to the side of the contact a . Since, at this time, the switch 10 is turned to the side of the contact a , the picture I0 is read from the buffer memory 7 and supplied, through the switches 9 and 10, to a display 11 to be displayed thereon. Since the switch 10 is turned to the side of the contact b when the picture B1 or B2 is output from the adder circuit 4, the picture B1 or B2 is supplied to the display 11. Then, the switch 9 is turned to the side of the contact b and the switch 10 is turned to the side of the contact a , whereby the picture P3 already stored in the buffer memory 8 is read out to be supplied to the display 11. Thereafter, the same operations are repeated and all the pictures are sequentially output and displayed. In the conventional apparatus, as described above, it is adapted, when data of a P picture is decoded, such that picture data stored in the other buffer memory of the pair of the buffer memories is read out. As a result, in the case where for example the pictures arranged in the sequence of pictures I0, B1, B2, P3, B4, B5, P6, B7, B8, and P9 are those of a person walking along a street with buildings for a background as shown in FIG. 7, if it is attempted to generate the picture of the area indicated by the window W1 in the picture P6 (the picture of buildings in the background) from the forward picture P3, then, because there is located the person in the picture P3 in the position corresponding to the window W1 in the picture P6, the picture of the window W1 (the picture of the buildings in the background) cannot be obtained therefrom. Similarly, when it is attempted to generate the picture in the area indicated by the window W2 (the picture of buildings in the background) in the picture P9 from the forward picture P6, then, because there is located the person in the picture P6 in the position corresponding to the window W2 in the picture P9, the picture of the window W2 (the picture of the buildings in the background) cannot be obtained therefrom. Thus, the conventional apparatus has been unable to reproduce an accurate picture. In other words, since it was arranged in the conventional apparatus to perform the forward prediction by utilising the data stored in the other of one pair of buffer memories, there was a problem that it was difficult for the conventional apparatus to accurately reproduce the original picture. US-A-4,999,705 describes a video image decoding apparatus which is similar, but not identical, to the conventional apparatus shown in Fig. 5 and described above. It is common to the apparatus of Fig. 5 and of US-A-4,999,705 that they comprise: a plurality of storage means for storing one of a plurality of sets of successive decoded intra-coded picture data or forward prediction coded picture data storage control means for causing said decoded intra-coded picture data or forward prediction coded picture data sequentially to be stored in said plurality of storage means; and generation means for generating from encoded data, picture data to be stored into said plurality of storage means. In particular, the generation means is adapted to utilise picture data stored in a one of said storage means for generating decoded forward prediction coded picture data to be stored into another one of said storage means. According to a first aspect of the present invention, there is provided a video image data decoding apparatus for decoding encoded data, comprising: a plurality of storage means each for storing one of a plurality of sets of successive decoded intra-coded picture data or forward prediction coded picture data; a storage control means for causing said decoded intra-coded picture data or forward prediction coded picture data sequentially to be stored in said plurality of storage means; and generation means for generating from encoded data, picture data to be stored into said plurality of storage means, wherein said generation means is adapted to utilise picture data stored in a one of said storage means for generating decoded forward prediction coded picture data to be stored into another one of said means characterised in that said generation means is adapted to utilise picture data stored in a one of said storage means for generating decoded forward prediction coded picture data to be stored into another one of said means, and also to utilise picture data stored in said another one of said storage means for generating decoded forward prediction coded picture data to be newly stored into said another one of said storage means. In the hereinafter described embodiments, the above storage means is constituted of a pair of buffer memories 7 and 8, the storage control means is constituted of a switch 6, and the generation means is constituted of motion compensation circuits 12 and 13, an interpolation circuit 14, a switch 15, an adder circuit 4, etc. Picture data stored in one of the buffer memories 7 and 8 is utilized for generating picture data to be stored into the other of the buffer memories and, further, picture data stored in one of the buffer memories 7 and 8 is utilised for generating picture data to be newly stored in the one of the buffer memories. Therefore, more accurate picture reproduction can be attained. In one embodiment, said generation means is adapted to perform motion compensation when said generation means utilizes picture data stored in said one of said storage means for generating decoded forward prediction coded picture data to be stored into said another one of said storage means and said generation means is adapted not to perform motion compensation within a predetermined range when the generation means utilizes picture data stored in said another one of said storage means for generating decoded forward prediction coded picture data to be newly stored into said another one of said storage means. Another embodiment further comprises delay means for delaying picture data to be supplied to said storage means by at least a period of time which allows motion compensation to be performed within a predetermined range in the case of said generation means utilizing picture data stored in said another one of said storage means for generating decoded forward prediction coded picture data to be newly stored into said another one of said storage means. Accordingly, long forward prediction can be achieved while motion compensation is preformed so that more accurate picture reproduction can be attained. In the hereinafter described embodiments, the above storage means is constituted of buffer memories 7 and 8, the delay means is constituted of a buffer memory 21, the storage control means is constituted of a switch 6, and the generation means is constituted of motion compensation circuits 12 and 13, an interpolation circuit 14, a switch 15, an adder circuit 4, etc. According to a second aspect of the present invention, there is provided a method of operating a video image data decoding apparatus which comprises: a plurality of storage means each for storing one of a plurality of sets of successive decoded intra-coded picture data or forward prediction coded picture data; a storage control means for causing said decoded intra-coded picture data or forward prediction coded picture data sequentially to be stored in said plurality of storage means; and generation means for generating from encoded data picture data to be stored into said plurality of storage means, wherein the method comprises controlling the generation means when generating decoded forward prediction coded picture data to be stored into one of said storage means so as to utilise picture data stored in a different one of said storage means characterised in that the method comprises controlling the generation means when generating decoded forward prediction coded picture data to be stored into one of said storage means so as to utilise picture data stored in a different one of said storage means and also to utilise picture data stored in the same one of said storage means. Embodiments of the invention will be described in the following description given by way of example only with reference to the accompanying drawings, in which :- FIG. 1 is a diagram explanatory of predicting operation performed in an embodiment of FIG. 2; FIG. 2 is a block diagram showing a structure of an embodiment of the picture data decoder of the present invention; FIG. 3 is a diagram explanatory of operation for writing data into a buffer memory in FIG. 2; FIG. 4 is a diagram explanatory of states of picture data generated through predicting operations in the embodiment of FIG. 2; FIG. 5 is a block diagram showing a structure of an example of a conventional picture data decoder; FIG. 6 is a diagram explanatory of operations for encoding and decoding picture data; FIG. 7 is a diagram explanatory of states of picture data generated through predicting operations in the example of FIG. 5; FIG. 8 is a block diagram showing a structure of another embodiment of the picture data decoder of the present invention; FIG. 9 is a diagram explanatory of operation for writing data into a buffer memory 7 in FIG. 8; FIG. 10 is a diagram explanatory of operation following that in FIG. 9 for writing data into the buffer memory 7; and FIG. 11 is a diagram explanatory of states of picture data generated through predicting operations in the embodiment of FIG. 8. FIG. 2 is a block diagram showing a structure of an embodiment of the picture data decoder of the present invention, in which corresponding parts to those in the arrangement of FIG. 5 are denoted by like reference numerals and, hence, description of the same will be generally omitted to avoid duplication. While the basic structure of the present embodiment is the same as that in the case of FIG. 5, the timing of the switch 15 provided by the timing circuit 16 is different from that in the case of FIG. 5. More specifically, in the present embodiment, as shown in FIG. 1, the picture P6 is decoded utilizing not only the forward picture P3 but also the still more forward picture I0. Similarly, the picture P9 is decoded utilizing not only the forward picture P6 but also the still more forward picture P3. In other words, in the present embodiment, a long forward prediction is performed. Since other functioning than the above is the same as that in the arrangement of FIG. 5, description will be given below of the decoding process according to such long forward prediction. When pictures are arranged in the sequence of pictures I0, B1, B2, P3, B4, B5, P6, B7, B8, and P9 as described above, they are processed by the encoder in the sequence of I0, P3, B1, B2, P6, B4, B5, P9, B7, B8, and data of the pictures in this sequence are input to the inverse VLC circuit 1 together with the motion vector, quantization width, and prediction mode (information of type). When attention is paid to the I picture and P pictures of them, the picture I0 is stored into the buffer memory 7 and then the picture P3 is stored into the buffer memory 8. Then, the data I0 in the buffer memory 7 is rewritten to the data of the picture P6 and the data of the picture P3 in the buffer memory 8 is rewritten to the data of the picture P9. Conventionally, when the data of the buffer memory 7 was to be updated, the switch 6 was turned to the side of the contact a and the switch 15 was turned to the side of the contact c (on the side of the other buffer memory 8). In the present embodiment, however, while the switch 6 is held turned to the side of the contact a , the switch 15 is turned to the side of the contact c at the timing during which the data of the other buffer memory 8 is utilized but it is turned to the side of the contact a (on the side of the buffer memory 7) at the timing during which the data of itself is utilized. Similarly, when the data of the buffer memory 8 was to be updated in the past, the switch 6 was turned to the side of the contact b and the switch 15 was turned to the side of the contact a (on the side of the other buffer memory 7). In the present embodiment, however, while the switch 6 is held turned to the side of the contact b , the switch 15 is turned to the side of the contact a at the timing during which the data of the other buffer memory 7 is utilized but it is turned to the side of the contact c (on the side of the buffer memory 8) at the timing during which the data of itself is utilized. Through such arrangement, it becomes possible for example to generate the picture P6 to be stored into the buffer memory 7 by utilizing the picture P3 (the I or P picture one picture forward) stored in the buffer memory 8 and the picture I0 (the I or P picture two pictures forward) stored in the buffer memory 7, or to generate the picture P9 to be stored into the buffer memory 8 by utilizing the picture P6 (the I or P picture one picture forward) stored in the buffer memory 7 and the picture P3 (the I or P picture two pictures forward) stored in the buffer memory 8. The above will be described on the basis of actually displayed pictures as shown in FIG. 4. The same as in FIG. 7, we take the pictures arranged in the sequence of pictures I0, B1, B2, P3, B4, B5, P6, B7, B8, and P9 which are pictures of a person walking along a street with buildings for a background. Then, if it is attempted to generate the picture of the area indicated by the window W1 in the picture P6 (the picture of buildings in the background) from the P picture P3 one picture forward, then, because there is located the person in the picture P3 in the position corresponding to the window W1 in the picture P6, the picture of the window W1 (the picture of the buildings in the background) cannot be obtained therefrom. Similarly, when it is attempted to generate the picture in the area indicated by the window W2 in the picture P9 (the picture of buildings in the background) from the picture P6 one picture forward, then, because there is located the person in the picture P6 in the position corresponding to the window W2 in the picture P9, the picture of the window W2 (the picture of the buildings mountain in the background) cannot be obtained therefrom. However, the picture in the area indicated by the window W1 in the picture P6 (the picture of the buildings in the background) can be obtained from the window W3 in the picture I0 one picture forward of the picture P3 (the P or I picture two pictures forward). Similarly, the picture in the area indicated by the window W2 in the picture P9 (the picture of the buildings in the background) can be obtained from the window W4 in the picture P3 forward of the picture P6 (the P or I picture two pictures forward). However, to perform motion compensation, pixel data of the picture preceding a predetermined range including the pixel data being updated (the range in which motion compensation is performed) is required. Once pixel data is updated by new pixel data, it becomes unable to perform the motion compensation (the slashed region in later described FIG. 3). Therefore, in the present embodiment, the motion compensation, while a long forward prediction is performed, is forbidden in the slashed region of later described FIG. 3). FIG. 3 schematically shows a state in which data of the picture I0 stored in the buffer memory 7 are being rewritten by data of the picture P6. The data of the pixel shown in the center of the macro-block indicated by the thick solid line is about to be rewritten by new data. In the case where a short forward prediction is performed (e.g., where data is predicted from an I picture or a P picture one picture forward (not two or more pictures forward), for example a picture P3 is predicted from a picture I0 or a picture P6 is predicted from a picture P3), motion compensation is performed in the range enclosed by the thick solid line. However, in the case where a long forward prediction is performed (e.g. where data is predicted from an I picture or a P picture two pictures forward), motion compensation is forbidden within the range including such a region as indicated by slashes in FIG. 3. The buffer memories more than two in number can be provided. By such arrangement, it becomes possible to perform a longer forward prediction. Although, in the foregoing description, there have been provided a plurality of buffer memories, a single buffer memory divided into a plurality of divisions according to addresses may be provided, instead. As described in the foregoing, according to the picture data decoder as the first aspect of the present invention, it is adapted such that not only picture data stored in one of the storage means is utilized for generating picture data to be stored in the other of the storage means but also picture data stored in one of the storage means is utilized for generating picture data to be newly stored into the same storage means. Accordingly, data can be used more effectively and long forward prediction can be performed so that more accurate picture reproduction can be achieved. According to the picture data decoder as the second aspect of the present invention, it is adapted such that motion compensation is performed when picture data stored in one of the storage means is utilized for generating picture data to be stored into the other of the storage means and motion compensation is not performed within a predetermined range when picture data stored in one of the storage means is utilized for generating picture data to be newly stored in the one of the storage means. Therefore, it becomes possible to utilize picture data stored in one of the storage means for generating picture data to be stored anew into the same storage means. Now, another embodiment as the third aspect of the present invention will be described. FIG. 8 is a block diagram showing a structure of the present embodiment, in which corresponding parts to those in the arrangement of FIG. 6 are denoted by like reference numerals and, hence, description of the same will be generally omitted to avoid duplication. In the present embodiment, it is adapted such that the output of the gate 5 is stored into a buffer memory 21 and the picture data read from the buffer memory 21 is supplied to the buffer memory 7 or 8 through the switch 6. Other basic structure than the above is the same as that of FIG. 6. However, switching timing of the switch 15 and others given by the timing circuit 16 is different from that in the arrangement of FIG. 6. While the basic operation in the present embodiment is the same as that in the arrangement of FIG. 6, the present invention is characterized, as shown in FIG. 1, in that the picture P6 is decoded utilizing not only the forward picture P3 but also the still more forward picture I0. Similarly, the picture P9 is decoded utilizing not only the forward picture P6 but also the still more forward picture P3. In other words, in the present embodiment, a long forward prediction is performed. Since other functioning than the above is the same as that in the arrangement of FIG. 6, description will be given below as to the decoding process according to such long forward prediction. When pictures are arranged in the sequence of pictures I0, B1, B2, P3, B4, B5, P6, B7, B8, and P9 as described above, they are processed by the encoder in the sequence of I0, P3, B1, B2, P6, B4, B5, P9, B7, B8, and data of the pictures in this sequence are input to the inverse VLC circuit 1 together with the motion vector, quantization width, and prediction mode (information of type). When attention is paid to the I picture and P pictures of them, the picture I0 is stored into the buffer memory 7 and then the picture P3 is stored into the buffer memory 8. Then, the data I0 in the buffer memory 7 is rewritten to the data of the picture P6 and the data of the picture P3 in the buffer memory 8 is rewritten to the data of the picture P9. Conventionally, when the data of the buffer memory 7 was to be updated, the switch 6 was turned to the side of the contact a and the switch 15 was turned to the side of the contact c (on the side of the other buffer memory 8). In the present embodiment, however, while the switch 6 is held turned to the side of the contact a , the switch 15 is turned to the side of the contact c at the timing during which the data of the other buffer memory 8 is utilized but it is turned to the side of the contact a (on the side of the buffer memory 7) at the timing during which the data of itself is utilized. Similarly, when the data of the buffer memory 8 was to be updated in the past, the switch 6 was turned to the side of the contact b and the switch 15 was turned to the side of the contact a (on the side of the other buffer memory 7). In the present embodiment, however, while the switch 6 is held turned to the side of the contact b , the switch 15 is turned to the side of the contact a at the timing during which the data of the other buffer memory 7 is utilized but it is turned to the side of the contact c (on the side of the buffer memory 8) at the timing during which the data of itself is utilized. Through such arrangement, it becomes possible for example to generate the picture P6 to be stored into the buffer memory 7 by utilizing the picture P3 (the I or P picture one picture forward) stored in the buffer memory 8 and the picture I0 (the I or P picture two pictures forward) stored in the buffer memory 7, or to generate the picture P9 to be stored into the buffer memory 8 by utilizing the picture P6 (the I or P picture one picture forward) stored in the buffer memory 7 and the picture P3 (the I or P picture two pictures forward) stored in the buffer memory 8. The above will be described on the basis of actually displayed pictures as shown in FIG. 11. We now take as an example the pictures arranged in the sequence of pictures I0, B1, B2, P3, B4, B5, P6, B7, B8, and P9 which are pictures of a person ascending a slope. Then, if it is attempted to generate the picture of the area indicated by the window W1 in the picture P6 (the picture of a range of mountains in the background) from the P picture P3 one picture forward, then, because there is located the person in the picture P3 in the position corresponding to the window W1 in the picture P6, the picture of the window W1 (the picture of the range of mountains in the background) cannot be obtained therefrom. Similarly, when it is attempted to generate the picture in the area indicated by the window W2 in the picture P9 (the picture of the separate mountain in the background) from the picture P6 one picture forward, then, because there is located the person in the the picture P6 in the position corresponding to the window W2 in the picture P9, the picture of the window W2 (the picture of the separate mountain in the background) cannot be obtained therefrom. However, the picture in the area indicated by the window W1 in the picture P6 (the picture of the range of mountains in the background) can be generated from the window W3 of the picture data in the picture I0 one picture forward of the picture P3 (the P or I picture two pictures forward). Similarly, the picture in the area indicated by the window W2 in the picture P9 (the picture of the separate mountain in the background) can be generated from the window W4 of the picture data in the picture P3 forward of the picture P6 (the P or I picture two pictures forward). However, to perform motion compensation, pixel data of the picture preceding a predetermined range including the pixel data being updated (macro-block) is required. Once pixel data is updated by new pixel data, it becomes unable to perform the motion compensation. Therefore, in order to have the motion compensating process performed smoothly, the picture data is delayed by the buffer memory 21 at least a period of time corresponding to the motion compensation process before it is input to the buffer memory 7 or 8. FIG. 9 and FIG. 10 schematically show the states where the data of picture R (for example the picture I0) stored in the buffer memory 7 (or, the buffer memory 8) is being rewritten by the data of picture N (for example the picture P6) (the switch 6 is not shown in these diagrams for convenience). Now, supposing that the pixel data of the first picture R in the buffer memory 7, as shown in FIG. 9, is updated by the pixel data of the new picture N, as shown in FIG. 10, the range of motion compensation enclosed by the thick solid line shifts from the state shown in FIG. 9 to the state shown in FIG. 10. More specifically, the macro-block as the object of the processing within that range will sequentially shifts on the buffer memory from left to right and from top to bottom, and according to this movement, the range of motion compensation will also sequentially shift. The pixel data coming out of the range of motion compensation are sequentially updated by new pixel data. The capacity (delay time) of the buffer memory 21 is set up in accordance with the range of the motion vector and the number of the macro-blocks for each row. In the picture data decoder of the present embodiment as described above, it is adapted such that picture data are alternately stored into a pair of storage means after they are delayed at least a period of time corresponding to the motion compensation and the picture data to be newly stored in one of the pair of the storage means is generated by utilizing the picture data stored in the one of the pair of the storage means. Accordingly, it becomes possible to achieve a long forward prediction while performing motion compensation so that more accurate picture reproduction can be realized.

Claims: A video image data decoding apparatus for decoding encoded data, comprising: a plurality of storage means (7,8) each for storing one of a plurality of sets of successive decoded intra-coded picture data or forward prediction coded picture data; a storage control means (5,6) for causing said decoded intra-coded picture data or forward prediction coded picture data sequentially to be stored in said plurality of storage means (7,8); and generation means (12-17,1-4) for generating from encoded data, picture data to be stored into said plurality of storage means, wherein said generation means is adapted to utilise picture data stored in a one of said storage means (7,8) for generating decoded forward prediction coded picture data to be stored into another one of said means (8,7), characterised in that said generation means is adapted to utilise picture data stored in a one of said storage means (7,8) for generating decoded forward prediction coded picture data to be stored into another one of said means (8,7), and also to utilise picture data stored in said another one of said storage means (8,7) for generating decoded forward prediction coded picture data to be newly stored into said another one of said storage means (8,7). A video image data decoding apparatus according to claim 1, wherein said generation means is adapted to perform motion compensation when said generation means utilizes picture data stored in said one of said storage means (7,8) for generating decoded forward prediction coded picture data to be stored into said another one of said storage means (8,7) and said generation means is adapted not to perform motion compensation within a predetermined range when the generation means utilizes picture data stored in said another one of said storage means (8,7) for generating decoded forward prediction coded picture data to be newly stored into said another one of said storage means (8,7). A video image data decoding apparatus according to either one of claims 1 or 2, wherein said plurality of storage means comprises first buffer memory (7) and a second buffer memory (8), and said storage control means comprises a switching circuit (6) adapted to selectively input said picture data to said first and second buffer memories (7,8). A video image data decoding apparatus according to any one of the preceding claims, further comprising delay means (21) for delaying picture data to be supplied to said storage means (7,8) by at least a period of time which allows motion compensation to be performed within a predetermined range in the case of said generation means utilizing picture data stored in said another one of said storage means for generating decoded forward prediction coded picture data to be newly stored into said another one of said storage means. A video image data decoding apparatus according to claim 4 when dependent on claim 3, wherein said delay means comprising a third buffer memory (21) arranged to buffer said picture data input to said switching circuit (6). A video image data decoding apparatus according to any one of claim 3, claim 4 when dependent on claim 3, or claim 5, wherein said generation means comprises at least a pair of motion compensation circuits (12,13) adapted to receive output signals from said first and second buffer memories (7,8) and an interpolation circuit (14) adapted to receive outputs from said motion compensation circuits (12, 13). A video image data decoding apparatus according to claim 6, wherein said generation means further comprises a second switching circuit (15) adapted to selectively output one of the output signals of said pair of motion compensation circuits (12,13) or the output signal of said interpolation circuit (14). A video image data decoding according to claim 7, wherein, when picture data is stored into one of said first and second buffer memories (7,8), said first mentioned switching circuit (6) is turned to the side of said one buffer memory, and said second switching circuit (15) is turned to the side of said one buffer memory when picture data stored in said one buffer memory is utilised, and is turned to the side of the other buffer memory when picture data stored in the other buffer memory is utilised. A video image data decoding apparatus according to claim 8, wherein said motion compensation is performed within a predetermined range including pixel data being updated such that the picture data stored in one of said storage means is processed in units of macro-blocks. A method of operating a video image data decoding apparatus which comprises: a plurality of storage means (7,8) each for storing one of a plurality of sets of successive decoded intra-coded picture data or forward prediction coded picture data; a storage control means (5,6) for causing said decoded intra-coded picture data or forward prediction coded picture data sequentially to be stored in said plurality of storage means (7,8); and generation means (12-17,1-4) for generating from encoded data picture data to be stored into said plurality of storage means, wherein the method comprises controlling the generation means when generating decoded forward prediction coded picture data to be stored into one of said storage means (7,8) so as to utilise picture data stored in a different one of said storage means (8,7), characterised in that the method comprises controlling the generation means when generating decoded forward prediction coded picture data to be stored into one of said storage means (7,8) so as to utilise picture data stored in a different one of said storage means (8,7) and also to utilise picture data stored in the same one of said storage means (7,8).

Inventors: VELTMAN MARK, YONEMITSU JUN, VELTMAN, MARK, YONEMITSU, JUN, Veltman, Mark, c/o Sony Corp., YONEMITSU, JUN, C/O SONY CORP.
Applicants: SONY CORP, SONY CORPORATION
Application year: 1992
Main classification: H04N5
IPC codes: G06T9, H04N7, H04N5