Abstract:
Provided are a buffer memory operating method used to decompress compressed moving pictures, in which a buffer memory used during decompression of compressed moving picture is efficiently operated to efficiently reduce the capacity of an actually used buffer memory, and a decoding apparatus adapted to the buffer memory operating method. The frame buffer memory operating method includes the operations of decoding a current input I frame and storing the decoded current I frame in a standby buffer and converting the standby buffer having the decoded current I frame into a storage buffer and simultaneously converting a storage buffer having a previous I frame into another standby buffer; and decoding a current input P frame with reference to the decoded current I frame stored in the storage buffer, storing the decoded current P frame in one of the standby buffers, and converting the standby buffer having the current P frame to the other standby buffer.

Description:
CROSS-REFERENCE TO RELATED PATENT APPLICATION 
       [0001]    This application claims the benefit of Korean Patent Application No. 10-2007-0099245, filed on Oct. 2, 2007, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference. 
       BACKGROUND OF THE INVENTION 
       [0002]    1. Field of the Invention 
         [0003]    The present invention relates to a method of decompressing compressed moving pictures, and more particularly, to a buffer memory operating method used to decompress compressed moving pictures, in which a buffer memory used during decompression of compressed moving picture is efficiently operated to efficiently reduce the capacity of an actually used buffer memory, and a decoding apparatus adapted to the buffer memory operating method. 
         [0004]    2. Description of the Related Art 
         [0005]    Generally, moving picture data has a significantly large data capacity. However, moving pictures can be efficiently compressed without a degradation of the quality of image, by using a correlation between video frames that constitute each of the moving pictures. A general moving picture compressing method includes an operation of encoding an input video signal to get a collection of compressively encoded video frames called as a group of pictures (GOP). 
         [0006]    The GOP includes I frames, and also includes P frames encoded with reference to I or P frames previous to the P frames. The GOP may also include B frames encoded with reference to I or P frames previous or next to the B frames. Since I frames is encoded regardless of a correlation between frames, the encoded I frames may be restored to the original image by using only data about the encoded I frames themselves. 
         [0007]    However, P or B frames are encoded with reference to frames previous (or next) thereto, and thus the encoded P or B frames cannot be restored if not using I or P frames previous (or next) thereto. Thus, only if all frames are sequentially arranged, they can be restored to the original image. When some data is lost, data existing after the lost data cannot be restored. This phenomenon is referred to as error propagation. To solve this problem, a method of using key frames is being used. 
         [0008]    In the key frames using method, frames are compressed and decompressed by using only a correlation between a current frame and a key frame. Generally, an I frame is used as a key frame. If using the key frame using method, even when some P frames which refer to a key frame are lost, frames next to the lost P frames can be restored to the original image. In particular, a method of constructing a GOP with only an I frame and a P frame except for a B frame may be used to reduce the amount of calculation. 
         [0009]    In a series of processes for decompressing a compressed image by using a key frame using method, a storage buffer memory for decompressing and storing a key frame (i.e., an I frame), and a decompression buffer memory for decompressing and storing the other frames (i.e., P frames) by referring to the key frame stored in the storage buffer memory are needed. The decompression buffer memory is not used to store frames which are to be referred to, but is used as a reservoir for temporarily storing frames before displaying them. 
         [0010]    The number of buffer memories actually required to operate a system is different from the number of theoretically used buffer memories, in order to prevent an image overwrite from being generated when using a single space, that is, to prevent a collision between a frame display process and a frame storage process. Thus, a buffer space for decompressing and storing frames needs to be separate from a buffer space for displaying the frames. In addition, a buffer memory in which frames are stored for a predetermined period of time needs to be separated from a buffer memory in which frames are stored temporarily. 
         [0011]    If a special memory region for display is set and frames to be displayed are copied in the every field, allocation of the time required for such a copying operation may be impossible in some cases because of the limit of a system clock frequency. Because of this problem, in the related art, a plurality of I-frame-only buffer regions and a plurality of P-frame-only buffer regions are secured to avoid the time required for the frame copying operation, and decompression and display are performed side by side while switching the purposes of the I and P frame buffer regions to each other. 
         [0012]    However, such a system according to the related art does not require a large capacity buffer memory when a single image captured by a single camera is decompressed, but does require a large capacity buffer memory to decompress a multi-image captured by a plurality of cameras. In other words, as the number of cameras increases, the number of necessary buffer memories linearly increases. This causes the system to have a hardware burden. 
       SUMMARY OF THE INVENTION 
       [0013]    The present invention provides a buffer memory operating method in which the storage space of a buffer memory used during decompression of compressed moving picture is flexibly used for each frame to thereby efficiently reduce the capacity of a required buffer memory. 
         [0014]    The present invention also provides a decoding apparatus which efficiently operating a buffer memory included therein according to the order and types of frames included in a compressed moving picture, thereby efficiently performing a decoding process even by using only a buffer memory of small capacity. 
         [0015]    According to an aspect of the present invention, there is provided a frame buffer memory operating method used to decompress compressed image data including I frames and P frames, the method comprising: decoding a current input I frame and storing the decoded current I frame in a standby buffer and converting the standby buffer having the decoded current I frame into a storage buffer and simultaneously converting a storage buffer having a previous I frame into another standby buffer; and decoding a current input P frame with reference to the decoded current I frame stored in the storage buffer, storing the decoded current P frame in one of the standby buffers, and converting the standby buffer having the current P frame to the another standby buffer. 
         [0016]    Each of the storage buffer and the standby buffer may have a memory capacity corresponding to one frame. The number of storage buffers may be equal to the number of cameras and the number of standby buffers may be equal to the number of cameras that output images which are to be simultaneously displayed. 
         [0017]    The decoding of the current I frame, storing of the decoded current I frame, and converting of the standby buffer and the storage buffer may include storing the decoded current I frame in a first standby buffer, converting the first standby buffer having the decoded current I frame into a storage buffer and simultaneously converting a storage buffer having a previous I frame into a second standby buffer. The decoding of the current P frame, storing of the decoded current P frame, and converting of the standby buffer may include storing the decoded current P frame in the first standby buffer and converting the first standby buffer having the current P frame into the second standby buffer. 
         [0018]    The first and second standby buffers may be relatively determined based on a point in time when one of the current I and P frames is input, and the first and second standby buffers are changed at each frame when effective decoded data is input. 
         [0019]    In the frame buffer memory operating method, when an image decoded and stored in one of a storage buffer and a standby buffer is backward reproduced, the I and P frames stored in the second standby buffer may be output and displayed on a screen. 
         [0020]    According to another aspect of the present invention, there is provided a decoding apparatus comprising: a decoder which decodes encoded image data; a frame buffer memory which stores frames obtained by decoding the encoded image data; a display unit which displays the frames; and a controller which designates each of buffer memories included in the frame buffer memory as one of a storage buffer for storing I frames and a standby buffer for storing P frames and controls the storage buffer to be changed every I frame and the standby buffer to be changed every P frame. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0021]    The above and other features and advantages of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings in which: 
           [0022]      FIG. 1  is a flowchart of a method of operating a frame buffer memory according to the related art; 
           [0023]      FIG. 2  illustrates a method of operating a frame buffer memory, according to an embodiment of the related art; 
           [0024]      FIG. 3  illustrates a method of operating a frame buffer memory, according to another embodiment of the related art; 
           [0025]      FIG. 4  is a flowchart of a method of operating a frame buffer memory, according to an embodiment of the present invention; 
           [0026]      FIG. 5  illustrates a frame buffer memory operating method when an image received from a single camera is forward reproduced, according to an embodiment of the present invention; 
           [0027]      FIG. 6  illustrates a frame buffer memory operating method when images received from two cameras are forward reproduced, according to an embodiment of the present invention; 
           [0028]      FIG. 7  is a flowchart of a method of operating a frame buffer memory, according to another embodiment of the present invention; 
           [0029]      FIG. 8  illustrates a frame buffer memory operating method when an image received from a single camera is backward reproduced, according to an embodiment of the present invention; 
           [0030]      FIG. 9  illustrates a frame buffer memory operating method when images received from two cameras are backward reproduced, according to an embodiment of the present invention; and 
           [0031]      FIG. 10  is a block diagram of a decoding apparatus according to an embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0032]    The preferred embodiments of the present invention will now be explained with reference to the accompanying drawings. It should be understood however that the disclosed embodiments are merely examples of the invention, which may be embodied in various forms. The following description and drawings are not to be construed as limiting the invention and numerous specific details are described to provide a thorough understanding of the present invention, as the basis for the claims and as a basis for teaching one of ordinary skill in the art how to make and/or use the invention. However in certain instances, well-known or conventional details are not described in order not to unnecessarily obscure the present invention in detail. 
         [0033]      FIG. 1  is a flowchart of a frame buffer memory operating method according to the related art. 
         [0034]    In operation  110 , compressively encoded image data is received in units of frames. The compressively encoded image data may include not only I frames and P frames but also B frames, but may include only I frames and P frames to reduce the time required for encoding and the amount of calculation performed during the encoding. A method of obtaining the compressively encode image data may be a normal compressing method or a key frame compressing method. Thereafter, in operation  115 , it is determined whether a received frame is an I frame encoded without referring to other frames. 
         [0035]    If it is determined that the received frame is the I frame, the received frame is independently decoded, in operation  120 . Thereafter, in operation  125 , it is determined whether the decoded I frame is an odd-numbered I frame. If it is determined that the decoded I frame is an odd-numbered I frame, the decoded I frame is stored in a first I-frame-only buffer, in operation  130 . On the other hand, if it is determined that the decoded I frame is an even-numbered I frame, the decoded I frame is stored in a second I-frame-only buffer, in operation  135 . Then, after the lapse of a predetermined period of time, the stored I frame is displayed, in operation  140 . 
         [0036]    If it is determined in operation  115  that the received frame is a P frame encoded with reference to other frames, the received frame is decoded based on a correlation between the received frame and a reference frame in operation  145 . The reference frame is a frame which has already been decoded. Thereafter, in operation  150 , it is determined whether the decoded P frame is an odd-numbered P frame. If it is determined that the decoded frame is an odd-numbered P frame, the decoded P frame is stored in a first P-frame-only buffer, in operation  155 . On the other hand, if it is determined that the decoded frame is an even-numbered P frame, the decoded P frame is stored in a second P-frame-only buffer, in operation  160 . Then, after the lapse of a predetermined period of time, the stored P frame is displayed, in operation  165 . 
         [0037]    As described above, in the buffer memory operating method according to the related art, two buffer memories are included according to each frame type, and frames are stored in different spaces according to the numbering of input frames, namely, according to whether input frames are odd-numbered or even-numbered. However, in a key frame method, since a P frame is not a reference frame, a P-frame-only buffer is not used as a space for storing frames but used as a space for preparing for display of frames. 
         [0038]      FIG. 2  illustrates a frame buffer memory operating method according to an embodiment of the related art. 
         [0039]    Referring to  FIG. 2 , a method of operating a decoding buffer when an image received from a single camera is encoded into consecutive frames including I frames and P frames and the consecutive frames are decoded to be forward reproduced is illustrated. As described above, in the key frame compressing method, a P frame is encoded with reference to an I frame, and thus the I frame is needed when the P frame is decoded. 
         [0040]    In the buffer memory operating method illustrated in  FIG. 2 , when a single image received from a single camera is decoded, two I-frame-only buffers C 1 A and C 1 B are alternately used according to the order in which I frames are received, and two P-frame-only buffers B 1 A and B 1 B are alternately used according to the order in which P frames are received. Accordingly, frames stored in each of the I-frame-only buffers C 1 A and C 1 B are changed in units of 2I frames, and frames stored in each of the P-frame-only buffers B 1 A and B 1 B are changed in units of 2 P or 3 P frames. 
         [0041]      FIG. 3  illustrates a frame buffer memory operating method according to another embodiment of the related art. 
         [0042]    Referring to  FIG. 3 , a method of operating a decoding buffer when images received from two cameras are encoded into consecutive frames including a I frame and P frame and the consecutive frames are decoded to be forward reproduced is illustrated. When images captured by a plurality of cameras are simultaneously encoded, the images are mixed and received, and a GOP is constructed for each of the images. 
         [0043]    In the buffer memory operating method illustrated in  FIG. 3 , when a multi-image received from two cameras, namely, a first camera and a second camera, is decoded, two I-frame-only buffers C 1 A and C 1 B for the first camera and two I-frame-only buffers C 2 A and C 2 B for the second camera are alternately used according to the order in which I frames are received, and two P-frame-only buffers B 1 A and B 1 B for the first camera and two P-frame-only buffers B 2 A and B 2 B for the second camera are alternately used according to the numbered order in which P frames are received. 
         [0044]    Referring to  FIGS. 2 and 3 , when the number of cameras is doubled, the capacity of a necessary buffer memory is doubled. In other words, the number of images and the capacity of a buffer memory have a linear relationship therebetween. Thus, when a plurality of images are simultaneously decompressed, a very large capacity of buffer memory is needed. To address this problem, in a frame buffer memory operating method according to the present invention, a space for storing I frames and a space for storing P frames are not separately set, and a single space alternates between a space for storing I frames and a space for storing P frames. 
         [0045]      FIG. 4  is a flowchart of a frame buffer memory operating method according to an embodiment of the present invention. 
         [0046]    In contrast with the related art in which a buffer memory for storing I frames and a buffer memory for storing P frames are separately included, in the present invention, a single buffer memory alternate between a role for storing I frames and a role for storing P frames according to the types and priorities of input frames and the types of cameras. Hereafter, a storage buffer is defined as a space in which I frames are stored for a predetermined period of time, and a standby buffer is defined as a space in which P frames are temporarily stored. In particular,  FIG. 4  illustrates a method of operating a frame buffer memory when an image is forward reproduced. 
         [0047]    In operation  410 , compressively encoded image data (including I and P frames) is received in units of frames. A direction in which the frames of the compressively encoded image data are decoded is a forward direction, which is the same as a direction in which encoding is performed to obtain the compressively encoded image data. The compressively encoded image data may be a result of compression of an image captured by a single camera or images captured by a plurality of cameras. An encoding method used to obtain the compressively encoded image data may be a key frame method in which encoding is performed based on only a correlation between a current frame and a key frame (i.e., an I frame). Thereafter, in operation  415 , it is determined whether an input frame is an I frame. 
         [0048]    If it is determined that the input frame is an I frame encoded without referring to other frames, the input frame is independently decoded, in operation  420 . Thereafter, in operation  425 , it is determined whether the decoded I frame is a first I frame. If it is determined that the decoded I frame is the first I frame, the decoded I frame is stored in an initial storage buffer, in operation  430 . The number of initial storage buffers corresponds to the number of cameras. For example, if images captured by N cameras have been encoded, N initial storage buffers are needed to decode the encoded images. 
         [0049]    On the other hand, if it is determined in operation  425  that the decoded I frame is not the first I frame, the decoded I frame is stored in a first standby buffer, in operation  435 . Thereafter, in operation  440 , the first standby buffer is changed into a storage buffer. In operation  445 , an existing storage buffer is changed into a second standby buffer. The first standby buffer does not indicate a specific buffer, but changes in units of frames. For example, if two standby buffers exist, the priority of the standby buffers change whenever a new P frame is input. Thereafter, in operation  450 , the stored I frame is displayed. Thereafter, since the I frame is a reference frame, it is stored for a predetermined period of time. 
         [0050]    If it is determined in operation  415  that the input frame is a P frame encoded with reference to other frames, the input frame is decoded based on a correlation between the input frame and the referred frames, in operation  455 . In the key frame method, the referred frames are I frames. Thereafter, in operation  460 , the decoded P frame is temporarily stored in the first standby buffer. In operation  465 , the stored P frame is displayed. Since the P frame is not a reference frame, it is immediately discarded, namely, discarded without being stored for a predetermined period of time. Thereafter, in operation  470 , the order in which the standby buffers stand by is changed. If there exist at least three buffers, the first standby buffer needs to be understood as a first-priority standby buffer, and the second standby buffer needs to be understood as a last-priority standby buffer. This will now be described in greater detail with reference to  FIGS. 5 and 6 . 
         [0051]      FIG. 5  illustrates a method of operating a frame buffer memory when an image received from a single camera is forward reproduced, according to an embodiment of the present invention. 
         [0052]    Referring to  FIG. 5 , an image signal obtained by the single camera is compressed into I frames and P frames. Each of the compressed frames has an input order. A decoding buffer denotes a space where a currently decoded frame is stored, a standby buffer denotes a space where a frame to be decoded next to the current frame is to be stored, and a storage buffer denotes a space where a decoded I frame is stored. The frame buffer memory may include one storage buffer R 0  and two standby buffers B 0  and B 1 , namely, first and second buffers B 0  and B 1 . However, the number of buffer memories may vary. 
         [0053]    When a new I frame is input, it is stored in a standby buffer first ranked from the point of time when the new I frame is input, and a storage buffer in which an I frame previous to the input new I frame is stored is changed to a last-ranked standby buffer. However, if a first I fame is input, it is stored in an initial storage buffer. The orders of the first and second buffers B 0  and B 1  are not fixed but change in units of frames. In other words, a first standby buffer performs its function by an alternate of the first and second buffers B 0  and B 1 . If there exist N standby buffers, it should be understood that a first ranked standby buffer through an N-th ranked standby buffer exist. 
         [0054]    More specifically, when a first I frame  1  is input, it is stored in an initial storage buffer, namely, the storage buffer R 0 . When a first P frame  2  is input, it is stored in a first-ordered standby buffer, namely, the first buffer B 0 . When a second P frame  3  is input, it is stored in a second standby buffer, namely, the second buffer B 1 . The second standby buffer, namely, the second buffer B 1 , needs to be changed to the first standby buffer before the second P frame  3  is input. In other words, the priorities of the standby buffers continuously change every time a frame is input. When a second I frame  5  is input, it is stored in the first standby buffer, namely, the second buffer B 1 , and the previously-used storage buffer R 0  is converted into the second standby buffer. 
         [0055]      FIG. 6  illustrates a method of operating a frame buffer memory when images received from two cameras are forward reproduced, according to an embodiment of the present invention. 
         [0056]    Referring to  FIG. 6 , image signals obtained by the two cameras are each compressed into I frames and P frames. Each of the compressed frames has an input order. However, as described above, when images captured by a plurality of cameras are simultaneously encoded, the images are mixed and received in units of frames. The frame buffer memory may include two storage buffer R 0  and R 1  and two standby buffers B 0  and B 1 , namely, first and second buffers B 0  and B 1 . 
         [0057]    More specifically, when a first-1 I frame  1  and a first-2 I frame  2  are input, they are stored in the storage buffers R 0  and R 1 , respectively. Then, when a first-1 P frame  3  is input, it is stored in a first-ordered standby buffer, namely, the first buffer B 0 . When a first-2 P frame  4  is input, it is stored in a last-ordered standby buffer, namely, the second buffer B 1 . The last-ordered standby buffer, namely, the second buffer B 1 , needs to be changed to the first-ordered standby buffer before the first-2 P frame  4  is input. When a second-1 I frame  9  and a second-2 I frame  10  are input, they are stored in first-ordered standby buffers, namely, the first and second buffer B 1 , respectively, and the previously-used storage buffers R 0  and R 1  are converted into the standby buffers. 
         [0058]      FIG. 7  is a flowchart of a frame buffer memory operating method according to another embodiment of the present invention. In particular,  FIG. 7  illustrates a method of operating a frame buffer memory during backward reproduction. 
         [0059]    In operation  710 , compressively encoded image data (including I and P frames) is received in units of frames. However, if a last frame is a P frame instead of an I frame, since an I frame needs to be referred to when the last P fame is decoded, the next frames, including the last frame, cannot be decoded. Accordingly, to decode and display all of the frames that form the compressively encoded image data, the I frame to be referred to needs to be decoded. To achieve this, the frames are arranged so that the I frame is input and decoded before the last P frame, in operation  715 . In other words, an operation of extracting the I frame from all of the frames that form the compressively encoded image data needs to be performed. Thereafter, in operation  720 , it is determined whether an input frame is an I frame. 
         [0060]    If it is determined that the input frame is an I frame encoded without referring to other frames, the input frame is independently decoded, in operation  725 . Thereafter, in operation  730 , it is determined whether the decoded I frame is a first I frame that forms the image data. If it is determined that the decoded I frame is the first I frame, the decoded I frame is stored in an initial storage buffer, in operation  735 . On the other hand, if it is determined in operation  735  that the decoded I frame is not the first I frame, the decoded I frame is stored in a first standby buffer, in operation  740 . Thereafter, in operation  745 , the first standby buffer is changed into a storage buffer. In operation  750 , an existing storage buffer is changed into a second standby buffer. Thereafter, in operation  755 , the I frame stored in the second standby buffer is displayed. 
         [0061]    If it is determined in operation  720  that the input frame is a P frame encoded with reference to other frames, the input frame is decoded based on a correlation between the input frame and the referred frames, in operation  760 . In the key frame method, the referred frames are I frames, and thus the input frame is decoded by referring to the I frames stored in the storage buffer. Thereafter, in operation  765 , the decoded P frame is temporarily stored in the first standby buffer. In operation  770 , the P frame stored in the second standby buffer is displayed. Since the P frame is not a reference frame, it is immediately discarded, namely, discarded without being stored for a predetermined period of time. Thereafter, in operation  775 , the order in which the standby buffers stand by is changed. 
         [0062]    The reason for displaying the I and P frames stored in the second standby buffer instead of displaying the I and P frames stored in a decoding buffer is because the arrangement of the frames of the image data have been changed before the decoding and the original arrangement of the frames is the same as an arrangement of I and P frames stored in the second standby buffer. In other words, the above-described reason is because, although the I frames have been decoded before the P frames because the I frames have to be used as a reference during decoding, the decoded frames need to be rearranged in the original frame arrangement order and displayed. If there exist at least three standby buffers, the first standby buffer needs to be understood as a first-ranked standby buffer, and the second standby buffer needs to be understood as a last-ranked standby buffer. This will now be described in greater detail with reference to  FIGS. 5 and 6 . 
         [0063]      FIG. 8  illustrates a frame buffer memory operating method when an image received from a single camera is backward reproduced, according to an embodiment of the present invention. 
         [0064]    Referring to  FIG. 8 , an image signal obtained by the single camera is compressed into I frames and P frames. Each of the compressed frames has an input order. To achieve backward reproduction, decoding needs to be performed in a direction opposite to an encoding direction. Accordingly, the compressed frames are received starting from the last frame. However, since the P frames should be decoded by referring to the I frames, if the last frame is a P frame, an I frame referred by the last P frame is previously decoded. The frame buffer memory may include one storage buffer R 0  and two standby buffers B 0  and B 1 , namely, first and second buffers B 0  and B 1 . 
         [0065]    More specifically, to decode a last P frame  12 , a previous I frame  9  should be decoded in advance. Thus, the I frame  9  is decoded prior to the decoding of the last P frame  12  and stored in the storage buffer R 0 , and P frames  12 ,  11 , and  10  are sequentially decoded with reference to the stored I frame  9  and temporarily stored in the standby buffers. In  FIG. 8 , a decoding sequence, a decoding buffer, a first-ordered standby buffer, a last-ordered standby buffer, and a storage buffer are sequentially illustrated. Roles and functions of these buffers have been described above with reference to  FIGS. 4 through 6 . 
         [0066]    In other words, in a frame buffer memory operating method according to the present invention, a dedicated buffer for a specific frame is not set, and buffers rotate so that their roles are changed every time a new frame is input. However, since the frames of the original image should be displayed in the same order as that in which the frames are encoded, frames stored in a second standby buffer instead of frames stored in a decoding buffer are output. In other words, the frames stored in the second standby buffer have the same arrangement order as an order opposite to the order in which the frames are arranged in the compressed data. 
         [0067]      FIG. 9  illustrates a frame buffer memory operating method when images received from two cameras, namely, first and second cameras, are backward reproduced, according to an embodiment of the present invention. 
         [0068]    Referring to  FIG. 9 , image signals obtained by the two cameras are each compressed into I frames and P frames. Each of the compressed frames has an input order. However, as described above, when images captured by a plurality of cameras are simultaneously encoded, the images are encoded to be overlapped in units of frames. The frame buffer memory may include two storage buffer R 0  and R 1  and two standby buffers B 0  and B 1 , namely, first and second buffers B 0  and B 1 . Each of the number of storage buffers and the number of standby buffers is not limited to 2. 
         [0069]    More specifically, to decode a last P frame  16  of second image data obtained by the second camera, an I frame  10  previous to the last P frame  16  needs to be decoded in advance. Thus, the I frame  10  is decoded and stored in the storage buffer R 0 , and then the P frame  16  is decoded with reference to the I frame  10  stored in the storage buffer R 0  and temporarily stored in a standby buffer. To decode a last P frame  15  of first image data obtained by the first camera, an I frame  8  previous to the last P frame  15  needs to be decoded in advance. In this manner, all of the frames are decoded. 
         [0070]    Similar to what has been described above with reference to  FIG. 8 , since the decoded frames need to be output in the same order as that in which the original image frames are arranged, the frames stored in a last-ordered standby buffer are output instead that the frames stored in a decoding buffer are output. In other words, the frames stored in the last-ordered standby buffer have the same order as an order opposite to the order in which the compressed frames are arranged. The I frames stored in the storage buffers may be displayed when P frames associated with the I frames are all completely decoded. 
         [0071]      FIG. 10  is a block diagram of a decoding apparatus according to an embodiment of the present invention. 
         [0072]    Referring to  FIG. 10 , the decoding apparatus includes a decoder  1010  for decoding encoded image data, a frame buffer memory  1020  for storing the decoded image data, a controller  1030  for controlling the entire operation of the decoding apparatus, and a display unit  1040  for displaying an image obtained by decoding the image data. The frame buffer memory includes a plurality of buffer memories, each of which has a capacity capable of storing one frame. 
         [0073]    More specifically, the decoder  1010  receives and decodes compressed image data which corresponds to an image captured by at least one camera and is obtained by encoding the image using an encoder. The compressed image data may include I frames, P frames, and B frames. However, in a digital video recording (DVR) system, the image may be encoded so that the compressed image data includes only I frames or P frames, when considering the time and amount of calculation. In addition, the image may be encoded using a key frame method to achieve backward reproduction. 
         [0074]    The frame buffer memory  1020  stores I or P frames decoded by the decoder  1010  and includes a storage buffer for storing the I frames and a standby buffer for storing the P frames. However, the storage buffer and the standby buffer are not fixed as a storage buffer and a standby buffer, respectively, but correspond to flexible buffers whose roles may change under the control of the controller  1030 . In other words, the type of each buffer is newly defined by the controller  1030  every time a frame is input. 
         [0075]    The frame buffer memory  1020  includes storage buffers R 0 , . . . , and R n , the number of which corresponds to the number of cameras, and standby buffers B 0 , . . . , and B n , the number of which corresponds to the number of screen-divided regions. For example, if there are three cameras, the number of storage buffers may be 3, because I frames included in each image data needs to be stored for a predetermined period of time. For example, if images captured by four cameras need to be displayed simultaneously, the number of standby buffers may be 8 in order to perform both a temporary storage function and a display function with respect to four images captured by the four cameras. 
         [0076]    The controller  1030  controls the decoder  1010  so that the decoded frame is stored in the frame buffer memory  1020 , and controls the stored decoded frame to be output to the display unit  1040 . The controller  1030  controls the timing of the operations of the decoder  1010 , the frame buffer memory  1020 , and the display unit  1040 . The display unit  1040  displays frames output from the frame buffer memory  1020  through a screen. 
         [0077]    The controller  1030  analyzes the types of frames and the arrangement sequence of the cameras from header information attached to the compressed image data, and determines the reservoirs of the decoded I and P frames output from the decoder  1010  based on the analyzed information. In addition, the controller provides position information used for decoding and display to the decoder  1010  and the display unit  1040 . Moreover, the controller  1030  rotates the roles of the storage buffers R 0 , . . . , and R n  and the standby buffers B 0 , . . . , and B n  included in the frame buffer memory  1020 . 
         [0078]    In a frame buffer memory operating method according to the present invention, instead of using specific-frame-only buffers as in the related art, the roles of buffers are re-defined in units of frames and alternate with each other, thereby reducing the number of buffer memories required during decoding. In particular, the number of buffer memories required when multiple moving pictures captured by multiple cameras are decompressed can be reduced. For example, in the related art, 16 buffer memories are needed to decompress images captured by four cameras. However, in the present invention, only 6 buffer memories are needed to perform compression on the images. 
         [0079]    While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the following claims.