Reproduction of coded data

Abstract: A coded-data special reproduction method reads out and decodes unit group data composed of intra-frame coded data, inter-frame forward predictive coded data and bidirectionally predictive coded data, writes the decoded data into a frame buffer (2-3) and, after reading out the data therefrom, displays (3) such data. The method comprises the steps of continuously decoding portions of the intra-frame coded data and the inter-frame forward predictive coded data constituting the unit group data read out, while intermittently decoding the remaining coded data; writing the decoded data in the frame buffer (2-3); reading out the data therefrom in a reverse order of the original pictures; and displaying the pictures (3) thus read out. An apparatus designed to carry out the above method comprises a buffer (2-1) for storing the group data; a decoder (2-2) for decoding the coded data obtained from the buffer; and a frame buffer (2-3) for storing the respective coded data decoded by the decoder. Special reverse reproduction of the coded data can be achieved to realize natural reproduced pictures on a display device (3) without the necessity of raising the coded-data transfer rate to the decoder (2-2) or increasing the storage capacity of the frame buffer (2-3).

Description: This invention relates to the reproduction of coded data. The invention is particularly (but not exclusively) applicable to special reproduction of coded data stored or sent via communication media or the like or coded video or audio data read out from recording media such as disks. More particularly, but again not exclusively, the invention is applicable to the reverse reproduction of coded data. In recording media such as digital video disks (hereinafter referred to as DVD), communication media such as LAN (Local Area Network) or broadcasting media such as satellites which are used for processing video and audio signals converted into digital data, it is usual that the data are digitally compressed and coded so that the video and audio signals can be processed efficiently. One of the data compression and coding systems proposed for that purpose is the MPEG (Motion Picture coding Experts Group) system. An exemplary MPEG coder will now be described with reference to Fig. 32. The MPEG coder is so designed as to perform data compression of a video input signal by executing any one of the following three predictive coding modes, wherein the digitized video input signal is supplied first to a motion detector 101 which detects a motion vector for motion compensative prediction per minimum unit of the motion compensative prediction. Thereafter predictive coding of the signal is performed in a next predictive coding circuit, wherein one of the following three predictive coding modes is executed to obtain: (1) an intra-frame coded picture (I-picture) by coding the video input signal within a frame; (2) an inter-frame forward predictive coded picture (P-picture) by coding the video input signal only in a forward direction; or (3) a bidirectionally predictive coded picture (B-picture) by coding the video input signal in both forward and backward directions. More specifically, in a DCT 103 of the predictive coding circuit, the video input signal supplied thereto via a subtracter 102 is processed through discrete cosine transform (DCT) which is a kind of Fourier transform, and a DCT coefficient obtained as a result of such transform is quantized in a quantizer (Q) 104. Subsequently to the quantization, the signal is variable-length coded in a variable-length coder (VLC) 109 where a code of a length different depending on the incidence probability is allocated. The coded signal thus quantized is dequantized in a dequantizer (IQ) 105, and then is supplied to an inverse DCT (IDCT) 106 where the signal is processed through inverse discrete cosine transform. Subsequently an output of a frame memory predictor 108 is added thereto to consequently reproduce the original video signal. The reproduced video signal is supplied as a prediction signal to the subtracter 102 so as to be subtracted from the input video signal, whereby a difference signal between the input video signal and the prediction signal is outputted from the subtracter 102. Accordingly the coded signal outputted from the quantizer 104 is a difference signal, and since this difference signal is processed through discrete cosine transform to be thereby quantized, the coded signal is. compressed. The coded signal thus compressed is then supplied to the variable-length coder 109, where entropy coding is executed on the basis of the occurrence frequency deflection, so that the code is further compressed. Thereafter in a multiplexer 110, the compressed coded signal is multiplexed with the prediction mode data indicative of the I-picture, P-picture or B-picture and the motion vector data. However, since the multiplexed data are generated at an irregular rate, such data are once stored in a buffer 111 and then are outputted therefrom at a fixed code rate. In order to fix the average code rate, the code quantity may be controlled by changing the quantization scale factor q of the quantizer 104 in accordance with the code quantity stored in the buffer 111. Fig. 33A shows an exemplary structure of inter-frame prediction obtained among the predictive-coded frames. A data unit termed a GOP (Group of Pictures) may be composed of, e.g., 15 frames as illustrated in this diagram. In this case, since a random access is necessary in one GOP, at least one frame of an I-picture is required within the GOP, so that there are 1 frame of an I-picture, 4 frames of P-pictures predicted from the temporally preceding I-pictures or P-pictures, and remaining 10 frames of B-pictures predicted from the temporally preceding and succeeding I-pictures or P-pictures. A GOP is a coding unit corresponding to each segment of one sequence of motion pictures. More specifically, as indicated by arrows in Fig. 33A, an I-picture 1I is coded by intra-frame prediction within that frame alone, a P-picture 4P is coded by inter-frame prediction with reference to the I-picture 1I, a P-picture 7P is. coded by inter-frame prediction with reference to the P-picture 4P, a P-picture 10P is coded by inter-frame prediction with reference to the P-picture 7P, and a P-picture 13P is coded by inter-frame prediction with reference to the P-picture 10P. Further, B-pictures 2B and 3B are coded by inter-frame prediction with reference to both of the I-picture 1P and the P-picture 4P, and B-pictures 5B and 6B are coded by inter-frame prediction with reference to both of the P-picture 4P and the P-picture 7P. Similarly, subsequent pictures are coded by such prediction in the manner indicated by arrows. The numbers of I, P and B represent the ordinal numbers of original pictures. In decoding the predictive-coded pictures mentioned, the I-picture can be decoded alone since it is predictive-coded within the frame. However, as any P-picture is coded with reference to the temporally preceding I-picture or P-picture, such preceding I-picture or P-picture is required at the decoding time. Similarly, in decoding any B-picture coded with reference to the temporally preceding and succeeding I-pictures or P-pictures, such preceding and succeeding I-pictures or P-pictures are required. For this reason, the pictures are positionally changed as illustrated in Fig. 33B so that the pictures required at the decoding time can be decoded in advance. As illustrated in Fig. 34A, such positional changes are so made that the I-picture 1I precedes the B-pictures 1B and 0B since the B-pictures 1B and 0B require the I-picture 1I at the decoding time, and also that the P-picture 4P precedes the B-pictures 2B and 3B since the B-pictures 2B and 3B require the I-picture 1I and the P-picture 4P. Similarly, the pictures are positionally so changed that the P-picture 7P precedes the B-pictures 5B and 6B since the B-pictures 5B and 6B requires the P-pictures 4P and 7P at the decoding time, and also that the P-picture 10P precedes the B-pictures 8B and 9B since the B-pictures 8B and 9B require the P-pictures 7P and 10P at the decoding time. In the same manner, such positional changes are so made that the P-picture 13P precedes the B-pictures 11B and 12B. The I-, P- and B-pictures thus arranged in the order shown in Fig. 34B are converted into on-medium coded video data in Fig. 34C so as to be recordable on a recording medium such as a DVD. Then the on-medium coded video data are read out therefrom to become decoded video data in the order shown in Fig. 34D. Subsequently, in displaying normal reproduced pictures, the decoded video data are rearranged in the order which is indicated by suffixes in Fig. 34C and corresponds to the original picture order, whereby normal pictures are displayed on a display device. When displaying special reproduced pictures which are in a reverse direction of reproduction, it is necessary to display the pictures in the reverse order of the original pictures shown in Fig. 34A, as 12B, 11B, 10P, 9B ... and so on. Therefore, in the case of decoding the B-picture 12B for example, since this B-picture 12B is a coded picture predicted from the P-pictures 10P and 13P, these P-pictures 10P and 13P need to be decoded in advance. Further the P-picture 7P is required for obtaining the decoded P-picture 10P, and the P-picture 4P is required for obtaining the P-picture 7P, and the I-picture 1I is required for obtaining the P-picture 4P. Consequently, even in such reverse reproduction, it is necessary to perform successive operations of first reading out and decoding the I-picture 1I, then decoding the P-picture 4P, subsequently decoding the P-picture 7P and next decoding the P-picture 10P. It is further necessary to decode the P-picture 13P from the P-picture 10P to finally achieve desired decoding of the B-picture 12B from the P-pictures 10P and 13P. In succession, the B-picture 11B can be decoded from the P-pictures 10P and 13P, and further the P-picture 10P can be immediately outputted since it has already been decoded. However, as the P-picture 7P is required for . decoding the B-pictures 9B and 8B, it is necessary to decode the P-picture 7P by reading out the I-picture 1I again and then decoding the P-pictures sequentially. For reversely reproducing the video data of the MPEG standard in the reverse order of the original pictures, a greater number of decoding steps are needed in comparison with ordinary reproduction and a longer time is required until display of the pictures, so that it is necessary to increase the data transfer rate and so forth to the decoder for shortening the delay time. Furthermore, due to the limited storage capacity of a frame memory, I-and P-pictures need to be decoded so many times. Therefore, it has been customary in the prior art to solve the above problems by decoding and displaying merely the I-picture in a reverse reproduction mode. However, when only the I-picture alone is displayed, merely one picture is obtained per 15 frames for example as shown in Fig. 33, and it follows that an extremely reduced number of the pictures are displayed to consequently become unnatural. EP-A-0 545 323 discloses a forward and a reverse reproduction being carried out smoothly at a high speed without increasing an operation speed for decoding. In reverse reproduction all I frames and P-frames but no B frames are decoded and recorded. The invention is as set out in independent claims 1, 9, 14 and 25. The invention will now be further described, by way of illustrative and non-limiting example, with reference to the accompanying drawings, in which: Fig. 1 is a block diagram of a coded-data special reproduction apparatus according to an exemplary embodiment of the invention; Figs. 2A and 2B show frame structures of group data; Figs. 3A to 3E are timing charts of signals produced in an example of special reproduction; Fig. 4 is a flow chart showing the operation performed in special reproduction; Fig. 5 is a schematic table of an example in performing the special reproduction of Fig. 4; Fig. 6 is a schematic table of an example in performing reverse reproduction with I- and P-pictures; Fig. 7 is a schematic table of another example in performing reverse reproduction with I- and P-pictures; Fig. 8 is a schematic table of an example in performing reverse reproduction with I-, P- and B-pictures; Fig. 9 is a schematic table of another example in performing reverse reproduction with I- and P-pictures; Fig. 10 is a schematic table of an example in performing reverse reproduction with entire I- and P-pictures; Fig. 11 is a schematic table of another example in performing reverse reproduction with entire I- and P-pictures; Fig. 12 is a schematic table of an example in performing reverse reproduction with approximately alternate I- and P-pictures; Fig. 13 is a schematic table of another example in performing reverse reproduction with I- and P-pictures; Fig. 14 is a schematic table of an example in performing reverse reproduction with I- and P-pictures while not displaying any same pictures in succession; Figs. 15 to 19 are schematic tables of other examples in performing reverse reproduction with I- and P-pictures; Fig. 20 is a schematic table of an example in performing reverse reproduction with entire I- and P-pictures and alternate B-pictures; Fig. 21 is a schematic table of an example in performing reverse reproduction with entire I- and P-pictures and some B-pictures while not displaying any same pictures in succession; Fig. 22 is a schematic table of an example in performing partial reverse reproduction with entire I-, P-and B-pictures; Figs. 23 to 25 are schematic tables of an example in performing reverse reproduction with entire I-, P- and B pictures; Figs. 26 to 28 are schematic tables of an example in performing reverse reproduction with approximately entire I-, P- and B-pictures; Figs. 29 to 31 are schematic tables of another example in performing reverse reproduction with approximately entire I-, P- and B-pictures; Fig. 32 is a block diagram showing the construction of an MPEG coder; Figs. 33A and 33B show an inter-frame prediction structure and a medium frame structure, respectively; and Figs. 34A to 34E show the relationship among original pictures, coded pictures, on-medium pictures, decoded pictures and normal reproduced pictures. Fig. 1 shows the constitution of an exemplary embodiment which represents a data special reproduction apparatus contrived for carrying out a coded-data special reproduction method embodying the invention, wherein a recording medium employed is a disk. In this diagram, reference numeral 1 denotes a disk drive for reading out from the disk the coded data recorded through compression according to the MPEG standard. There are also shown a decoder 2 which consists of a code buffer 2-1, a decode processor 2-2 and a frame buffer 2-3 for decoding the data read out from the disk drive 1; a display device 3 for displaying the data decoded by the decoder 2; a controller 4 for controlling the decoder, by supplying control data to a specific data access means 5, in a manner to read out the specific data from the disk drive 1 and to obtain normal reproduced signal or special reproduced signal; and the specific data access means 5 for driving the disk drive 1 in a manner to read out the specific data from the disk under control of the controller 4. Now an explanation will be given on the operation performed in a normal reproduction mode in the data special reproduction apparatus of the above constitution. On the disk, there are recorded I-, P- and B-pictures which are coded according to the MPEG standard in the format of Fig. 34C. In order to decode such recorded picture data in the order of Fig. 34D, specific picture data included in the video data is read out by the specific data access means 5 and then is supplied to and stored temporarily in the decode buffer 2-1 of the decoder 2. Subsequently the data thus stored in the code buffer 2-1 is read out therefrom and is decoded by the decode processor 2-2, so that the picture data are decoded in the order of Fig. 34D. And the decoded pictures are supplied to the frame buffer 2-3. The frame buffer 2-3 has a memory capacity sufficient for storing three frames which are composed usually of an area 1, an area 2 and an area 3. And the decoded pictures supplied to the frame buffer 2-3 are stored in predetermined areas respectively. Thereafter the pictures are read out from the frame buffer 2-3 in the order of Fig. 34E and then are visually represented on the display device 3, whereby the reproduced pictures are displayed in the order of the original ones. Next the operation performed in a special reproduction mode will be described below with regard to an example of reverse reproduction. Since the MPEG2 standard includes both cases with and without the aforementioned GOP structure, a description will be given on an assumption that a plurality of MPEG-coded pictures constitute a unit of group data (GD). Figs. 2A and 2B show an exemplary GD structure where one group data is composed of 15 pictures, in which n denotes a distance between an I-picture and a P-picture or a distance between P-pictures, and m denotes a distance between I-pictures. More specifically, Fig. 2A shows an example of pictures arranged in four GD, and Fig. 2B shows actual bit streams rearranged on a recording medium in the decoding order in a normal reproduction mode. Referring now to Figs. 3A to 3E, an explanation will be given on an exemplary data supply pattern supplied to the decoder and an exemplary data output pattern read out from the decoder and displayed when the MPEG-coded pictures thus arranged on the recording medium are reproduced in a reverse direction. In this case, it is supposed that the frame buffer 2-3 has areas sufficient for storing four pictures. First in Fig. 3A, Dsync is a timing signal according to which the pictures read out from the disk drive 1 are written in the code buffer 2-1. This signal Dsync has a period of 2V corresponding to a double of a vertical synchronizing signal Vsync, i.e., a period of 1 frame. Therefore the code buffer 2-1 is triggered by the signal Dsync in such a manner that the pictures read out from the disk drive 1 are written in the period of 2V as shown in Fig. 3B. More specifically, under control of the specific data access means 5, pictures are read out from the disk drive 1 in the order of 16I, 19P, 22P, 25P, 28P, 27B, 16I, 19I, 24B, ... and so forth, as shown in Fig. 3B. The pictures stored in the code buffer 2-1 are decoded by the decode process means 2-2 in such a manner that the decoding of each picture is completed within the period of 2V from the start thereof, and the decoded pictures are stored successively in the frame buffer 2-3, as shown in Fig. 3C. More specifically, the I-picture 16I started to be decoded synchronously with timing td1 is decodable alone without reference to any other picture since it is an intra-frame coded picture, and in synchronism with td2 of Dsync after a lapse of 2V therefrom, the data of the decoded I-picture 16I starts to be stored in the area 1 of the frame buffer 2-3. Then in synchronism with timing td3 after a lapse of 2V therefrom, the P-picture 19P decoded with reference to the I-picture 16I starts to be stored in the area 2. Subsequently in synchronism with timing td3 after a lapse of 2V, the P-picture 22P decoded with reference to the P-picture 19P starts to be stored in the area 3; and next in synchronism with timing td5 after a lapse of 2V, the P-picture 25P decoded with reference to the P-picture 22P starts to be stored in the area 4. And further in synchronism with timing td6 after a lapse of 2V therefrom, the P-picture 28P decoded with reference to the P-picture 25P starts to be stored in the area 1 by overwriting. Similarly, the B-picture 27B is decoded with reference to the P-picture 25P stored in the area 4 and also to the P-picture 28P stored in the area 1, and then starts to be stored in the area 2 synchronously with timing td7. Subsequently the respective areas of the frame buffer 2-3 are overwritten successively as shown in Fig. 3C, whereby the decoded pictures are stored therein. The decoded pictures thus stored in the frame buffer 2-3 are supplied to the display device 3 in a manner to be in the reverse order of the original pictures and are displayed thereon, but the timing to read out such decoded pictures from the frame buffer 2-3 conforms to the timing of the vertical synchronizing signal Vsync which is shown in Fig. 3D and has, as compared with the aforementioned signal Dsync, a deviation of 1 field corresponding to the period V of the vertical synchronizing signal. For example, regarding the P-picture 28P started to be stored in the area 1 synchronously with timing td6 of Dsync, the data thereof starts to be transferred to the display device 3 synchronously with timing tv1 of Vsync after a lapse of V from the timing td6. In this case, storage of the P-pictre 28P in the area 1 is completed latest synchronously with timing td7 after a lapse of 2V. However, since one field of the P-picture 28P can be transferred to the display device 3 at the time point td7, the data to be displayed can be transferred properly to the display device 3 without any failure. As the data are read out from the disk driver 1 in the picture order of Fig. 3B and then are decoded, the data of the decoded pictures can be transferred to and displayed on the display device 3 in the order of Fig. 3C. More specifically, the P-picture 28P starts to be transferred from the area 1 to the display device 3 synchronously with timing tv1 of Vsync; the B-picture 27B starts to be transferred from the area 2 to the display device 3 synchronously with timing tv2; the P-picture 25P starts to be transferred from the area 4 to the display device 3 synchronously with timing tv4; the B-picture 24B starts to be transferred from the area 2 to the display device 3 synchronously with timing tv5; and the P-picture 22P starts to be transferred from the area 3 to the display device 3 synchronously with timing tv7. Thereafter the B-picture 21B, P-picture 19P, B-picture 18B, I-picture 16I ... and so forth are transferred from the respective areas to the display device 3 in this order. Consequently the video signals of the above P-picture 28P, B-picture 27B, P-picture 25P, B-picture 24B, P-picture 22P, B-picture 21B, P-picture 19P, B-picture 18B, I-picture 16I ... and so forth are displayed on the display device 3 in this order, whereby the pictures reproduced in the reverse direction can be visually represented on the display device 3. Fig. 4 is a flow chart showing the operation of the controller 4 performed in this case. When the operation is switched to a reverse reproduction mode, the routine of this flow chart is started. First at step S10, the data of pictures 16I, 19I, 22P and 25P are supplied to the decoder successively to be decoded therein, and the resultant decoded data are written respectively in the corresponding area 1, area 2, area 3 and area 4 of the frame buffer in the decoder. Next at step S20, the data of P-picture 28P is transferred to the decoder to be decoded therein, and the decoded data is written in the non-displayed area of the frame buffer. In selection of such write area, the controller previously stores divisions where pictures are not displayed, being displayed and already displayed respectively, then determines the picture reproducible by the least number of times of decoding operations when the data is once decoded, and overwrites that area. In this exemplary case, the area 1 with the I-picture 16I written therein is determined, and the decoded P-picture 28P is overwritten in the area 1. Subsequently at step S30, the controller 4 controls the decoder 2 in such a manner as to start display of the P-picture 28P by triggering the same synchronously with Vsync after a lapse of 1V from the Vsync (Dsync) used to start decoding the P-picture 28P. Next at step S40, the controller 4 executes its control action for reading out the data from the disk drive 1 so that the B-picture 27B can be decoded in synchronism with Vsync (Dsync) as a trigger after a lapse of 1V from the start of displaying the P-picture 28P, and also that the P-pictures 25P and 28P can be read out from the frame buffer 2-3 and be decoded. Thereafter at step S50, the controller 4 controls the decoder 2 in a manner to start display of the B-picture 27B by triggering the same synchronously with Vsync after a lapse of 1V from the Dsync used to start decoding the B-picture 27B. Further at step S60, the controller 4 executes its control action for enabling the decoder 2 to read out the data from the disk drive 1 and to decode the data so that the I-picture 16I can be decoded again in synchronism with Dsync as a trigger after a lapse of 1V from the start of displaying the B-picture 27B. And finally at step S70, the controller 4 controls the decoder 2 to decode the data synchronously with the timing shown in Fig. 3. Thus, in the coded-data reproduction apparatus described above, there exist data portions where, in a special reproduction mode, I- and P-pictures are decoded continuously, and data portions where such pictures are decoded intermittently. And B-pictures are decoded intermittently. The reason is based on that the controller 4 controls both the decoder 2 and the specific data access means 5 in such a manner as not to cause failure in the data flow without the necessity of raising the data transfer rate to the decoder 2. In this case, decoding is performed with priority granted to the I-picture decodable alone and the P-picture decodable with reference merely to the immediately preceding I-picture or P-picture in the forward direction. And in case the next picture data to be supplied to the display device 3 is not stored in the frame buffer 2-3, the picture being displayed now is supplied continuously to the display device. It is to be understood here that the data supply patterns of Figs. 3A to 3E in supplying the data to the decoder and the data output patterns thereof in reading out the data from the decoder and displaying such data are merely illustrative examples, and a variety of patterns are applicable in a special reproduction mode. Hereinafter various patterns adapted for special reproduction will be described, wherein the patterns shown in Figs. 3A to 3E are represented as Fig. 5. In each of Figs. 5 through 31, a column "Code buffer read Dsync" includes the pictures read out from the code buffer 2-1 synchronously with the signal Dsync shown in Fig. 3A. A column "Frame buffer" is divided into fractional columns of numerals indicating the individual areas of the frame buffer 2-3, wherein there are included the pictures written in such areas synchronously with the signal Dsync as shown in Fig. 3C. Meanwhile, a column "Display Vsync" includes the pictures read out from the frame buffer 2-3 synchronously with the signal Vsync shown in Fig. 3D and displayed on the display device 3. Now each of Figs. 6 through 31 will be schematically described below. Fig. 6 shows an example in performing reverse reproduction with I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 7 shows another example in performing reverse reproduction with I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 8 shows an example in performing reverse reproduction with I-, P- and B-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 9 shows another example in performing reverse reproduction with I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 10 shows an example in performing reverse reproduction with entire I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 11 shows another example in performing reverse reproduction with entire I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to four. Fig. 12 shows an example in performing reverse reproduction with approximately alternate I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 13 shows another example in performing reverse reproduction with I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 14 shows an example in performing reverse reproduction with I- and P-pictures while not displaying any same pictures in succession, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to five. Fig. 15 shows another example in performing reverse reproduction with I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 16 shows another example in performing reverse reproduction with I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 17 shows another example in performing reverse reproduction with I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 18 shows another example in performing reverse reproduction with I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to two. Fig. 19 shows a further example in performing reverse reproduction with I- and P-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to two. Fig. 20 shows an example in performing reverse reproduction with entire I- and P-pictures and alternate B-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Fig. 21 shows an example in performing reverse reproduction with entire I- and P-pictures and some B-pictures while not displaying any same pictures in succession, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to six. Fig. 22 shows an example in performing partial reverse reproduction with successive I-, P- and B-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Figs. 23 to 25 show an example in performing reverse reproduction with entire I-, P- and B pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to four. Figs. 26 to 28 show an example in performing reverse reproduction with approximately entire I-, P- and B-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. And Figs. 29 to 31 show another example in performing reverse reproduction with approximately entire I-, P- and B-pictures, wherein the number of storable frames (number of areas) in the frame buffer 2-3 is set to three. Although the explanation given above is concerned with an exemplary case of coded data read out from recording media, the present invention is not limited thereto alone, and the coded data may be those stored via communication media or broadcasting media as well. Thus, according to the above disclosure, some portions of I-picture and P-picture data constituting unit data are continuously decoded in a special reproduction mode, while the remaining picture data are intermittently decoded and transferred to a display means, thereby reducing the number of required decoding steps. Consequently it becomes unnecessary to raise the data transfer rate to the decoder, hence eliminating failure in the data flow. Furthermore, the reproduced pictures can be displayed with reduction of the display delay time without the necessity of increasing the storage capacity of the frame buffer required for special reproduction. Although the present invention has been described hereinabove with reference to some preferred embodiments thereof, it is to be understood that the invention is not limited to such embodiments alone, and it will be apparent to those skilled in the art that a variety of modifications and variations can be made without departing from the scope of the invention as determined by the terms of the appended claims.

Claims: An apparatus for reproducing coded data formed into a predetermined unit group of frames comprising intra-frame coded data, forward predicitive coded data and bi-directionally predictive coded data, said apparatus comprising; a means (1, 5) for supplying said coded data from said unit group; a means (2-2) for selectively decoding the supplied coded data; a controller (4) operable, in a reverse reproduction mode, to control said supply means (1,5) and said selective decoding means (2-2) to selectively supply and decode said coded data frames including at least one intra-frame coded data, at least one of the forward predictive coded data and intermittently selected remaining forward predictive coded data and selected bi-directionally predictive coded data in accordance with the reverse order; and an outputting means (3) for outputting the decoded data in reverse order, wherein said controller (4) is operable to select and decode a portion of said coded data from said unit group to provide said reverse order and at least one of said bi-directionally predictive coded data is not selected and decoded from said unit group. An apparatus as claimed in Claim 1, wherein said supplying means is operable, under control of said controller (4) to select, supply and intermittently decode at least one remaining forward predictive coded data in dependence upon the bi-directionally predictive coded data which is selected in said reverse reproduction mode. An apparatus as claimed in Claim 1, wherein said outputting means comprises a frame-storage means (2-3) having a memory storage capacity of a limited number of decoded frames for storing a plurality of frames of the decoded data and a read means for reading out the stored data in the reverse order. An apparatus as claimed in Claim 3, wherein the said frame-storage means (2-3) stores selected decoded frames, in dependence upon which of said decoded frames are required in order to intermittently decode said selected remaining forward predictive coded data and said selected bi-directionally predictive coded data. An apparatus as claimed in Claim 4, wherein said controller (4) is operable to produce an order of selecting and decoding which depends upon the predetermined number of frames which can be stored in said frame-storage means and which of the other coded data frames are required in order to decode said selected coded data frames. An apparatus as claimed in any of Claims 1 to 5, wherein said supply means comprises, a reproduction means (5) for reading from a recording medium at least one intra-frame coded data, at least one of the forward predictive coded data and at least one of the bi-directionally predictive coded data from said unit group; and a coded data storage means (2-1) for storing the coded data thus read out. An apparatus as claimed in Claim 6 wherein said recording medium is an optical disk. An apparatus as claimed in Claim 6 wherein said unit group is composed of 15 frames. A method of reproducing coded data formed into a predetermined unit group of frames composed of intra-frame coded data, forward predictive coded data and bi-directionally predictive coded data, said method comprising the steps of: selectively supplying in a reverse reproduction mode at least one intra-frame coded data and at least one of the forward predictive coded data in said unit group; successively decoding the supplied coded data; selecting, supplying and intermittently decoding at least one of the remaining forward predictive coded data from said unit group; selecting, supplying and intermittently decoding at least one of the bi-directionally predictive coded data from said unit group; and outputting the decoded data in reverse order, wherein to provide said reverse order a portion of said coded data is selected and at least one of said bi-directionally predictive coded data is not selected and decoded from said unit group. A method according to Claim 9, wherein at least one remaining forward predictive coded data is selected, supplied and intermittently decoded in dependence upon the bi-directionally predictive coded data which is selected in said reverse reproduction mode. A method according to Claim 10, comprising the steps of storing a plurality of frames of the decoded data; and reading out the stored data in the reverse order. A method according to Claim 11, wherein the step of storing said plurality of frames of the decoded data comprises; storing selected decoded frames, in dependence upon which of said decoded frames are required in order to intermittently decode said selected remaining forward predictive coded data and the bi-directionally predictive coded data. A method as claimed in Claim 12, wherein the steps of selectively supplying and decoding said at least one intra-frame coded data, at least one of the forward predictive coded data, and intermittently selecting, supplying and decoding at least one of the remaining forward predictive coded data and at least one of said selected bi-directionally predictive coded data from said unit group is arranged to produce an order of selecting and decoding which depends upon the predetermined number of frames which can be stored, and which of the other coded data frames are required in order to decode said selected coded data frames. An apparatus for reproducing coded data formed into a predetermined unit group of frames comprising intra-frame coded data, forward predicitive coded data and bi-directionally predictive coded data, said apparatus comprising; a means (1,5) for supplying said coded data from said unit group; a means (2-2) for selectively decoding the supplied coded data; a frame-storage means (2-3) having a memory storage capacity of a limited number of decoded frames; a controller (4) operable, in a reverse reproduction mode, to control said supply means (1,2-1) and said selective decoding means (2-2) to reproduce selected frames of said unit group in a reverse order by selectively supplying and decoding said coded data frames including at least one intra-frame coded data and at least one of the forward predictive coded data in accordance with the reverse order; and selectively storing said decoded frames in said frame store, and an outputting means (3) for outputting the decoded frames from said frame store in reverse order, wherein said controller (4) is operable to select and decode, coded data from said unit group to produce said reverse order, in dependence upon said limited number of frames which can be stored in said frame-storage means (2-3), and wherein said controller (4) is operable to determine which of the other coded data frames are required in order to decode said selected coded data frames to produce said reverse reproduction. An apparatus as claimed in Claim 14, wherein said supplying means (1, 5) is operable to reproduce one of said coded data frames from said unit group in unit time, said one reproduced coded data being selectively supplied in dependence upon said reverse order of said frames and on said limited number of frames stored in said frame-storage means (2-3). An apparatus as claimed in Claim 14 and 15, wherein said outputting means (3) is operable to output repeatedly a decoded frame, if a next of the decoded data frames of said unit group is not available in said frame-storage means (2-3). An apparatus as claimed in Claim 14, 15 and 16, wherein said controller (4) is operable to determine which of said decoded data frames stored in said frame storage means (2-3), have not been displayed, have been displayed and are being displayed in accordance with said reverse reproduction mode, and to store a decoded data frame in an area of said frame storage means (2-3) containing a decoded frame already displayed, and if no decoded frames in said frame-storage means have already been displayed, to store said decoded frame in an area where a non-displayed frame is stored. An apparatus as claimed in Claim 17, wherein said controller (4) is operable when storing said decoded data frame in said area of said frame storage means (2-3) where a non-displayed frame is stored, to determine for each of a plurality of non-displayed frames a number of decoding operations required to decode each said non-displayed frame and consequent upon said number, to store said decoded data frame in the area where the non-displayed frame having the lowest number of decode operations is stored. An apparatus as claimed in any of Claims 14 to 18, wherein said decoding of one of the said coded data frames is performed with respect to a first timing signal having a periodicity of said unit time, and the output of the decoded data frame from said frame-storage means is performed with respect to a second timing signal having a periodicity of said unit time. An apparatus as claimed in Claim 19, wherein said first timing signal is offset from said second timing signal by the period of the vertical synchronizing signal. An apparatus as claimed in any of Claims 14 to 20, wherein said supply means (1, 5) comprises: a reproduction means (5) for reading from a recording medium said coded data; and a coded data storage means (2-1) for storing the coded data thus read out. An apparatus as claimed in Claim 21 wherein said recording medium is an optical disk. An apparatus as claimed in Claim 21 wherein said unit group is composed of 15 frames. An apparatus as claimed in any of Claims 14 to 20, wherein said outputting means (3) comprises a read means for reading out the data stored in said frame-storage means (2-3) according to said reverse order. A method of reproducing coded data formed into a predetermined unit group of frames composed of intra-frame coded data, forward predictive coded data and bi-directionally predictive coded data, said method comprising the steps of: selectively supplying in a reverse reproduction mode at least one intra-frame coded data and at least one of the forward predictive coded data in said unit group; successively decoding the supplied coded data; controlling the supply and decoding of coded data in accordance with a reverse order; and selectively storing a limited number of decoded frames and outputting the stored decoded frames in the reverse order, wherein the supply and the decoding of said coded data, depends upon said limited number of frames which can be stored and on which of the other coded data frames are required in order to decode said selected coded data frames to produce said reverse order. A method according to Claim 25, wherein the step of selectively supplying comprises reproducing one of said coded data frames from said unit group in unit time, said one reproduced coded data being selectively supplied in dependence upon said reverse order of said frames and on said limited number of stored frames. A method according to Claims 25 and 26, wherein the step of outputting the decoded data comprises outputting repeatedly a decoded frame, if a next of the decoded data frames of said unit group is not available from said limited number of stored frames. A method according to Claims 25, 26 or 27, wherein the step of storing a limited number of frames comprises determining which of the limited number of stored decoded data frames, have not been displayed, have been displayed and are being displayed in accordance with said reverse reproduction mode, and to store a next of the decoded data frames by replacing a decoded frame already displayed, and if none of said limited number of stored decoded frames have already been displayed, to store a next of the decoded frames by replacing a non-displayed frame. A method according to Claim 28, wherein in the step of controlling the supply and decoding of coded data, when storing said next of the decoded data by replacing said non-displayed frame, determining for each of a plurality of non-displayed stored decoded frames a number of decoding operations required to decode each said non-displayed frame and consequent upon said number, to store said decoded data frame by replacing the non-displayed frame having the lowest number of decoding operations. A method according to any of Claims 26 to 29, wherein said decoding of one of said coded data frames is performed with respect to a first timing signal having a periodicity of said unit time, and the output of the decoded data is performed with respect to a second timing signal having a periodicity of said unit time. A method according to Claim 30, wherein said first timing signal is offset from said second timing signal by the period of the vertical synchronizing signal. A method according to any of claims 25 to 31 comprising selecting, supplying and intermittently decoding at least one of the remaining forward predictive coded data from said unit group, to provide said reverse order.

Inventors: MUTO AKIHIRO, MUTO, AKIHIRO, MUTO, AKIHIRO, C/O INT. PROP. DEP., SONY CORP.
Applicants: SONY CORP, SONY CORPORATION
Application year: 1996
Main classification: H04N9
IPC codes: H04N9, H04N7, H04N5, G06T9, G11B20