WO2005071660A1 - Decoder for information stream comprising object data and composition information - Google Patents

Decoder for information stream comprising object data and composition information Download PDF

Info

Publication number
WO2005071660A1
WO2005071660A1 PCT/IB2005/050105 IB2005050105W WO2005071660A1 WO 2005071660 A1 WO2005071660 A1 WO 2005071660A1 IB 2005050105 W IB2005050105 W IB 2005050105W WO 2005071660 A1 WO2005071660 A1 WO 2005071660A1
Authority
WO
WIPO (PCT)
Prior art keywords
pixel
region
information
page
buffer
Prior art date
Application number
PCT/IB2005/050105
Other languages
French (fr)
Inventor
Wilhelmus J. Van Gestel
Original Assignee
Koninklijke Philips Electronics N.V.
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 Koninklijke Philips Electronics N.V. filed Critical Koninklijke Philips Electronics N.V.
Publication of WO2005071660A1 publication Critical patent/WO2005071660A1/en

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/42Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of patterns using a display memory without fixed position correspondence between the display memory contents and the display position on the screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43074Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of additional data with content streams on the same device, e.g. of EPG data or interactive icon with a TV program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • H04N5/44504Circuit details of the additional information generator, e.g. details of the character or graphics signal generator, overlay mixing circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/641Multi-purpose receivers, e.g. for auxiliary information
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • G09G2340/125Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels wherein one of the images is motion video
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • G09G5/06Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using colour palettes, e.g. look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising

Definitions

  • the present invention relates in general to the field of displaying information on a display screen, such as a monitor, a television, etc. More particularly, the present invention relates to a decoder in a display 5 apparatus, having an input receiving coded information regarding video, subtitles and graphics, and being designed to decode and process this information. Still more particularly, the present invention relates to a method to reduce the size of buffers used in such display apparatus.
  • Optical discs and disc drives have been developed according to different 10 standards or formats, such as for instance CD standard, DVD standard, etc. A relatively new standard is BD (Blu-Ray Disc).
  • a movie (or other visual presentation) comprises a sequence of pictures, which are successively displayed. Typically, each picture corresponds to 40 ms of presentation time (or, stated differently, a movie contains typically 25 pictures 20 per second). This presentation time will also be indicated as "frame interval".
  • Display screens comprise an array of pixels, arranged in horizontal lines and vertical rows. In digital video, information to the display apparatus is provided in a coded manner, for instance from a disc drive reading a BD-ROM disc.
  • the display device receives the coded information; in a decoding process, pixel information regarding an entire picture is calculated, and stored in a 25 buffer memory.
  • the actual process of displaying the corresponding picture involves reading the buffer, calculating successive pixel drive signals, and successively presenting the pixel drive signals to the screen, where the pixels typically are written one by one along a horizontal line, and line by line from top to bottom. Since the art of coding and decoding pictures and displaying pictures on a screen is known per se, it is not necessary here to describe this in more detail. It is noted that an important format for coding pictures is the MPEG format.
  • the coded information may be received wirelessly, such as in the case of digital broadcast. Also, the coded information may be obtained by reading a storage medium such as an optical disc.
  • Apparatus are available for allowing a user to make his own recordings on writeable discs.
  • audio publishing companies or video publishing companies publish pre-recorded discs, which are read-only discs (ROM); play-back apparatus are available for allowing a user to play such discs.
  • ROM read-only discs
  • play-back apparatus are available for allowing a user to play such discs.
  • a disc drive component reads and decodes the data recorded on disc, and a video stream and/or audio stream is generated, suitable for display via a display device such as a television apparatus, a monitor, a loudspeaker, etc. Since the present invention does not relate to audio, this will be ignored in the following discussion.
  • a movie may contain several elements, indicated as follows: Moving pictures, i.e.
  • Subtitles are a graphic representation of text, graphically overlayed on the main presentation images like a picture-in-picture presentation. Subtitles are displayed with frame accuracy (i.e. with a timing related to the timing of the main presentation) and during a specific period of time. Subtitles are used, for example: - to present a translation of spoken text, to aid people who have difficulty in understanding the language of the spoken text; - to present a transcription of spoken text, to aid people with hearing difficulties; - to present a transcription of spoken text for karaoke purposes (sing along); - to present comments; etc.
  • Graphics pictures are also overlayed on the main presentation images like a picture-in-picture presentation.
  • Synchronised graphics are displayed with frame accuracy and during a specific period of time. Synchronised graphics may contain still graphics or animated graphics, or a combination of both. Still graphics involve one image which is presented during several main presentation frame intervals. Still graphics are used, for example: - to present interactive buttons, with an indication of button state (such as, for instance, "normal”, “selected”, “activated”, etc); Animated graphics involve a sequence of mutually different images, each image being presented in combination with one or more main presentation image image.
  • Animated graphics are used, for example: - to present directors comment; - to highlight a portion of the main presentation images (e.g. during directors comment).
  • Non-synchronised graphics are also displayed during a specific period of time, but accurate timing is not needed. The same examples apply as in the case of synchronised graphics.
  • Figure 1 shows three pictures (images) placed behind each other, as if they are lying as layers in a stack, i.e. different "parallel" planes. The lowest picture is a video picture V; its corresponding plane will be indicated as video plane.
  • the uppermost picture is a graphics picture G; its corresponding plane will be indicated as graphics plane.
  • the picture in between is a subtitle picture S; its corresponding plane will be indicated as subtitle plane.
  • the phrase "element images” will be used.
  • the video plane contains the "video-image”
  • the subtitle plane contains the "subtitle-image”
  • the graphics plane contains the "graphics-image”.
  • Each element image V, S, G has a size corresponding to the presentation size of the display.
  • the size of the display is 1920*1080 pixels.
  • values for the 3 colours (RGB or YUV) and a value for the transparency level are needed.
  • the transparency level indicates the mixing with the images of the lower planes.
  • the lowest plane does not need a transparency level. With one byte per variable, 4 bytes per pixel would be needed. This results in large memories. That is why the information in the planes is stored in an encoded way.
  • the amount of data for each pixel in the planes depends on the coding method. Video picture: 16 bits per pixel. [4:2:2 or 4:2:0] sampling standard used for MPEG encoding.
  • Subtitle picture 8 bits [colour look-up table with 256 entries and for each entry 4 bytes at the output (RGB + alpha]
  • Graphics picture 8 bits [colour look-up table with 256 entries and for each entry 4 bytes at the output (RGB + alpha] While reading out the planes, a conversion to 4 bytes per pixel is made (RGB
  • a final display- image P is constructed by adding the corresponding video, subtitle and graphics images on a pixel-by-pixel basis, taking into account the alpha- values, which indicate the transparency value. More particularly, for constructing RGB-values for a certain pixel in the final display-image P, the RGB-values of the corresponding video pixel are multiplied by a factor (1- ⁇ s) (block 1), the RGB-values of the corresponding subtitle pixel are multiplied by a factor as (block 2), and the results are added (block 3), multiplied by a factor (1- ⁇ g) (block 4), to which result is added (block 5) the RGB-values of the corresponding graphics pixel multiplied (block 6) by a factor ⁇ g.
  • An (MPEG) transport stream may contain multiple user-selectable, mutually different subtitle services, for instance for different languages, different aspect ratio's, etc. Likewise, a transport stream may contain multiple user-selectable, mutually different graphics services.
  • a subtitle service comprises a plurality of consecutive subtitle pages, each having a size corresponding to the size of the subtitle plane (i.e. 1920 pixels horizontally by 1080 pixels vertically in the case of HD). Each page is presented for a specific duration, which typically corresponds to multiple video frame intervals. This time period is indicated as a page instance; during a page instance, the content of the subtitle plane remains the same.
  • the transport stream contains the information of a subtitle page only once, combined with an indication of presentation start and end times.
  • the page composition which describes the layout of the page contains region information, defining one or more regions for the page, each region having a region-identifier number. For instance, a rectangular region may be indicated by specifying coordinates of two diagonal corners. During a page instance, only the pixels within such region contribute to the contents of the page layout. The effect is the same as when all other pixels are taken into account with transparency value 1 (fully transparent), but using regions saves calculation time. Each region is entirely within the page area. Two or more regions may overlap; in the area of overlap, the content of only one of the regions (top-region) is used for display.
  • a region may refer to an object, such as for instance a photo, a text document, etc. Different regions may refer to the same object, but each region refers to one object only. Each object has an object-identifier number. Each object has a size which may be smaller or larger than the page size, but which is sufficient to completely fill the regions which refer to the object.
  • Page Composition Segments are used to describe the page layout; Region Composition segments are used to describe the properties of the regions; Object Definition segments are used to describe the objects; and Colour Definition segments are used to describe the CLUT.
  • One or more CLUT tables may be used in one Page composition.
  • FIG. 2A shows a subtitle page 10, with two regions 11 and 12 partly overlapping, the first region 11 overlying the second region 12.
  • Figure 2A further shows two objects 13 and 14.
  • the size of first object 13 is smaller than the size of page 10; the second object 14 has a vertical size larger than page 10.
  • First region 11 refers to a portion 15 of first object 13; second region 12 refers to a portion 16 of second object 14.
  • Figure 2B illustrates the subtitle-image in the subtitle plane, i.e. the contents of the subtitle page.
  • a first portion 21 of this subtitle-image, defined by first region 11, contains portion 15 of first object 13.
  • a second portion 22 of this subtitle-image, defined by second region 12, contains portion 16 of second object 14.
  • the remaining part 23 of this subtitle- image is empty.
  • Objects are stored separately in a decoder. During reconstruction of a page, a decoder knows, for each pixel in the page, which pixel of which object needs to be read.
  • Figure 3 is a timing diagram, schematically illustrating the timing of transmitting, decoding and displaying objects.
  • the horizontal axis represents time; the time units indicate frame intervals.
  • the actions "transmission”, “decoding”, and “presentation” are indicated as horizontal bars, having a start time and an end time.
  • data segments Ta, Tb, Tc are transmitted relating to page composition (page composition segment), region composition (region composition segment), and colour look-up table (CLUT segment), respectively.
  • the page composition segment contains data with respect to, for instance, the presentation time stamp of the page (PTS), the number and locations of regions, and the overlay relations (hierarchy, or mutual priority).
  • the region composition segment contains data with respect to, for instance, the corresponding object (object ID), and relative location of region with respect to the corresponding object.
  • the CLUT segment contains a colour look-up table CLUT having a CLUT-ID.
  • the page composition and/or region composition may indicate which CLUT should be used for the corresponding page, region, object. From time t4 to time t5, a first object data segment Td is transmitted, containing the data of a first object, a decoding time stamp (DTS) determining the moment in time when decoding should start such that the object is decoded in time before presentation, and a presentation time stamp (PTS) determining the moment in time when presentation of the object should start.
  • DTS decoding time stamp
  • PTS presentation time stamp
  • the first object can be decoded (from time t6-t8, t6 being determined by the DTS). As soon as the first object has been decoded, the first object can be presented, starting from a time t9 determined by the PTS in the page composition segment.
  • a second object data segment Te containing the data of a second object as well as corresponding DTS and PTS, is transmitted and received from time t7 to time tlO. As soon as all object data have been received, the second object can be decoded (from time tl 1- tl2, tl 1 being determined by the DTS).
  • the second object can be presented, starting from a time tl3 determined by the presentation time stamp in the page composition segment of the new page instant.
  • the transition from presentation of first object to the presentation of second object may involve wipe and/or fade effects, so that the start time tl3 of the presentation of the second object is earlier than the end time tl4 of the presentation of the first object.
  • Said wipe and/or fade effects are performed on the basis of data segments Tf, Tg, Th transmitted at time tl5, these data relating to changes in page composition and region composition at times tl3, tl 6, tl4, respectively.
  • Figure 4 is a diagram illustrating the design and operation of a decoder 30 according to the prior art.
  • the data stream is received by a packet identification (PID) filter 31, after which the data is temporarily stored in a transport buffer 32 for averaging the bit rate.
  • the transport buffer may be relatively small; a size of 512 bytes suffices.
  • the coded data is stored in a coded data buffer 33; thus, the coded data buffer 33 contains the subtitling segments as indicated in figure 3.
  • the segments are removed from the coded data buffer 33.
  • the page composition segment, the region composition segment, and the colour look-up table are transferred to a composition buffer 35, and the object definition segments are transferred to a graphics processor 34.
  • the graphics processor 34 decodes the object segments, and the decoded object segments are stored in an object buffer 36.
  • the PTS time stamp of the page composition segment indicates when the corresponding page is to be presented.
  • a graphics controller 39 uses the information in the composition buffer 35, updates the regions in the subtitle plane 37 with the data from the object buffer 36. Then, the subtitle plane 37 is read-out, with the same addresses as the video plane and the graphics plane; using a colour look-up table in a colour look-up table memory 38, 8 bit data from the subtitle plane 37 is translated into 32 bit (four times 8 bit) RGB+a, which is provided as output signal.
  • a disadvantage of this known design is that, whenever any change takes place, for instance when a region is shifted with respect to the page or when the object is shifted with respect to the region, the entire subtitle plane 37 (comprising 1920*1080 pixels in the case of HD video) needs to be updated.
  • the updating process needs to be completed entirely before the subtitle plane 37 can be read out; on the other hand, the updating process can not begin while the subtitle plane 37 is being read out.
  • the updating process needs to be performed within a very short time interval corresponding to the vertical blanking period.
  • the bit rate between object buffer 36 and subtitle plane 37 is very high. If this bit rate becomes too high, double buffering in the subtitle plane 37 may even be necessary, requiring twice as much memory space.
  • the fact that decoded objects are stored in the object buffer 36 as well as in the subtitle plane 37 constitutes a disadvantage, because it requires relatively much memory space. It is an important objective of the present invention to overcome or at least reduce at least one of said disadvantages.
  • the step of filling a subtitle plane 37 is avoided.
  • An image controller directly uses the data in the object buffer, on the basis of the page composition data, the region composition data, and the object parameters.
  • Figure 1 is a block diagram schematically illustrating the build-up of a picture as a combination of several elements
  • Figures 2A and 2B are diagrams, schematically illustrating the construction of a picture using a page, region, and object
  • Figure 3 is a timing diagram, schematically illustrating the timing of transmitting, decoding and displaying objects
  • Figure 4 is a diagram illustrating the design and operation of a decoder according to the prior art
  • Figure 5 is a diagram illustrating the design and operation of a decoder according to the present invention
  • Figures 6A and 6B are diagrams illustrating addresses of pixels on a page in relation to addresses in objects
  • Figure 7 is a flow diagram, schematically showing the operations of an image controller when executing a method for generating image signals in accordance with the invention.
  • FIG. 5 is a diagram illustrating the design and operation of a decoder 50 according to the present invention.
  • the decoder 50 according to the present invention does not comprise any subtitle plane.
  • the components 31-36 may be identical to the same components as discussed above, and need not be explained again.
  • An image controller 51 stores, for every page, the page composition data, the region composition data and the object parameters. When calculating an output pixel, the image controller 51 takes the correct pixel(s) from the correct location(s) of the correct object(s), on the basis of the information known to the image controller 51, which information includes the corresponding transparency values.
  • Pixel addresses relating to a page will be defined in a rectangular coordinate system [x,y], the x-coordinate corresponding to horizontal position and the y-coordinate corresponding to vertical position.
  • the page has dimensions 1920x1080 pixels.
  • the upper left-hand comer has coordinates [0,0]
  • the upper right-hand comer has coordinates [1919,0]
  • the lower left-hand comer has coordinates [0,1079]
  • the lower right-hand corner has coordinates [1919,1079].
  • the page composition data for a certain page 60 defines two regions 61 and 62.
  • the first region 61 having a horizontal width wl and a vertical height hi, has its upper left-hand corner positioned at [xl,yl] in the page.
  • the second region 62 having a horizontal width w2 and a vertical height h2, has an upper left-hand corner positioned at [x2,y2] in the page.
  • the second region 62 overlaps the first region 61.
  • two objects 71 and 72 are stored in the object buffer 36.
  • the first object 71 has a horizontal width Wobjl and a vertical height Hobjl; the second object 72 has a horizontal width Wobj2 and a vertical height Hobj2.
  • the first region 61 refers to the first object 71, with Wobjl > wl and Hobjl > hi .
  • the second region 62 refers to the second object 72, with Wobj2 > w2 and Hobj2 > h2.
  • FIG. 7 is a flow diagram, schematically showing the operations of the image controller 51 when executing a method 100 for generating image signals. Display starts with selecting the pixel in the upper left-hand comer [step 101].
  • consulting the object buffer 36 and translating a pixel value into RGB-signals using a colour look-up table from the colour look-up table memory 38 can be omitted in this case.
  • step 1 11 If, in step 1 11, it is found that the pixel is located within the second region 62, the corresponding pixel address within the object referred to by the second region 62, i.e. the second object 72, is calculated [step 112], the content of this address is read [step 113] from the object buffer 36, and translated [step 114] into RGB-signals using the colour look-up table from the colour look-up table memory 38 having the CLUT-ID indicated by the page composition data and/or the region composition data. Further, the transparency level ⁇ is set [step 1 15] to the transparency level defined for the second region 62.
  • step 121 If, in step 121, it is found that the pixel is located within the first region 61, the corresponding pixel address within the object referred to by the first region 61, i.e. the first object 71, is calculated [step 122], the content of this address is read [step 123] from the object buffer 36, and translated [step 124] into RGB-signals using the colour look-up table from the colour look-up table memory 38 having the CLUT-ID indicated by the page composition data and/or the region composition data. Further, the transparency level ⁇ is set [step 125] to the transparency level defined for the first region 61. In step 140, the pixel signals RGB and ⁇ are outputted, which involves combination with pixels from the graphics plane and the video plane, but this is not illustrated.
  • the present invention has been explained for a case where an image contains three planes overlying each other, but the present invention is also applicable to cases where an image contains more than three planes overlying each other, and the present invention is even applicable to cases where an image contains only one or two planes.
  • the present invention has been explained with reference to block diagrams, which illustrate functional blocks of the device according to the present invention.
  • one or more of these functional blocks may be implemented in hardware, where the function of such functional block is performed by individual hardware components, but it is also possible that one or more of these functional blocks are implemented in software, so that the function of such functional block is performed by one or more program lines of a computer program or a programmable device such as a microprocessor, microcontroller, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

A decoder (50) is described for receiving and decoding an information stream which contains page composition information, region composition information, object data, and possibly colour look-up table indication information, and for generating image signals on the basis of said information, which information defines at least one page (60) in at least one plane of the contents of a display image. The decoder comprises: a colour look-up table memory (38) containing at least one colour look-up table (CLUT) having a colour look-up table ID; an object buffer (36) for storing decoded object data; a composition buffer (35) for storing page composition information, region composition information, and colour look-up table indication information; and an image controller (51) adapted to generate image signals (RGB+a) directly on the basis of the object data in the object buffer (36) and at least one colour look-up table (CLUT) in the colour look-up table memory (38), using the information in the composition buffer (35).

Description

DECODER FOR INFORMATION STREAM COMPRISING OBJECT DATA AND COMPOSITION INFORMATIO N
FIELD OF THE INVENTION The present invention relates in general to the field of displaying information on a display screen, such as a monitor, a television, etc. More particularly, the present invention relates to a decoder in a display 5 apparatus, having an input receiving coded information regarding video, subtitles and graphics, and being designed to decode and process this information. Still more particularly, the present invention relates to a method to reduce the size of buffers used in such display apparatus. Optical discs and disc drives have been developed according to different 10 standards or formats, such as for instance CD standard, DVD standard, etc. A relatively new standard is BD (Blu-Ray Disc). Specifically, the present invention relates to the field of reading BD-ROM, and the invention will be explained hereinafter specifically for this exemplary application, but it is to be noted that it is not intended to restrict the scope of the invention to BD-ROM. 15 BACKGROUND OF THE INVENTION As is commonly known, a movie (or other visual presentation) comprises a sequence of pictures, which are successively displayed. Typically, each picture corresponds to 40 ms of presentation time (or, stated differently, a movie contains typically 25 pictures 20 per second). This presentation time will also be indicated as "frame interval". Display screens comprise an array of pixels, arranged in horizontal lines and vertical rows. In digital video, information to the display apparatus is provided in a coded manner, for instance from a disc drive reading a BD-ROM disc. The display device receives the coded information; in a decoding process, pixel information regarding an entire picture is calculated, and stored in a 25 buffer memory. The actual process of displaying the corresponding picture involves reading the buffer, calculating successive pixel drive signals, and successively presenting the pixel drive signals to the screen, where the pixels typically are written one by one along a horizontal line, and line by line from top to bottom. Since the art of coding and decoding pictures and displaying pictures on a screen is known per se, it is not necessary here to describe this in more detail. It is noted that an important format for coding pictures is the MPEG format. The coded information may be received wirelessly, such as in the case of digital broadcast. Also, the coded information may be obtained by reading a storage medium such as an optical disc. Apparatus are available for allowing a user to make his own recordings on writeable discs. Also, audio publishing companies or video publishing companies publish pre-recorded discs, which are read-only discs (ROM); play-back apparatus are available for allowing a user to play such discs. In such play-back apparatus, indicated hereinafter simply as player, a disc drive component reads and decodes the data recorded on disc, and a video stream and/or audio stream is generated, suitable for display via a display device such as a television apparatus, a monitor, a loudspeaker, etc. Since the present invention does not relate to audio, this will be ignored in the following discussion. A movie may contain several elements, indicated as follows: Moving pictures, i.e. the actual pictures of the movie, to be displayed on the TV screen. In the following, this will also be indicated as video pictures or main presentation images. Subtitles. Subtitles are a graphic representation of text, graphically overlayed on the main presentation images like a picture-in-picture presentation. Subtitles are displayed with frame accuracy (i.e. with a timing related to the timing of the main presentation) and during a specific period of time. Subtitles are used, for example: - to present a translation of spoken text, to aid people who have difficulty in understanding the language of the spoken text; - to present a transcription of spoken text, to aid people with hearing difficulties; - to present a transcription of spoken text for karaoke purposes (sing along); - to present comments; etc.
Graphics pictures. Graphics pictures are also overlayed on the main presentation images like a picture-in-picture presentation. A distinction is made between synchronised graphics and non-synchronised graphics. Synchronised graphics are displayed with frame accuracy and during a specific period of time. Synchronised graphics may contain still graphics or animated graphics, or a combination of both. Still graphics involve one image which is presented during several main presentation frame intervals. Still graphics are used, for example: - to present interactive buttons, with an indication of button state (such as, for instance, "normal", "selected", "activated", etc); Animated graphics involve a sequence of mutually different images, each image being presented in combination with one or more main presentation image image. Animated graphics are used, for example: - to present directors comment; - to highlight a portion of the main presentation images (e.g. during directors comment). Non-synchronised graphics are also displayed during a specific period of time, but accurate timing is not needed. The same examples apply as in the case of synchronised graphics. The build-up of a picture as a combination of several elements will be explained in some more detail with reference to figure 1. For this explanation, the concept "planes" is introduced. Figure 1 shows three pictures (images) placed behind each other, as if they are lying as layers in a stack, i.e. different "parallel" planes. The lowest picture is a video picture V; its corresponding plane will be indicated as video plane. The uppermost picture is a graphics picture G; its corresponding plane will be indicated as graphics plane. The picture in between is a subtitle picture S; its corresponding plane will be indicated as subtitle plane. To refer to these pictures in common, which are the constituting elements of the final picture P (the "display image"), the phrase "element images" will be used. By definition, the video plane contains the "video-image", the subtitle plane contains the "subtitle-image", and the graphics plane contains the "graphics-image". Each element image V, S, G has a size corresponding to the presentation size of the display. By way of example, the case of HDTV, the size of the display is 1920*1080 pixels. For each pixel, values for the 3 colours (RGB or YUV) and a value for the transparency level are needed. The transparency level indicates the mixing with the images of the lower planes. The lowest plane does not need a transparency level. With one byte per variable, 4 bytes per pixel would be needed. This results in large memories. That is why the information in the planes is stored in an encoded way. The amount of data for each pixel in the planes depends on the coding method. Video picture: 16 bits per pixel. [4:2:2 or 4:2:0] sampling standard used for MPEG encoding. Subtitle picture: 8 bits [colour look-up table with 256 entries and for each entry 4 bytes at the output (RGB + alpha] Graphics picture: 8 bits [colour look-up table with 256 entries and for each entry 4 bytes at the output (RGB + alpha] While reading out the planes, a conversion to 4 bytes per pixel is made (RGB
+ alpha). A final display- image P is constructed by adding the corresponding video, subtitle and graphics images on a pixel-by-pixel basis, taking into account the alpha- values, which indicate the transparency value. More particularly, for constructing RGB-values for a certain pixel in the final display-image P, the RGB-values of the corresponding video pixel are multiplied by a factor (1-αs) (block 1), the RGB-values of the corresponding subtitle pixel are multiplied by a factor as (block 2), and the results are added (block 3), multiplied by a factor (1-αg) (block 4), to which result is added (block 5) the RGB-values of the corresponding graphics pixel multiplied (block 6) by a factor αg. Herein, as defines a transparency value for the subtitle pixel, and αg defines a transparency value for the graphics pixel. If, for instance, a certain graphics pixel has transparency value αg=l, the graphics pixel is fully transparent (i.e. it is not visible) and the pixels from the lower planes are fully visible, whereas, if αg=0, the graphics pixel is fully non-transparent, and the pixels from the lower planes are not visible. An (MPEG) transport stream may contain multiple user-selectable, mutually different subtitle services, for instance for different languages, different aspect ratio's, etc. Likewise, a transport stream may contain multiple user-selectable, mutually different graphics services. During playback, only one of the subtitle services is decoded and presented, as selected by the user. Likewise, only one of the graphics services is decoded and presented, as selected by the user. Since the decoder models for the subtitle plane and the graphics plane are the same, the following explanation will only mention specifically the subtitle plane. A subtitle service comprises a plurality of consecutive subtitle pages, each having a size corresponding to the size of the subtitle plane (i.e. 1920 pixels horizontally by 1080 pixels vertically in the case of HD). Each page is presented for a specific duration, which typically corresponds to multiple video frame intervals. This time period is indicated as a page instance; during a page instance, the content of the subtitle plane remains the same. The transport stream contains the information of a subtitle page only once, combined with an indication of presentation start and end times. The page composition which describes the layout of the page contains region information, defining one or more regions for the page, each region having a region-identifier number. For instance, a rectangular region may be indicated by specifying coordinates of two diagonal corners. During a page instance, only the pixels within such region contribute to the contents of the page layout. The effect is the same as when all other pixels are taken into account with transparency value 1 (fully transparent), but using regions saves calculation time. Each region is entirely within the page area. Two or more regions may overlap; in the area of overlap, the content of only one of the regions (top-region) is used for display. A region may refer to an object, such as for instance a photo, a text document, etc. Different regions may refer to the same object, but each region refers to one object only. Each object has an object-identifier number. Each object has a size which may be smaller or larger than the page size, but which is sufficient to completely fill the regions which refer to the object. The transmission of the Subtitle and Graphics information in the MPEG Transport Stream is realized in the following way. Page Composition Segments (PCS) are used to describe the page layout; Region Composition segments are used to describe the properties of the regions; Object Definition segments are used to describe the objects; and Colour Definition segments are used to describe the CLUT. One or more CLUT tables may be used in one Page composition. Each segment is packed in a PES packet, the PES packet contains a PTS/DTS time stamp. The PES packets are packet in an Elementary Transport stream with TS packets and a PID number. The above is schematically illustrated in figures 2A and 2B. Figure 2A shows a subtitle page 10, with two regions 11 and 12 partly overlapping, the first region 11 overlying the second region 12. Figure 2A further shows two objects 13 and 14. The size of first object 13 is smaller than the size of page 10; the second object 14 has a vertical size larger than page 10. First region 11 refers to a portion 15 of first object 13; second region 12 refers to a portion 16 of second object 14. Figure 2B illustrates the subtitle-image in the subtitle plane, i.e. the contents of the subtitle page. A first portion 21 of this subtitle-image, defined by first region 11, contains portion 15 of first object 13. A second portion 22 of this subtitle-image, defined by second region 12, contains portion 16 of second object 14. The remaining part 23 of this subtitle- image is empty. Objects are stored separately in a decoder. During reconstruction of a page, a decoder knows, for each pixel in the page, which pixel of which object needs to be read. For instance, when reconstructing a first pixel A within the first region 11, the decoder will use the corresponding pixel A' from the first object 13; when reconstructing a second pixel B within the second region 12, the decoder will use the corresponding pixel B' from the second object 14; when reconstructing a third pixel C in area 23, which is not within any region, the decoder will set R=G=B=0 (black). This has the advantage that objects need to be transmitted and decoded only once. Some kind of animation can easily be realized by changing the relative position of a region with respect to the page (e.g. the position of rectangle 11 with respect to page 10), or by changing the relative position of a region with respect to the corresponding object (e.g. the position of rectangle 15 with respect to object 13). Figure 3 is a timing diagram, schematically illustrating the timing of transmitting, decoding and displaying objects. The horizontal axis represents time; the time units indicate frame intervals. The actions "transmission", "decoding", and "presentation" are indicated as horizontal bars, having a start time and an end time. At times tl, t2 and t3, data segments Ta, Tb, Tc are transmitted relating to page composition (page composition segment), region composition (region composition segment), and colour look-up table (CLUT segment), respectively. The page composition segment contains data with respect to, for instance, the presentation time stamp of the page (PTS), the number and locations of regions, and the overlay relations (hierarchy, or mutual priority). The region composition segment contains data with respect to, for instance, the corresponding object (object ID), and relative location of region with respect to the corresponding object. The CLUT segment contains a colour look-up table CLUT having a CLUT-ID. The page composition and/or region composition may indicate which CLUT should be used for the corresponding page, region, object. From time t4 to time t5, a first object data segment Td is transmitted, containing the data of a first object, a decoding time stamp (DTS) determining the moment in time when decoding should start such that the object is decoded in time before presentation, and a presentation time stamp (PTS) determining the moment in time when presentation of the object should start. As soon as all object data have been received, the first object can be decoded (from time t6-t8, t6 being determined by the DTS). As soon as the first object has been decoded, the first object can be presented, starting from a time t9 determined by the PTS in the page composition segment. A second object data segment Te, containing the data of a second object as well as corresponding DTS and PTS, is transmitted and received from time t7 to time tlO. As soon as all object data have been received, the second object can be decoded (from time tl 1- tl2, tl 1 being determined by the DTS). As soon as the second object has been decoded, the second object can be presented, starting from a time tl3 determined by the presentation time stamp in the page composition segment of the new page instant. The transition from presentation of first object to the presentation of second object may involve wipe and/or fade effects, so that the start time tl3 of the presentation of the second object is earlier than the end time tl4 of the presentation of the first object. Said wipe and/or fade effects are performed on the basis of data segments Tf, Tg, Th transmitted at time tl5, these data relating to changes in page composition and region composition at times tl3, tl 6, tl4, respectively. Figure 4 is a diagram illustrating the design and operation of a decoder 30 according to the prior art. The data stream is received by a packet identification (PID) filter 31, after which the data is temporarily stored in a transport buffer 32 for averaging the bit rate. The transport buffer may be relatively small; a size of 512 bytes suffices. Then, the coded data is stored in a coded data buffer 33; thus, the coded data buffer 33 contains the subtitling segments as indicated in figure 3. At a moment in time determined by their DTS, the segments are removed from the coded data buffer 33. The page composition segment, the region composition segment, and the colour look-up table are transferred to a composition buffer 35, and the object definition segments are transferred to a graphics processor 34. The graphics processor 34 decodes the object segments, and the decoded object segments are stored in an object buffer 36. The PTS time stamp of the page composition segment indicates when the corresponding page is to be presented. A graphics controller 39, using the information in the composition buffer 35, updates the regions in the subtitle plane 37 with the data from the object buffer 36. Then, the subtitle plane 37 is read-out, with the same addresses as the video plane and the graphics plane; using a colour look-up table in a colour look-up table memory 38, 8 bit data from the subtitle plane 37 is translated into 32 bit (four times 8 bit) RGB+a, which is provided as output signal. A disadvantage of this known design is that, whenever any change takes place, for instance when a region is shifted with respect to the page or when the object is shifted with respect to the region, the entire subtitle plane 37 (comprising 1920*1080 pixels in the case of HD video) needs to be updated. The updating process needs to be completed entirely before the subtitle plane 37 can be read out; on the other hand, the updating process can not begin while the subtitle plane 37 is being read out. This means that the updating process needs to be performed within a very short time interval corresponding to the vertical blanking period. As a consequence, the bit rate between object buffer 36 and subtitle plane 37 is very high. If this bit rate becomes too high, double buffering in the subtitle plane 37 may even be necessary, requiring twice as much memory space. Further, the fact that decoded objects are stored in the object buffer 36 as well as in the subtitle plane 37 constitutes a disadvantage, because it requires relatively much memory space. It is an important objective of the present invention to overcome or at least reduce at least one of said disadvantages.
SUMMARY OF THE INVENTION According to an important aspect of the present invention, the step of filling a subtitle plane 37 is avoided. An image controller directly uses the data in the object buffer, on the basis of the page composition data, the region composition data, and the object parameters. Thus, the subtitle plane can be omitted, saving memory space. If a pixel is outside a region, the corresponding pixel in the object buffer does not need to be addressed, and its transparency level can be set to α=l, so that its value does not matter. Particularly, it is not necessary to refresh any memory location which is outside a region, it suffices to set the corresponding transparency value α to 1 (fully transparent) when providing the corresponding pixel output signal.
BRIEF DESCRIPTION OF THE DRAWINGS These and other aspects, features and advantages of the present invention will be further explained by the following description with reference to the drawings, in which same reference numerals indicate same or similar parts, and in which: Figure 1 is a block diagram schematically illustrating the build-up of a picture as a combination of several elements; Figures 2A and 2B are diagrams, schematically illustrating the construction of a picture using a page, region, and object; Figure 3 is a timing diagram, schematically illustrating the timing of transmitting, decoding and displaying objects; Figure 4 is a diagram illustrating the design and operation of a decoder according to the prior art; Figure 5 is a diagram illustrating the design and operation of a decoder according to the present invention; Figures 6A and 6B are diagrams illustrating addresses of pixels on a page in relation to addresses in objects; Figure 7 is a flow diagram, schematically showing the operations of an image controller when executing a method for generating image signals in accordance with the invention.
DESCRIPTION OF THE INVENTION Figure 5 is a diagram illustrating the design and operation of a decoder 50 according to the present invention. When comparing the decoder 50 of figure 5 with the known decoder 30 of figure 4, it can be seen that the decoder 50 according to the present invention does not comprise any subtitle plane. The components 31-36 may be identical to the same components as discussed above, and need not be explained again. An image controller 51 stores, for every page, the page composition data, the region composition data and the object parameters. When calculating an output pixel, the image controller 51 takes the correct pixel(s) from the correct location(s) of the correct object(s), on the basis of the information known to the image controller 51, which information includes the corresponding transparency values. Pixels which are outside the regions are made completely transparent (α=l). Thus, the need to provide an image memory and the need to refresh this image memory at a very large bit rate are avoided. The operation of the decoder according to the present invention is explained in more detail with reference to figures 6A and 6B. Pixel addresses relating to a page will be defined in a rectangular coordinate system [x,y], the x-coordinate corresponding to horizontal position and the y-coordinate corresponding to vertical position. The page has dimensions 1920x1080 pixels. The upper left-hand comer has coordinates [0,0], the upper right-hand comer has coordinates [1919,0]; the lower left-hand comer has coordinates [0,1079], the lower right-hand corner has coordinates [1919,1079]. Assume that the page composition data for a certain page 60 defines two regions 61 and 62. The first region 61, having a horizontal width wl and a vertical height hi, has its upper left-hand corner positioned at [xl,yl] in the page. The second region 62, having a horizontal width w2 and a vertical height h2, has an upper left-hand corner positioned at [x2,y2] in the page. The second region 62 overlaps the first region 61. Assume that two objects 71 and 72 are stored in the object buffer 36. The first object 71 has a horizontal width Wobjl and a vertical height Hobjl; the second object 72 has a horizontal width Wobj2 and a vertical height Hobj2. The first region 61 refers to the first object 71, with Wobjl > wl and Hobjl > hi . The second region 62 refers to the second object 72, with Wobj2 > w2 and Hobj2 > h2. Pixel addresses relating to the objects will be defined in a rectangular coordinate system [p,q], the p-coordinate corresponding to horizontal position and the q-coordinate corresponding to vertical position, the address [p=0,q=0] corresponding to the upper left- hand comer of an object. Assume that the upper left-hand comer of the first region 61 points to address [pl,ql] (i.e. of the first object 71), and that the upper left-hand comer of the second region 62 points to address [p2,q2] (i.e. of the first object 72). Since the objects 71, 72 should completely cover the regions 61, 62 referring thereto, the following restrictions apply: Wobjl > pi + wl Hobjl > ql + hl Wobj2 > p2 + w2 Hobj2 > q2 + h2 Figure 7 is a flow diagram, schematically showing the operations of the image controller 51 when executing a method 100 for generating image signals. Display starts with selecting the pixel in the upper left-hand comer [step 101]. For this pixel, it is first determined [step 111] whether this pixel is located within the "upper" region, i.e. second region 62; if not, it is determined [step 121] whether this pixel is located within the "lower" region, i.e. first region 61. If the pixel is also not located in the first region 61, RGB-signals are generated [step 131] at an arbitrary value, for instance R=G=B=0, and the transparency level α is set [step 132] at the value α=l, indicating full transparency of this pixel. Thus, consulting the object buffer 36 and translating a pixel value into RGB-signals using a colour look-up table from the colour look-up table memory 38 can be omitted in this case. If, in step 1 11, it is found that the pixel is located within the second region 62, the corresponding pixel address within the object referred to by the second region 62, i.e. the second object 72, is calculated [step 112], the content of this address is read [step 113] from the object buffer 36, and translated [step 114] into RGB-signals using the colour look-up table from the colour look-up table memory 38 having the CLUT-ID indicated by the page composition data and/or the region composition data. Further, the transparency level α is set [step 1 15] to the transparency level defined for the second region 62. If, in step 121, it is found that the pixel is located within the first region 61, the corresponding pixel address within the object referred to by the first region 61, i.e. the first object 71, is calculated [step 122], the content of this address is read [step 123] from the object buffer 36, and translated [step 124] into RGB-signals using the colour look-up table from the colour look-up table memory 38 having the CLUT-ID indicated by the page composition data and/or the region composition data. Further, the transparency level α is set [step 125] to the transparency level defined for the first region 61. In step 140, the pixel signals RGB and α are outputted, which involves combination with pixels from the graphics plane and the video plane, but this is not illustrated. The above procedure is repeated for all pixels along one horizontal line: the x- coordinate of the pixel is increased by one [step 151], until the end of the line is reached [step 152]. The above procedure is repeated for all lines of the image: the y-coordinate of the line is increased by one [step 161], until the end of the page is reached [step 162]. At the end of the page, the above procedure starts again from the beginning for generating the next image frame. It is noted that, if any of the page composition data, the region composition data, or the object parameters is changed, the above description of the operation of the image controller 51 still applies. Suppose that second region 62 is shifted one pixel to the left. In a decoder according to the prior art, it would now be necessary to completely refresh the entire subtitle plane 37, within the transition period from displaying pixel [1919,1079] to displaying pixel [0,0]. In the decoder according to the present invention, for the pixels which are outside the second region 62, both in its old location and in its new location, the above-described procedure is followed with exactly the same outcome. The same applies for pixels which are inside the second region 62, both in its old location and in its new location. For pixels which are now inside the second region 62 while they were previously outside the second region 62, or which are now outside the second region 62 while they were previously inside the second region 62, the above-described procedure is followed with a different outcome, namely pixel data is read from a different location within the object buffer 36 and/or a different value for the transparency level is set. It should be clear to a person skilled in the art that the present invention is not limited to the exemplary embodiments discussed above, but that several variations and modifications are possible within the protective scope of the invention as defined in the appending claims. For instance, the composition buffer 35 and the image controller 51 may be integrated as one whole. Further, in the above, the present invention has been explained for a case where an image contains three planes overlying each other, but the present invention is also applicable to cases where an image contains more than three planes overlying each other, and the present invention is even applicable to cases where an image contains only one or two planes. In the above, the present invention has been explained with reference to block diagrams, which illustrate functional blocks of the device according to the present invention. It is to be understood that one or more of these functional blocks may be implemented in hardware, where the function of such functional block is performed by individual hardware components, but it is also possible that one or more of these functional blocks are implemented in software, so that the function of such functional block is performed by one or more program lines of a computer program or a programmable device such as a microprocessor, microcontroller, etc.

Claims

CLAIMS:
1. Decoder (50) for receiving and decoding an information stream which contains page composition information, region composition information, object data, and possibly colour look-up table indication information, and for generating image signals on the basis of said information, which information defines at least one page (60) in at least one plane of the contents of a display image; the decoder comprising: - a colour look-up table memory (38) containing at least one colour look-up table (CLUT) having a colour look-up table ID; - an object buffer (36) for storing decoded object data; - a composition buffer (35) for storing page composition information, region composition information, and colour look-up table indication information; - and an image controller (51) adapted to generate image signals (RGB+α) directly on the basis of the object data in the object buffer (36) and at least one colour look-up table (CLUT) in the colour look-up table memory (38), using the information in the composition buffer (35).
2. Decoder according to claim 1, wherein the image controller (51), when generating image signals (RGB+α) for a certain pixel (x,y) in a certain plane of the display image, is adapted: (a) to determine (steps 111, 121) whether the pixel (x,y) is located in a visible part of a region (61; 62); (b) and, in case the pixel (x,y) is not located in a visible part of any region (61; 62), to generate output pixel signals (RGB+α) for this pixel having α=l (fully transparent) (step 132).
3. Decoder according to claim 2, wherein the image controller (51), in case the pixel (x,y) is not located in a visible part of any region (61; 62), is adapted to generate output pixel signals (RGB+α) for this pixel having R=G=B equal to an arbitrary constant in the range from 0 to 1, preferably equal to zero (step 131). 2
4. Decoder according to claim 1, wherein the image controller (51), when generating image signals (RGB+α) for a certain pixel (x,y) in a certain plane of the display image, is adapted: (a) to determine (step 111) whether the pixel (x,y) is located in a visible part of a region (62); (c) and, in case the pixel (x,y) is located in a visible part of a region (62), (d) to read object data from the object buffer (36); (e) and to generate output pixel signals (RGB+α) for this pixel on the basis of the object data read from the object buffer (36).
5. Decoder according to claim 4, wherein the image controller (51) is adapted to read object data from the object buffer (36) at a corresponding address of the object (72) referred to by the region (62) within which the pixel (x,y) is located, taking into account the relative position (x2,y2) of the region (62) with respect to the page (60) and the relative position (p2,q2) of the region (62) with respect to the object (72).
6. Decoder according to claim 5, wherein the image controller (51) is adapted to read object data from the object buffer (36) at address (p=p2+(x-x2), q=q2+(y-y2)) of the said object (72).
PCT/IB2005/050105 2004-01-19 2005-01-10 Decoder for information stream comprising object data and composition information WO2005071660A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04100142 2004-01-19
EP04100142.1 2004-01-19

Publications (1)

Publication Number Publication Date
WO2005071660A1 true WO2005071660A1 (en) 2005-08-04

Family

ID=34802650

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2005/050105 WO2005071660A1 (en) 2004-01-19 2005-01-10 Decoder for information stream comprising object data and composition information

Country Status (2)

Country Link
TW (1) TW200535686A (en)
WO (1) WO2005071660A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007058486A1 (en) * 2005-11-17 2007-05-24 Lg Electronics Inc. Apparatus for reproducing data and method thereof
CN113010698A (en) * 2020-11-18 2021-06-22 北京字跳网络技术有限公司 Multimedia interaction method, information interaction method, device, equipment and medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5745095A (en) * 1995-12-13 1998-04-28 Microsoft Corporation Compositing digital information on a display screen based on screen descriptor
WO2000001154A1 (en) * 1998-06-26 2000-01-06 General Instrument Corporation Terminal for composing and presenting mpeg-4 video programs
EP1170942A1 (en) * 2000-01-24 2002-01-09 Matsushita Electric Industrial Co., Ltd. Image synthesizing device, recorded medium, and program
US20020149626A1 (en) * 1999-03-31 2002-10-17 Taner Ozcelik Display unit architecture
US20030189571A1 (en) * 1999-11-09 2003-10-09 Macinnis Alexander G. Video and graphics system with parallel processing of graphics windows

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5745095A (en) * 1995-12-13 1998-04-28 Microsoft Corporation Compositing digital information on a display screen based on screen descriptor
WO2000001154A1 (en) * 1998-06-26 2000-01-06 General Instrument Corporation Terminal for composing and presenting mpeg-4 video programs
US20020149626A1 (en) * 1999-03-31 2002-10-17 Taner Ozcelik Display unit architecture
US20030189571A1 (en) * 1999-11-09 2003-10-09 Macinnis Alexander G. Video and graphics system with parallel processing of graphics windows
EP1170942A1 (en) * 2000-01-24 2002-01-09 Matsushita Electric Industrial Co., Ltd. Image synthesizing device, recorded medium, and program

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BEREKOVIC M ET AL: "A flexible processor architecture for MPEG-4 image compositing", ACOUSTICS, SPEECH AND SIGNAL PROCESSING, 1998. PROCEEDINGS OF THE 1998 IEEE INTERNATIONAL CONFERENCE ON SEATTLE, WA, USA 12-15 MAY 1998, NEW YORK, NY, USA,IEEE, US, vol. 5, 12 May 1998 (1998-05-12), pages 3153 - 3156, XP010279508, ISBN: 0-7803-4428-6 *
GOBERT J: "Portable multimedia terminals: Architectural Issues of MPEG-4 visual implementation", MICROELECTRONIC ENGINEERING, ELSEVIER PUBLISHERS BV., AMSTERDAM, NL, vol. 54, no. 1-2, December 2000 (2000-12-01), pages 199 - 207, XP004360504, ISSN: 0167-9317 *
HEER C ET AL: "Design and architecture of the MPEG-4 video rendering co-processor 'TANGRAM'", ELECTRONICS, CIRCUITS AND SYSTEMS, 1999. PROCEEDINGS OF ICECS '99. THE 6TH IEEE INTERNATIONAL CONFERENCE ON PAFOS, CYPRUS 5-8 SEPT. 1999, PISCATAWAY, NJ, USA,IEEE, US, vol. 3, 5 September 1999 (1999-09-05), pages 1205 - 1210, XP010361757, ISBN: 0-7803-5682-9 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007058486A1 (en) * 2005-11-17 2007-05-24 Lg Electronics Inc. Apparatus for reproducing data and method thereof
CN113010698A (en) * 2020-11-18 2021-06-22 北京字跳网络技术有限公司 Multimedia interaction method, information interaction method, device, equipment and medium
CN113010698B (en) * 2020-11-18 2023-03-10 北京字跳网络技术有限公司 Multimedia interaction method, information interaction method, device, equipment and medium

Also Published As

Publication number Publication date
TW200535686A (en) 2005-11-01

Similar Documents

Publication Publication Date Title
US8350870B2 (en) Recording medium, reproduction apparatus, recording method, reproducing method, program, and integrated circuit
CA2772021C (en) Storage medium having interactive graphic stream and apparatus for reproducing the same
US6297797B1 (en) Computer system and closed caption display method
US7620297B2 (en) Recording medium, recording method, reproduction apparatus and method, and computer-readable program
US8204357B2 (en) Reproducing device, reproducing method, reproducing program and recording medium
US20060204092A1 (en) Reproduction device and program
US20100118119A1 (en) Creating three dimensional graphics data
WO2004082274A1 (en) Data processing device
US20090115798A1 (en) Image processing apparatus, image processing method, and image processing program
KR20080019719A (en) A method and apparatus for displaying data content
KR100882075B1 (en) Reproduction apparatus for parallel processing of display set, recording medium, recording method, reproduction method, and computer-readable recording medium
US20050008347A1 (en) Method of processing subtitle stream, reproducing apparatus and information storage medium thereof
WO2005071660A1 (en) Decoder for information stream comprising object data and composition information
JP4534975B2 (en) REPRODUCTION DEVICE, REPRODUCTION METHOD, RECORDING METHOD, VIDEO DISPLAY DEVICE, AND RECORDING MEDIUM
WO2006018786A1 (en) Method of storing and transferring image signals
KR100239482B1 (en) Graphic data resizing device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase