US20100007786A1 - System, method, and apparatus for providing massively scaled down video using iconification - Google Patents

System, method, and apparatus for providing massively scaled down video using iconification Download PDF

Info

Publication number
US20100007786A1
US20100007786A1 US12/501,121 US50112109A US2010007786A1 US 20100007786 A1 US20100007786 A1 US 20100007786A1 US 50112109 A US50112109 A US 50112109A US 2010007786 A1 US2010007786 A1 US 2010007786A1
Authority
US
United States
Prior art keywords
picture
reduced
frame
synthetic
resulting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/501,121
Inventor
Sandeep Bhatia
Srinivasa Mogathala Prabhakara Reddy
Sivugururaman Mahadevan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avago Technologies International Sales Pte Ltd
Original Assignee
Sandeep Bhatia
Srinivasa Mogathala Prabhakara Reddy
Sivugururaman Mahadevan
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sandeep Bhatia, Srinivasa Mogathala Prabhakara Reddy, Sivugururaman Mahadevan filed Critical Sandeep Bhatia
Priority to US12/501,121 priority Critical patent/US20100007786A1/en
Publication of US20100007786A1 publication Critical patent/US20100007786A1/en
Assigned to BANK OF AMERICA, N.A., AS COLLATERAL AGENT reassignment BANK OF AMERICA, N.A., AS COLLATERAL AGENT PATENT SECURITY AGREEMENT Assignors: BROADCOM CORPORATION
Assigned to AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD. reassignment AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BROADCOM CORPORATION
Assigned to BROADCOM CORPORATION reassignment BROADCOM CORPORATION TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Assignors: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • H04N19/428Recompression, e.g. by spatial or temporal decimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Definitions

  • An iconized frame also known as a thumb nail scale, is a video frame that is massively scaled down.
  • Iconized frames are useful for previewing video data. Several iconized frames can be viewed simultaneously allowing a user to quickly ascertain the contents of a video.
  • a method for providing a video output comprises decoding an encoded picture, thereby resulting in a decoded picture; reducing the decoded picture, thereby resulting in a reduced picture; storing the reduced picture; and encoding the reduced picture, thereby resulting in a synthetic picture.
  • a decoder system for providing a video output.
  • the decoder system comprises a video decoder, a memory, and a synthetic picture generator.
  • the video decoder decodes an encoded picture, thereby resulting in a decoded picture and reducing the decoded picture, thereby resulting in a reduced picture.
  • the memory stores the reduced picture.
  • the synthetic picture generator encodes the reduced picture, thereby resulting in a synthetic picture.
  • FIG. 1 is a block diagram of an exemplary frame, massively scaled down in accordance with an embodiment of the present invention
  • FIG. 2 is a block diagram of an exemplary video decoder in accordance with an embodiment of the present invention
  • FIG. 3 is a block diagram describing the memory management of the decoder in accordance with an embodiment of the present invention.
  • FIG. 4 is a flow diagram for simultaneously providing massively scaled down video according to an embodiment of the present invention.
  • FIG. 1 there is illustrated a block diagram of an exemplary frame 100 , massively scaled down in accordance with an embodiment of the present invention.
  • a video comprises a series of frames representing still images associated with a particular time interval.
  • a frame 100 can comprise any number of rows 100 ( 0 ) . . . 100 (Y) of pixels 100 (N, 0 ) . . . 100 (N,X).
  • the frame 100 can be reduced in the horizontal direction by selecting horizontally adjacent pixels 100 (N, 2*I) and 100 (N, 2*I+1), where I is an integer, and averaging the values of the horizontally adjacent pixels.
  • a reduced frame 100 ′ of Y ⁇ X/2 pixels can be generated from the average values of the horizontally adjacent pixels.
  • the frame 100 can be iteratively reduced by repeating the foregoing with the reduced frame 100 1 , resulting in a further reduced frame 100 2 of Y ⁇ X/4 pixels. This process can be continued any number, m, times, resulting in a reduced frame 100 m , of Y ⁇ X/2 m .
  • the reduced frame 100 m can be reduced by a factor n by discarding in the vertical direction by selecting each nth row 100 m (n*I), and generating a data structure 100 nm comprising the nth rows 100 m (n*I). Accordingly, the resulting structure 100 mn represents the frame 100 , scaled down by a factor of 2 m n.
  • FIG. 2 there is illustrated a block diagram of an exemplary decoder in accordance with an embodiment of the present invention.
  • Data is output from buffer 32 within SDRAM 30 .
  • the data output from the buffer 32 is then passed to a data transport processor 35 .
  • the data transport processor 35 demultiplexes the transport stream into packetized elementary stream constituents, and passes the audio transport stream to an audio decoder 60 and the video transport stream to a video transport decoder 40 .
  • the video transport decoder 40 provides a video elementary stream to a video decoder 45 .
  • the video decoder 45 in regular mode decompresses the video elementary stream and reconstructs the video frames.
  • the video frames are stored in frame buffers 48 .
  • the display engine 50 scales the video picture, renders the graphics, and constructs the complete display.
  • a host processor 90 manages the foregoing operation of the decoder system.
  • the decoder system can operate in either a regular mode or a scaling mode, wherein the particular mode can be controlled by user inputs provide to the host processor 90 via a user interface.
  • the host processor 90 passes buffer identifiers, prediction buffers chosen by a buffer manager, and other data to the video decoder 45 in a pre-defined data structure after the picture or frame level parsing is completed, one time per frame or field.
  • the video decoder 45 first encounters a slice start code, the video decoder 45 is fed with the slice data and below until the next non-slice occurs.
  • the host processor 90 sends a picture end code to the video decoder 45 and awaits a marker interrupt from the video decoder 45 , indicating that the video decoder 45 is done with decoding of the frame or field.
  • the video decoder 45 is responsible for filling the frame buffer 48 that is assigned for decode with the decoded frame 100 .
  • the MPEG video decoder 45 When the host 90 turns on the scaling mode, the MPEG video decoder 45 is configured to switch to a reduced memory mode (RMM).
  • the host processor 90 passes on the buffer identifiers and prediction buffer identifiers provided by the buffer manager after enabling an RMM flag that is an element in the predefined data structure between the host 90 and the video decoder 45 .
  • the video decoder 45 As the video decoder 45 encounters pictures, the video decoder 45 generates a reduced frame 100 1 that is horizontally half in size during the first pass.
  • the reduced frame 100 1 is written to a particular one of a set of frame buffers 48 .
  • the video decoder 45 may post process every decoded frame after decoding during the first pass.
  • a challenge occurs when the video frames 100 comprise MPEG B-frames. MPEG B-frames are decoded and displayed almost simultaneously, to reduce the frame buffer 48 requirements to three frame buffers.
  • four frame buffers 48 can be used and the video decoder 45 can be configured to operate with four frame buffers 48 .
  • a synthetic picture generator 70 generates a compressed picture describing the reduced frame 100 .
  • the synthetic picture 72 represents the reduced frame 100 1 , encoded according the predetermined standard of the original video data provided to the video decoder 45 .
  • the synthetic stream represents the reduced frame 100 1 encoded in accordance with the MPEG standard.
  • the synthetic picture 72 is predicted from reduced frame 100 1 . Accordingly, the synthetic picture 72 has motion vectors and prediction error equal to zero.
  • the video decoder 45 decodes the synthetic picture 72 in the next pass, and divides and averages neighboring pixels to generate a reduced frame 100 that is horizontally reduced in size from reduced frame 100 1 .
  • the desired scale factor can be provided to the host processor 90 via user inputs.
  • the host 90 can have an application program interface call to the video decoder 45 where the host processor 90 specifies the number of passes that are required.
  • the host processor 90 passes on the frame buffer identifiers for decoding, and the prediction buffer identifiers from a buffer manager, after enabling a reduced memory mode flag, in a pre-defined data structure.
  • the video decoder 45 is fed with the compressed data from the slice layer and below, and starts decoding, making predictions as applicable.
  • the video decoder 45 halves the horizontal size of the frame 100 , resulting in a reduced frame 100 1 and writes to a from buffer 48 .
  • the host processor 90 after getting a buffer identifier and prediction buffer identifiers from a buffer manager enables an RMM flag, and passes on a predefined data structure to the video decoder 45 .
  • the video decoder 45 receives the compressed data from the slice layer and below till a non-slice code appears in a start code table.
  • the video decoder 45 decodes the frame 100 to the frame buffer 48 , composes a pixel from two horizontal pixels and writes the reduced frame 100 1 to a frame buffer 48 .
  • the video decoder 45 then sends a marker interrupt to the host processor 90 .
  • the host processor 90 Upon reception of the marker interrupts, the host processor 90 prepares a data structure for a synthetic stream comprising the reduced frame 100 1 depending on the structure of the actual stream being decoded and also the buffer bases for decoding it. The host processor 90 enables a half-icon flag after disabling an RMM flag. The portion of the 48 frame buffer 48 storing the reduced frame 100 1 and another portion of the 48 frame buffer 48 are selected.
  • the host processor 90 then issues a direct memory access command to initiate generation of a synthetic stream by the video encoder 70 and transfer of the synthetic stream to the video decoder 45 .
  • the video decoder 45 decodes the synthetic stream, resulting in a decoded synthetic stream.
  • the decoded synthetic stream overwrites the reduced frame 100 1 .
  • the video decoder 45 also generates a reduced decoded synthetic stream comprising reduced frame 100 2 .
  • the decoded synthetic stream is written to the another portion of the 48 frame buffer 48 .
  • the foregoing decoded synthetic stream comprising reduced frame 100 2 effectively achieves 1 ⁇ 4 horizontal scale down.
  • the video decoder 45 sends a marker interrupt to the host processor 90 , after writing reduced frame 100 2 .
  • the host processor 90 prepares the data structure for a second synthetic stream comprising a frame/field (where the horizontal size is 1 ⁇ 4 th the size of the full size frame 100 ). Accordingly, the portion of the 48 frame buffer 48 storing the frame 100 2 is selected, as well as another portion of the 48 frame buffer 48 .
  • the host processor 90 issues a direct memory access command to generate a synthetic stream encoding frame 100 2 by the video encoder 70 , and provides the synthetic stream encoding frame 100 2 to the video decoder 45 .
  • the video decoder 45 decodes the synthetic stream, resulting in a decoded synthetic stream comprising reduced frame 100 2 .
  • the decode synthetic stream comprising reduced frame 100 2 overwrites the frame 100 2 in the 48 frame buffer 48 .
  • the video decoder 45 generates reduced frame 1003 from frame 100 2 that is reduced M in the horizontal direction, and reduced 1 ⁇ 8 in the horizontal direction from frame 100 .
  • the video decoder 45 transmits a marker interrupt to the host processor 90 .
  • the host processor 90 clears an icon-enable flag in the predefined data structure.
  • the display engine 50 is configured to scan out both the frame 100 and the reduced frame 100 m . Additionally, the display engine 50 can reduce the size of the reduced frame 100 m in the vertical direction by a factor of n, by selectively scanning out every nth line 100 ( n I) of the reduced frame 100 m .
  • FIG. 3 there is illustrated a block diagram describing a frame buffer 48 .
  • the video decoder 45 writes the frame 100 in a particular one of the frame buffers 48 .
  • the video decoder 45 during pass 0 writes the reduced frame 100 1 .
  • the reduced frame 100 1 is retrieved from the 48 frame buffer 48 , encoded by the video encoder 70 , thereby generating a synthetic stream that is provided to the video decoder 45 .
  • the video decoder 45 decodes the synthetic stream, resulting in a decoded synthetic frame comprising reduced frame 100 1 .
  • the decoded synthetic stream comprising reduced frame 100 1 overwrites the reduced frame 100 1 .
  • the video decoder 45 also generates a reduced decoded synthetic stream comprising reduced frame 100 2 .
  • the video decoder 45 writes the reduced frame 100 2 into another portion of the 48 frame buffer 48 ( 1 ) comprising one-fourth of the 48 frame buffer 48 .
  • the video encoder 70 encodes the reduced frame 100 2 , resulting in a synthetic stream comprising reduced frame 100 2 .
  • the synthetic stream is provided to the video decoder 45 .
  • the video decoder 45 overwrites reduced frame 100 2 with the decoded synthetic stream, and writes reduced frame 100 3 in another portion of the 48 frame buffer 48 ( 2 ).
  • the portion of the 48 frame buffer 48 ( 2 ) comprises one-eighth of the icon frame buffer 48 .
  • a flow diagram for simultaneously providing full size video and massively scaled down video according to an embodiment of the present invention.
  • a video elementary stream is received.
  • a frame of the video elementary stream is decoded.
  • a reduced frame is generated from the frame, and stored.
  • a determination is made whether to further reduce the video. If at 515 , the determination is made to further reduce the video, at 520 the reduced frame generated either during 510 or during 530 is encoded as a synthetic picture.
  • the synthetic stream is decoded.
  • a reduced synthetic picture is generated, reduced, and stored. After 530 a determination is made at 515 whether to further reduce or not. If a determination is made to further reduce, 520 - 530 are repeated.
  • the display engine 50 sans out every nth line of the reduced frame.
  • the inventions 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 system integrated on a single chip with other portions of the system as separate components.
  • the degree of integration of the monitoring system may primarily be determined by speed and cost considerations. Because of the sophisticated nature of modern processors, it is possible to utilize a commercially available processor, which may be implemented external to an ASIC implementation of the present system. 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 the memory storing instructions is implemented as firmware.

