Abstract:
Presented herein are system(s), method(s), and apparatus for dynamic blanking. In one embodiment, there is presented a method. The method comprises generating blank lines forming a portion of a larger picture if a picture is not available, until the picture is available; and including the picture in the larger picture when the larger picture is available.

Description:
PRIORITY CLAIM  
       [0001]     Not Applicable  
       FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT  
       [0002]     Not Applicable  
       MICROFICHE/COPYRIGHT REFERENCE  
       [0003]     Not Applicable  
       BACKGROUND OF THE INVENTION  
       [0004]     During a video conference, a decoder system receives streams of pictures that can include pictures of varying sizes. Due to the amount of data in a picture, the pictures are often encoded in accordance with any one of a variety of standards. These standards can include, but are not limited to, MPEG-2, H.264, and VC-1, to name a few.  
         [0005]     Because of the different sizes of the pictures, different amounts of time are required to decode the pictures. Additionally, same size pictures can take different amounts of time to decode, as well. For example, in MPEG-2, bi-directionally encoded pictures can take longer to decode than intra-coded pictures.  
         [0006]     After the pictures are decoded, the pictures are postprocessed for display and provided to a formatter. The formatter arranges the pictures for the video conference. Due to the varying amounts of time required to decode pictures, a postprocessor can finish postprocessing a picture, before the decoder finishes decoding the next picture for postprocessing. During this time, the postprocessor provides a blank picture to the formatter. This can slow down the picture rate, reducing the quality of the video conference.  
         [0007]     Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with embodiments of the present invention as set forth in the remainder of the present application with reference to the drawings.  
       BRIEF SUMMARY OF THE INVENTION  
       [0008]     Presented herein are system(s), method(s), and apparatus for dynamic blanking.  
         [0009]     In one embodiment, there is presented a method. The method comprises generating blank lines forming a portion of a larger picture if a picture is not available, until the picture is available; and including the picture in the larger picture when the larger picture is available.  
         [0010]     In another embodiment, there is presented a decoder system comprising a postprocessor for generating blank lines forming a portion of a larger picture if a picture is not available, until the picture is available, and including the picture in the larger picture when the larger picture is available.  
         [0011]     In another embodiment, there is presented a circuit. The circuit comprises memory and a processor. The memory stores a plurality of instructions. Execution of the instructions causes generating blank lines forming a portion of a larger picture if a picture is not available until the picture is available; and including the picture in the larger picture when the larger picture is available. The processor is connected to the memory and operable to execution the instructions.  
         [0012]     These and other advantages and novel features of the present invention, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings.  
     
    
     BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS  
       [0013]      FIG. 1  is a block diagram of an exemplary stream of pictures;  
         [0014]      FIG. 2  is a block diagram of an exemplary decoder system in accordance with an embodiment of the present invention;  
         [0015]      FIG. 3  is a block diagram of an exemplary picture generated in accordance with an embodiment of the present invention;  
         [0016]      FIG. 4  is a flow diagram for generating pictures in accordance with an embodiment of the present invention.  
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0017]     Referring now to  FIG. 1 , there is illustrated a block diagram describing an exemplary stream of pictures P 0  . . . P 6 . The pictures P 0  . . . P 6  are provided corresponding times t 0  . . . t 6 . The pictures P 0  . . . P 6  are then processed for display. The pictures P 0  . . . P 6  can initially be encoded in accordance with any of a variety of encoding standards, including, but not limited to, MPEG-2, or H.264, to name a few.  
         [0018]     The pictures P 0  . . . P 6  can also be of a variety of sizes and shapes. For example, the pictures P 0  . . . P 6  can represent pictures for a video conference. In cases where pictures P 0  . . . P 6  have different sizes, the pictures P 0  . . . P 6  can take different amounts of time to decode. For example, a larger picture, e.g., P 6  can take a longer time to decode than pictures P 0  . . . P 5 .  
         [0019]     Due to the different times for decoding pictures P 0  . . . P 6 , it is possible that picture P 5  can be processed for display, prior to decoding picture P 6 . Therefore, picture P 6  is not available for display when the processing of picture P 5  for display is finished.  
         [0020]     When the picture P 6  is not available for display a larger picture P 6 ′ is generated. The larger picture P 6 ′ is filled with blank lines X until picture P 6  is available. When picture P 6  is available, it is included in the larger picture P 6 ′.  
         [0021]     Referring now to  FIG. 2 , there is illustrated a block diagram of an exemplary decoder system  200  in accordance with an embodiment of the present invention. The decoder system  200  includes a video decoder  205 , frame buffer  207 , a postprocessor  210 , and a queue  215 .  
         [0022]     The video decoder  205  decodes the pictures P 0  . . . P 6 , and writes the pictures to frame buffers  207 . The postprocessor  210  processes the decoded pictures P 0  . . . P 6  for display. Upon processing the pictures P 0  . . . P 6 , the postprocessor  210  places the pictures in the queue  215 . The decoder system  200  can be connected to a video conference formatter  220 . The video conference formatter  220  displays the pictures P 0  . . . P 6 .  
         [0023]     When the picture P 6  is not available for display, postprocessor  210  generates a larger picture P 6 ′. The postprocessor  210  fills the larger picture P 6 ′ with blank lines until picture P 6  is available. When the video decoder  205  makes picture P 6  available, the postprocessor  210  includes picture P 6  in the larger picture P 6 ′. The video conference formatter  220  is capable of removing blank lines from the larger picture P 6 ′, and displaying only P 6 .  
         [0024]     Referring now to  FIG. 3 , there is illustrated a block diagram describing an exemplary larger picture P 6 ′ in accordance with an embodiment of the present invention. The exemplary larger picture P 6 ′ comprises blank lines X at the top of the picture P 6 ′, and the picture P 6  at the bottom of the picture. After postprocessing picture P 5 , if the picture P 6  is not available, the postprocessor  210  generates the blank lines X until picture P 6  is available.  
         [0025]     The term “blank lines” shall include any lines of pixels that are independent of the picture P 6 . This can include, but is not limited to, black lines, white lines, or lines with a predetermined sequence of pixels.  
         [0026]     Referring now to  FIG. 4 , there is illustrated a flow diagram for displaying pictures. At  405 , the postprocessor  210  finishes processing a picture. At  410 , the postprocessor  210  determines whether the next picture is ready for postprocessing.  
         [0027]     When the next picture is ready for postprocessing at  410 , the postprocessor  210  postprocesses the next picture P 6  at  415 , and  410  is repeated.  
         [0028]     When the next picture is not ready for postprocessing at  410 , the postprocessor  210  generates a larger picture P 6 ′ at  420 . At  425 , the postprocessor  210  adds blank lines to the larger picture P 6 ′. The postprocessor  210  repeats the foregoing until the next picture P 6  is ready for postprocessing at  425 . When the next picture P 6  is ready for postprocessing at  425 , the postprocessor  210  adds picture P 6  to the larger picture P 6 ′ at  430 . After  430 ,  410  is repeated.  
         [0029]     The embodiments described herein may be implemented as a board level product, as a single chip, application specific integrated circuit (ASIC), or with varying levels of the decoder system integrated with other portions of the system as separate components. The degree of integration of the decoder system will primarily be determined by the speed and cost considerations. Because of the sophisticated nature of modern processor, it is possible to utilize a commercially available processor, which may be implemented external to an ASIC implementation. Alternatively, if the processor is available as an ASIC core or logic block, then the commercially available processor can be implemented as part of an ASIC device wherein certain functions can be implemented in firmware. In one embodiment, a deinterlacer can be incorporated into a single integrated circuit.  
         [0030]     Although the embodiments described herein are described with a degree of particularity, it should be noted that changes, substitutions, and modifications can be made with respected to the embodiments without departing from the spirit and scope of the present application. Accordingly, the present application is only limited by the following claims and equivalents thereof.