Abstract

Presented herein are systems, methods, and apparatus for simultaneously providing full size video and massively scaled down video using inconification. In one embodiment, there is presented a method for providing a video output. The method comprises decoding an encoded picture, thereby resulting in a decoded picture; reducing the decoded picture, thereby resulting in a reduced picture; storing the reduced picture; and encoding the reduced picture, thereby resulting in a synthetic picture.

Description

    RELATED APPLICATIONS
  • [Not Applicable]
  • FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT
  • [Not Applicable]
  • MICROFICHE/COPYRIGHT REFERENCE
  • [Not Applicable]
  • BACKGROUND OF THE INVENTION
  • An iconized frame, also known as a thumb nail scale, is a video frame that is massively scaled down.
  • Iconized frames are useful for previewing video data. Several iconized frames can be viewed simultaneously allowing a user to quickly ascertain the contents of a video.
  • Due to the usefulness of iconized frames, many standards bodies have adopted a requirement to provide iconized frames of arbitrary scaled down factors for video decoders. Conventionally, the foregoing scale down occurs in the scalar of the display engine. However, the scalar in the display engine is primarily designed for lower scale down factors that are usually not more than M.
  • 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 the present invention as set forth in the remainder of the present application with reference to the drawings.
  • BRIEF SUMMARY OF THE INVENTION
  • Presented herein are systems, methods, and apparatus for simultaneously providing full size video and massively scaled down video using inconification.
  • In one embodiment, there is presented a method for providing a video output. The method comprises decoding an encoded picture, thereby resulting in a decoded picture; reducing the decoded picture, thereby resulting in a reduced picture; storing the reduced picture; and encoding the reduced picture, thereby resulting in a synthetic picture.
  • In another embodiment, there is presented a decoder system for providing a video output. The decoder system comprises a video decoder, a memory, and a synthetic picture generator. The video decoder decodes an encoded picture, thereby resulting in a decoded picture and reducing the decoded picture, thereby resulting in a reduced picture. The memory stores the reduced picture. The synthetic picture generator encodes the reduced picture, thereby resulting in a synthetic picture.
  • These and other advantages and novel features of the present invention, as well as details illustrated embodiments thereof, will be more fully understood from the following description and drawings.
  • BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS
  • FIG. 1 is a block diagram of an exemplary frame, massively scaled down in accordance with an embodiment of the present invention;
  • FIG. 2 is a block diagram of an exemplary video decoder in accordance with an embodiment of the present invention;
  • FIG. 3 is a block diagram describing the memory management of the decoder in accordance with an embodiment of the present invention; and
  • FIG. 4 is a flow diagram for simultaneously providing massively scaled down video according to an embodiment of the present invention.
  • DETAILED DESCRIPTION OF THE INVENTION
  • Referring now to FIG. 1, there is illustrated a block diagram of an exemplary frame 100, massively scaled down in accordance with an embodiment of the present invention. A video comprises a series of frames representing still images associated with a particular time interval.
  • A frame 100 can comprise any number of rows 100(0) . . . 100(Y) of pixels 100(N,0) . . . 100(N,X). The frame 100 can be reduced in the horizontal direction by selecting horizontally adjacent pixels 100(N, 2*I) and 100(N, 2*I+1), where I is an integer, and averaging the values of the horizontally adjacent pixels. A reduced frame 100′ of Y×X/2 pixels can be generated from the average values of the horizontally adjacent pixels.
  • The frame 100 can be iteratively reduced by repeating the foregoing with the reduced frame 100 1, resulting in a further reduced frame 100 2 of Y×X/4 pixels. This process can be continued any number, m, times, resulting in a reduced frame 100 m, of Y×X/2m.
  • The reduced frame 100 m can be reduced by a factor n by discarding in the vertical direction by selecting each nth row 100 m(n*I), and generating a data structure 100 nm comprising the nth rows 100 m(n*I). Accordingly, the resulting structure 100 mn represents the frame 100, scaled down by a factor of 2mn.
  • Referring now to FIG. 2, there is illustrated a block diagram of an exemplary decoder in accordance with an embodiment of the present invention. Data is output from buffer 32 within SDRAM 30. The data output from the buffer 32 is then passed to a data transport processor 35. The data transport processor 35 demultiplexes the transport stream into packetized elementary stream constituents, and passes the audio transport stream to an audio decoder 60 and the video transport stream to a video transport decoder 40. The video transport decoder 40 provides a video elementary stream to a video decoder 45. The video decoder 45 in regular mode decompresses the video elementary stream and reconstructs the video frames. The video frames are stored in frame buffers 48. The display engine 50 scales the video picture, renders the graphics, and constructs the complete display.
  • A host processor 90 manages the foregoing operation of the decoder system. The decoder system can operate in either a regular mode or a scaling mode, wherein the particular mode can be controlled by user inputs provide to the host processor 90 via a user interface.
  • When the decoder system operates in the regular mode, the host processor 90 passes buffer identifiers, prediction buffers chosen by a buffer manager, and other data to the video decoder 45 in a pre-defined data structure after the picture or frame level parsing is completed, one time per frame or field. When the video decoder 45 first encounters a slice start code, the video decoder 45 is fed with the slice data and below until the next non-slice occurs. When the next non-slice occurs, the host processor 90 sends a picture end code to the video decoder 45 and awaits a marker interrupt from the video decoder 45, indicating that the video decoder 45 is done with decoding of the frame or field. The video decoder 45 is responsible for filling the frame buffer 48 that is assigned for decode with the decoded frame 100.
  • When the host 90 turns on the scaling mode, the MPEG video decoder 45 is configured to switch to a reduced memory mode (RMM). The host processor 90 passes on the buffer identifiers and prediction buffer identifiers provided by the buffer manager after enabling an RMM flag that is an element in the predefined data structure between the host 90 and the video decoder 45.
  • As the video decoder 45 encounters pictures, the video decoder 45 generates a reduced frame 100 1 that is horizontally half in size during the first pass. The reduced frame 100 1 is written to a particular one of a set of frame buffers 48.
  • As can be seen, the video decoder 45 may post process every decoded frame after decoding during the first pass. A challenge occurs when the video frames 100 comprise MPEG B-frames. MPEG B-frames are decoded and displayed almost simultaneously, to reduce the frame buffer 48 requirements to three frame buffers. However, four frame buffers 48 can be used and the video decoder 45 can be configured to operate with four frame buffers 48.
  • Repeated iterations from the frame buffers 48 can be used to provide reduced frames 100 m with a variety of scale factors. During a second pass, the frame 100 can be reduced by a factor of ¼ in the horizontal direction, resulting in reduced frame 100 2. Where repeated predictions are used to provide a reduced frame 100 m with a desired scale factor, a synthetic picture generator 70 generates a compressed picture describing the reduced frame 100.
  • The synthetic picture 72 represents the reduced frame 100 1, encoded according the predetermined standard of the original video data provided to the video decoder 45. For example, wherein the video data provided to the video decoder 45 is encoded in accordance with the MPEG standard, the synthetic stream represents the reduced frame 100 1 encoded in accordance with the MPEG standard. Additionally, the synthetic picture 72 is predicted from reduced frame 100 1. Accordingly, the synthetic picture 72 has motion vectors and prediction error equal to zero.
  • The video decoder 45 decodes the synthetic picture 72 in the next pass, and divides and averages neighboring pixels to generate a reduced frame 100 that is horizontally reduced in size from reduced frame 100 1. The desired scale factor can be provided to the host processor 90 via user inputs. The host 90 can have an application program interface call to the video decoder 45 where the host processor 90 specifies the number of passes that are required.
  • Scaling by ½ (Pass 0)
  • (1) The host processor 90 passes on the frame buffer identifiers for decoding, and the prediction buffer identifiers from a buffer manager, after enabling a reduced memory mode flag, in a pre-defined data structure.
  • (2) The video decoder 45 is fed with the compressed data from the slice layer and below, and starts decoding, making predictions as applicable. The video decoder 45 halves the horizontal size of the frame 100, resulting in a reduced frame 100 1 and writes to a from buffer 48.
  • Scaling by ¼ (PASS 1)
  • (1) The host processor 90, after getting a buffer identifier and prediction buffer identifiers from a buffer manager enables an RMM flag, and passes on a predefined data structure to the video decoder 45.
  • (2) The video decoder 45 receives the compressed data from the slice layer and below till a non-slice code appears in a start code table.
  • (3) The video decoder 45 decodes the frame 100 to the frame buffer 48, composes a pixel from two horizontal pixels and writes the reduced frame 100 1 to a frame buffer 48. The video decoder 45 then sends a marker interrupt to the host processor 90.
  • (4) Upon reception of the marker interrupts, the host processor 90 prepares a data structure for a synthetic stream comprising the reduced frame 100 1 depending on the structure of the actual stream being decoded and also the buffer bases for decoding it. The host processor 90 enables a half-icon flag after disabling an RMM flag. The portion of the 48 frame buffer 48 storing the reduced frame 100 1 and another portion of the 48 frame buffer 48 are selected.
  • (5) The host processor 90 then issues a direct memory access command to initiate generation of a synthetic stream by the video encoder 70 and transfer of the synthetic stream to the video decoder 45. The video decoder 45 decodes the synthetic stream, resulting in a decoded synthetic stream. The decoded synthetic stream overwrites the reduced frame 100 1. The video decoder 45 also generates a reduced decoded synthetic stream comprising reduced frame 100 2. The decoded synthetic stream is written to the another portion of the 48 frame buffer 48. The foregoing decoded synthetic stream comprising reduced frame 100 2 effectively achieves ¼ horizontal scale down.
  • (6) The video decoder 45 sends a marker interrupt to the host processor 90, after writing reduced frame 100 2.
  • Scaling by ⅛ (Pass 2)
  • (1) After the marker interrupt for pass 1, the host processor 90 prepares the data structure for a second synthetic stream comprising a frame/field (where the horizontal size is ¼th the size of the full size frame 100). Accordingly, the portion of the 48 frame buffer 48 storing the frame 100 2 is selected, as well as another portion of the 48 frame buffer 48.
  • (2) The host processor 90 issues a direct memory access command to generate a synthetic stream encoding frame 100 2 by the video encoder 70, and provides the synthetic stream encoding frame 100 2 to the video decoder 45. The video decoder 45 decodes the synthetic stream, resulting in a decoded synthetic stream comprising reduced frame 100 2. The decode synthetic stream comprising reduced frame 100 2 overwrites the frame 100 2 in the 48 frame buffer 48. Additionally, the video decoder 45 generates reduced frame 1003 from frame 100 2 that is reduced M in the horizontal direction, and reduced ⅛ in the horizontal direction from frame 100.
  • (3) Once the video decoder 45 completes the foregoing, the video decoder 45 transmits a marker interrupt to the host processor 90. Upon receiving the marker interrupt, the host processor 90 clears an icon-enable flag in the predefined data structure.
  • The display engine 50 is configured to scan out both the frame 100 and the reduced frame 100 m. Additionally, the display engine 50 can reduce the size of the reduced frame 100 m in the vertical direction by a factor of n, by selectively scanning out every nth line 100(nI) of the reduced frame 100 m.
  • Referring now to FIG. 3, there is illustrated a block diagram describing a frame buffer 48. During the regular mode of operation, the video decoder 45 writes the frame 100 in a particular one of the frame buffers 48. During the scaling mode of operation, the video decoder 45 during pass 0 writes the reduced frame 100 1.
  • In a portion 48(0) of the frame buffer 48 comprising half of the 48 frame buffer 48. During pass1, the reduced frame 100 1 is retrieved from the 48 frame buffer 48, encoded by the video encoder 70, thereby generating a synthetic stream that is provided to the video decoder 45. The video decoder 45 decodes the synthetic stream, resulting in a decoded synthetic frame comprising reduced frame 100 1. The decoded synthetic stream comprising reduced frame 100 1 overwrites the reduced frame 100 1. The video decoder 45 also generates a reduced decoded synthetic stream comprising reduced frame 100 2. The video decoder 45 writes the reduced frame 100 2 into another portion of the 48 frame buffer 48(1) comprising one-fourth of the 48 frame buffer 48. During the pass2, the video encoder 70 encodes the reduced frame 100 2, resulting in a synthetic stream comprising reduced frame 100 2. The synthetic stream is provided to the video decoder 45. The video decoder 45 overwrites reduced frame 100 2 with the decoded synthetic stream, and writes reduced frame 100 3 in another portion of the 48 frame buffer 48(2). The portion of the 48 frame buffer 48(2) comprises one-eighth of the icon frame buffer 48.
  • The foregoing can be repeated iteratively, any number m times, wherein the reduced frame 100 m is written to a portion 48(m−1) comprising ½m of the 48 frame buffer 48.
  • Referring now to FIG. 4, there is illustrated a flow diagram for simultaneously providing full size video and massively scaled down video according to an embodiment of the present invention. At 500, a video elementary stream is received. At 505, a frame of the video elementary stream is decoded. At 510, a reduced frame is generated from the frame, and stored. At 515, a determination is made whether to further reduce the video. If at 515, the determination is made to further reduce the video, at 520 the reduced frame generated either during 510 or during 530 is encoded as a synthetic picture. At 525, the synthetic stream is decoded. At 530, a reduced synthetic picture is generated, reduced, and stored. After 530 a determination is made at 515 whether to further reduce or not. If a determination is made to further reduce, 520-530 are repeated.
  • If the determination is made not to further reduce the frame, at 540, the display engine 50 sans out every nth line of the reduced frame.
  • The inventions 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 system integrated on a single chip with other portions of the system as separate components. The degree of integration of the monitoring system may primarily be determined by speed and cost considerations. Because of the sophisticated nature of modern processors, it is possible to utilize a commercially available processor, which may be implemented external to an ASIC implementation of the present system. 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 the memory storing instructions is implemented as firmware.
  • While the invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from its scope. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed, but that the invention will include all embodiments falling within the scope of the appended claims.

Claims (12)

1. A method for providing a video output, said method comprising:
decoding an encoded picture, thereby resulting in a decoded picture;
reducing the decoded picture, thereby resulting in a reduced picture;
storing the reduced picture; and
encoding the reduced picture, thereby resulting in a synthetic picture.
2. The method of claim 1, further comprising:
decoding the synthetic picture, thereby resulting in a decoded synthetic picture.
3. The method of claim 2, further comprising:
reducing the synthetic picture, thereby resulting in a reduced synthetic picture; and
storing the reduced synthetic picture.
4. The method of claim 1, wherein generating a reduced picture further comprises:
averaging horizontally adjacent pixels in the decoded picture.
5. The method of claim 1, wherein encoding the reduced picture further comprises:
predicting the synthetic picture from the reduced picture.
6. The method of claim 5, wherein the reduced picture comprises motion vectors equal to zero a prediction error equal to zero.
7. A decoder system for providing a video output, said decoder system comprising:
a video decoder for decoding an encoded picture, thereby resulting in a decoded picture and reducing the decoded picture, thereby resulting in a reduced picture;
memory for storing the reduced picture; and
a synthetic picture generator for encoding the reduced picture, thereby resulting in a synthetic picture.
8. The decoder system of claim 7, wherein the video decoder decodes the synthetic picture, thereby resulting in a decoded synthetic picture.
9. The decoder system of claim 8, wherein the video decoder reduces the synthetic picture, thereby resulting in a reduced synthetic picture and wherein the memory stores the reduced synthetic picture.
10. The decoder system of claim 7, wherein generating a reduced picture further comprises averaging horizontally adjacent pixels in the decoded picture.
11. The decoder system of claim 7, wherein encoding the reduced picture further comprises:
predicting the synthetic picture from the reduced picture.
12. The decoder system of claim 11, wherein the reduced picture comprises motion vectors equal to zero a prediction error equal to zero.
US12/501,121 2004-10-29 2009-07-10 System, method, and apparatus for providing massively scaled down video using iconification Abandoned US20100007786A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/501,121 US20100007786A1 (en) 2004-10-29 2009-07-10 System, method, and apparatus for providing massively scaled down video using iconification

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/977,864 US7574059B2 (en) 2004-10-29 2004-10-29 System, method, and apparatus for providing massively scaled down video using iconification
US12/501,121 US20100007786A1 (en) 2004-10-29 2009-07-10 System, method, and apparatus for providing massively scaled down video using iconification

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/977,864 Continuation US7574059B2 (en) 2004-10-29 2004-10-29 System, method, and apparatus for providing massively scaled down video using iconification

Publications (1)

Publication Number Publication Date
US20100007786A1 true US20100007786A1 (en) 2010-01-14

Family

ID=36261964

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/977,864 Active 2026-10-06 US7574059B2 (en) 2004-10-29 2004-10-29 System, method, and apparatus for providing massively scaled down video using iconification
US12/501,121 Abandoned US20100007786A1 (en) 2004-10-29 2009-07-10 System, method, and apparatus for providing massively scaled down video using iconification

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US10/977,864 Active 2026-10-06 US7574059B2 (en) 2004-10-29 2004-10-29 System, method, and apparatus for providing massively scaled down video using iconification

Country Status (1)

Country Link
US (2) US7574059B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110141353A1 (en) * 2009-12-14 2011-06-16 National Taiwan University Method of realism assessment of an image composite

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7574059B2 (en) * 2004-10-29 2009-08-11 Broadcom Corporation System, method, and apparatus for providing massively scaled down video using iconification
US20080204468A1 (en) * 2007-02-28 2008-08-28 Wenlong Li Graphics processor pipelined reduction operations
US10681386B1 (en) * 2017-04-03 2020-06-09 L3 Technologies, Inc. Insertion of end of frame indicators in streaming video protocols

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3921204A (en) * 1971-08-27 1975-11-18 Post Office Digital encoding system
US5365604A (en) * 1993-01-14 1994-11-15 Rca Thomson Licensing Corporation Error concealment apparatus for video signal processors
US5598226A (en) * 1993-08-04 1997-01-28 Avt Communications Ltd. Reparing corrupted data in a frame of an image sequence
US5734415A (en) * 1994-12-24 1998-03-31 Samsung Electronics Co., Ltd. Screen processing circuit and method of video phone using picture-in-picture function
US6195394B1 (en) * 1998-11-30 2001-02-27 North Shore Laboratories, Inc. Processing apparatus for use in reducing visible artifacts in the display of statistically compressed and then decompressed digital motion pictures
US6330281B1 (en) * 1999-08-06 2001-12-11 Richfx Ltd. Model-based view extrapolation for interactive virtual reality systems
US6377713B1 (en) * 1999-01-27 2002-04-23 General Instrument Corporation Synchronous DRAM bandwidth optimization for display downsizing of an MPEG-2 image
US20020047903A1 (en) * 2000-09-21 2002-04-25 Hisae Shibuya Method for evaluating color picture tubes and device for the same and method for making color picture tubes
US20030048671A1 (en) * 2000-10-30 2003-03-13 Kazushi Yoshikawa Contents reproducing method and device for reproducing contents on recording medium
US6677992B1 (en) * 1997-10-23 2004-01-13 Olympus Corporation Imaging apparatus offering dynamic range that is expandable by weighting two image signals produced during different exposure times with two coefficients whose sum is 1 and adding them up
US20040196902A1 (en) * 2001-08-30 2004-10-07 Faroudja Yves C. Multi-layer video compression system with synthetic high frequencies
US7301999B2 (en) * 2003-02-05 2007-11-27 Stmicroelectronics S.R.L. Quantization method and system for video MPEG applications and computer program product therefor

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2101838B (en) * 1981-04-20 1986-03-05 Canon Kk Image processing method and apparatus therefor
US5377014A (en) * 1992-01-06 1994-12-27 At&T Corp. Apparatus and method for displaying recorded compressed digital high definition video information
US5446491A (en) * 1993-12-21 1995-08-29 Hitachi, Ltd. Multi-point video conference system wherein each terminal comprises a shared frame memory to store information from other terminals
US5838380A (en) * 1994-09-30 1998-11-17 Cirrus Logic, Inc. Memory controller for decoding a compressed/encoded video data frame
EP0709809B1 (en) * 1994-10-28 2002-01-23 Oki Electric Industry Company, Limited Image encoding and decoding method and apparatus using edge synthesis and inverse wavelet transform
US6023301A (en) * 1995-07-14 2000-02-08 Sharp Kabushiki Kaisha Video coding device and video decoding device
JPH10191341A (en) * 1996-12-24 1998-07-21 Toshiba Corp Image expansion device
US5973740A (en) * 1997-10-27 1999-10-26 International Business Machines Corporation Multi-format reduced memory video decoder with adjustable polyphase expansion filter
US6658056B1 (en) * 1999-03-30 2003-12-02 Sony Corporation Digital video decoding, buffering and frame-rate converting method and apparatus
US7321623B2 (en) * 2002-10-01 2008-01-22 Avocent Corporation Video compression system
US7133452B1 (en) * 2003-02-24 2006-11-07 Vixs Systems, Inc. Method and system for transcoding video data
US20060062388A1 (en) * 2004-09-17 2006-03-23 Gaurav Aggarwal System and method for command for fast I-picture rewind
US7574059B2 (en) * 2004-10-29 2009-08-11 Broadcom Corporation System, method, and apparatus for providing massively scaled down video using iconification

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3921204A (en) * 1971-08-27 1975-11-18 Post Office Digital encoding system
US5365604A (en) * 1993-01-14 1994-11-15 Rca Thomson Licensing Corporation Error concealment apparatus for video signal processors
US5598226A (en) * 1993-08-04 1997-01-28 Avt Communications Ltd. Reparing corrupted data in a frame of an image sequence
US5734415A (en) * 1994-12-24 1998-03-31 Samsung Electronics Co., Ltd. Screen processing circuit and method of video phone using picture-in-picture function
US6677992B1 (en) * 1997-10-23 2004-01-13 Olympus Corporation Imaging apparatus offering dynamic range that is expandable by weighting two image signals produced during different exposure times with two coefficients whose sum is 1 and adding them up
US6195394B1 (en) * 1998-11-30 2001-02-27 North Shore Laboratories, Inc. Processing apparatus for use in reducing visible artifacts in the display of statistically compressed and then decompressed digital motion pictures
US6377713B1 (en) * 1999-01-27 2002-04-23 General Instrument Corporation Synchronous DRAM bandwidth optimization for display downsizing of an MPEG-2 image
US6330281B1 (en) * 1999-08-06 2001-12-11 Richfx Ltd. Model-based view extrapolation for interactive virtual reality systems
US20020047903A1 (en) * 2000-09-21 2002-04-25 Hisae Shibuya Method for evaluating color picture tubes and device for the same and method for making color picture tubes
US20030048671A1 (en) * 2000-10-30 2003-03-13 Kazushi Yoshikawa Contents reproducing method and device for reproducing contents on recording medium
US20040196902A1 (en) * 2001-08-30 2004-10-07 Faroudja Yves C. Multi-layer video compression system with synthetic high frequencies
US7301999B2 (en) * 2003-02-05 2007-11-27 Stmicroelectronics S.R.L. Quantization method and system for video MPEG applications and computer program product therefor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110141353A1 (en) * 2009-12-14 2011-06-16 National Taiwan University Method of realism assessment of an image composite
US8373721B2 (en) * 2009-12-14 2013-02-12 National Taiwan University Method of realism assessment of an image composite

Also Published As

Publication number Publication date
US7574059B2 (en) 2009-08-11
US20060093225A1 (en) 2006-05-04

Similar Documents

Publication Publication Date Title
US7528889B2 (en) System, method, and apparatus for displaying streams with dynamically changing formats
US6263396B1 (en) Programmable interrupt controller with interrupt set/reset register and dynamically alterable interrupt mask for a single interrupt processor
US9020047B2 (en) Image decoding device
JP2005510981A (en) Multi-channel video transcoding system and method
US8995536B2 (en) System and method for audio/video synchronization
CN106233730B (en) Method and system for generating encoded output video frames and data arrays
KR100334364B1 (en) On screen display processor
US20040257472A1 (en) System, method, and apparatus for simultaneously displaying multiple video streams
US20100007786A1 (en) System, method, and apparatus for providing massively scaled down video using iconification
US20100111166A1 (en) Device for decoding a video stream and method thereof
US6940909B2 (en) Video decoding during I-frame decode at resolution change
US7447366B2 (en) Apparatus and related method for image processing
US8085853B2 (en) Video decoding and transcoding method and system
US20190141352A1 (en) Tile-based 360 vr video encoding method and tile-based 360 vr video decoding method
US7920630B2 (en) Buffer descriptor data structure for communication link between decode and display processes in MPEG decoders
US8165196B2 (en) System, method, and apparatus for display manager
US7133046B2 (en) System, method, and apparatus for display manager
US20100021128A1 (en) Fast forward mechanism for digital video
US7103100B1 (en) Digital signal processing apparatus and method and providing medium
US7284072B2 (en) DMA engine for fetching words in reverse order
US20040258160A1 (en) System, method, and apparatus for decoupling video decoder and display engine
US20060239359A1 (en) System, method, and apparatus for pause and picture advance
US8179978B2 (en) MPEG field data-driven display
US7702021B2 (en) Decoding of digital video standard material during variable length decoding
US6414722B1 (en) Process and system for formulating digital images resulting from auxiliary graphical elements inlaid into main images

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH CAROLINA

Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:037806/0001

Effective date: 20160201

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH

Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:037806/0001

Effective date: 20160201

AS Assignment

Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD., SINGAPORE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:041706/0001

Effective date: 20170120

Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:041706/0001

Effective date: 20170120

AS Assignment

Owner name: BROADCOM CORPORATION, CALIFORNIA

Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:041712/0001

Effective date: 20170119