Abstract:
For structuring a bitstream for binary multimedia descriptions, binary identifiers (BIDs) are positioned on at least one regular positioning grid. Parsing is performed by checking these binary identifiers (BIDs) on the positions defined by the positioning grid.

Description:
STATE OF THE ART  
         [0001]    Present solutions use a textural representation of the description structures for the description of audio-visual data content in multimedia environments [MPEG-7 overview (version 3.0), ISO/IEC ITC1/SC29/WG11 N3445 Geneva, May/June 2000, pages 1 to 53]. For this task a so-called description definition language (DLL) is used, which is derived from the Extensible Markup Language (XML). An MPEG-7 description consists of descriptors (D) or description schemes (DS), where the number of description elements can be variable. In the MPEG input document M6061 (from the Geneva meeting), a binary format for the MPEG-7 data has been proposed, which allows a more compact encoding of description structures and thus savings in storage capacity and/or transmission bandwidth.  
         ADVANTAGES OF THE INVENTION  
         [0002]    With the steps of claim 1 a special structure for the binary, bitstream for binary multimedia descriptions is described, that allows fast parsing of the bitstream with a very low complexity of a binary parser. In State of the Art solutions there is not specified at which positions in a bitstream binary identifiers (BIDs) representing opening and closing tags of a multimedia description are placed. Therefore, a binary parser has to check each possible position of a bitstream sequentially, until he finds a respective BID. By means of the present invention a structure for the bitstream is specified which allows to define a grid of positions in the bitstreams where BIDs may be placed. On all other positions, a BID may not start. Depending on the bit-stream, this structure allows to speed up the parsing process, since the number of positions to check for a parser is reduced significantly. The parser knows already where to look for respective tags. For parsing he has to check the binary identifiers (BIDs) on the positions defined by the positioning grid only. By this, also the computational complexity required for the binary parser is reduced.  
           [0003]    A further object of the invention is to allow a binary parser to skip over a complete sub-description without having to parse the complete corresponding part of the bitstream. This objective is according to the steps of claim 10 achieved by assigning a same unique number to each opening binary identifier and closing binary identifier of the same type.  
           [0004]    For some applications consuming binary descriptions of multimedia data a complete sub-description of the overall description can be skipped, if the application is not interested in that specific part of the information. According to State of the Art solutions to skip a sub-description it is necessary to parse the complete description anyway, what is time and computation power consuming. If a binary parser wants now to skip a complete sub-description, it just has to search for the closing BID with the same unique number as the opening BID of the D or DS he wants to skip. By this, the parsing speed in case of skipping sub-descriptions is increased, and also the computational-complexity of the parser is reduced. 
       
    
    
     DRAWINGS  
       [0005]    Embodiments of the invention are illustrated in the figures and explained in detail in the description that follows.  
         [0006]    [0006]FIG. 1 shows a structure of a bitstream with identical grid positions for opening and closing BIDs;  
         [0007]    [0007]FIG. 2 shows a structure of a bitstream with separate grid positions for opening and closing BIDs. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0008]    Before discussing the details of the invention some definitions used in MPEG-7 and in the context of the remainder are presented:  
         [0009]    Data: Data is audio-visual information that will be described using MPEG-7, regardless of storage, coding, display, transmission, medium, or technology.  
         [0010]    Feature: A Feature is a distinctive characteristic of the data which signifies something to somebody.  
         [0011]    Descriptor (D): A Descriptor is a representation of a Feature. A Descriptor defines the syntax and the semantics of the Feature representation.  
         [0012]    Description Scheme (DS): A Description Scheme specifies the structure and semantics of the relationships between its components, which may be both Descriptors (Ds) and Description Schemes (DSs).  
         [0013]    Description Definition Language (DDL): The Description Definition Language is a language that allows the creation of new Description Schemes and, possibly, Descriptors. It also allows the extension and modification of existing Description Schemes.  
         [0014]    D/DS schema: The definition of a D/DS using the DDL, which is based on the XML-schema language. Here, the components of a specific D/DS, which may themselves be other Ds/DSs, and their relationships are defined.  
         [0015]    D/DS instance: The instantiation of a certain D/DS, i.e. the description of actual data according to the elements defined in the D/DS schema.  
         [0016]    Coded Description: A Coded Description is a Description that has been encoded to fulfil relevant requirements such as compression efficiency, error resilience, random access, etc.  
         [0017]    Static DS: a DS that has been specified from the beginning and that is contained in a known dictionary of Ds and DSs  
         [0018]    Dynamic DS: a DS that is dynamically defined, using available static Ds and DSs  
         [0019]    In principle there are two ways to represent a D/DS-instance, either as text using the XML language, or in binary form. In [M6061] a possible binary form for the descriptions is described. It consists mainly of binary identifiers (BIDs), which are unique for each possible D or DS, and which can be hierarchically structured in order to improve the parsing on bitstream level. An example of a simple DS in textual form is given below:  
                                                                                                                                                                                                                                             &lt;VideoSegment id = “VS1”&gt;                &lt;MediaTime timeunit =“PT1N3 OF”&gt;                &lt;MediaIncrTimePoint&gt;0&lt;/MediaIncrTimePoint&gt;           &lt;MediaIncrDuration&gt;106 &lt;/MediaIncrDuration&gt;                &lt;/MediaTime&gt;           &lt;GoFGoPHistogramD HistogramTypeInfo=“Average”&gt;                &lt;ColorHistogramD&gt;                &lt;ColorSpaceD Space=“.HSV”/&gt;                &lt;LinearColorQuantizationD Quantization=“linear”&gt;                &lt;bin number&gt;4&lt;/bin number&gt;           &lt;bin number&gt;4&lt;/bin number&gt;           &lt;bin number&gt;4&lt;/bin number&gt;                &lt;/LinearCol. orQuantizationD&gt;           &lt;HistogramD HistogramNormFactor=“1”           NumberHistogramBins=“4”&gt;           &lt;HistogramValue&gt;444&lt;/HistogramValue&gt;           &lt;HistogramValue&gt;34 &lt;/HistogramValue&gt;           &lt;HistogramValue&gt;58&lt;/HistogramValue&gt;           &lt;HistogramValue&gt;564&lt;/HistogramValue&gt;           &lt;/HistogramD&gt;                &lt;/ColorHistogramD&gt;                &lt;/GoFGoPHistogramD&gt;           &lt;SegmentDecomposition Gap=“true”Overlap=“false”            DecompositionType=“spatio-temporal”&gt;                &lt;MovingRegion id=“MR2”&gt;                &lt;MediaTime timeunit=“PT1N30F”&gt;                &lt;MediaIncrTimePoint&gt;53&lt;/MediaIncrTimepoint&gt;           &lt;Media IncrDuration&gt;23&lt;/MediaIncrDuration&gt;                &lt;/MediaTime&gt;           &lt;ParametricobjectMotion Xorigin=“0.000000”                Yorigin=“0. 000000”                ModelType=“2”&gt;                &lt;MotionParameters&gt;0.000000&lt;/MotionParameters&gt;           &lt;MotionParameters&gt;0.000000&lt;/MotionParameters&gt;           &lt;MotionParameters&gt;0.000000&lt;/MotionParameters&gt;           &lt;MotionParameters&gt;0.000000&lt;/MotionParameters&gt;           &lt;MotionParameters&gt;0.000000&lt;/MotionParameters&gt;           &lt;MotionParameters&gt;0.000000&lt;/MotionParameters&gt;           &lt;/ParametricobjectMotion&gt;                &lt;/MovingRegion&gt;                &lt;/SegmentDecomposition&gt;            &lt;/VideoSegment&gt;                  
 
         [0020]    The elements between the brackets “&lt;. . . &gt;” are referred to as XML-tags. In general, to each “opening tag” there corresponds a “closing tag”, which has the same name but with a leading “/” at the beginning. As an example, the closing tag for “&lt;MediaTime&gt;” would be “&lt;/MediaTime&gt;”. The meaning of the tags and thus of the Ds or DSs described by them is defined by the D or DS schema using the DDL. In the binary form described in [M6061], a unique binary identifier (BID) is assigned to each such tag of a pre-defined set of tags according to a set of specified Ds and DSs. In order to make parsing on binary level more robust, the BIDS can comprise a leading sequence of bits which is unique in the bitstream, i.e. can not occur at other places than in BIDs. Using the so specified BIDs, the text form can be mapped into binary form by replacing each opening and closing tag by the respective BID, using e.g. a leading “0” or “1” to mark if the BID represents an opening or a closing tag. The other values, i.e. the actual data like the “0.0000” for the motion parameters or the numbers in the histogram values can be represented by usual integer, float or ASCII text representation. Up to date, the BIDs representing the opening and closing tags can be placed anywhere in the bitstream, depending on the size of the actual data in between the tags.  
         [0021]    The method of the invention discloses a structure for a bitstream representing descriptions of multimedia data. This structure defines a regular grid of positions, at which the opening and closing tags corresponding to the XML-tags of Ds and DSs may be placed. In the present invention, three aspects can be distinguished:  
         [0022]    Specification of positioning grid for opening and closing BIDs in a bitstream  
         [0023]    Specification of different positioning grids for opening and for closing BIDS  
         [0024]    Unique numbering of opening and corresponding closing BIDs  
         [0025]    Each of the aspects and the proposed solution in the light of the present invention will be described in the following.  
         [0026]    A binary identifier BID for each specified descriptor D and description scheme DS is used to replace the originally textual (XML) opening and closing tag of the D or DS. In this respect, the BIDs are referred to as opening and closing BIDs. The opening and closing BID of a specific D or DS are mainly identical and differ just in that e.g. a leading/trailing “0” or “1” denotes if it is an opening or a closing BID.  
         [0027]    By means of a first aspect of the present invention, a special structure for the bitstream is defined, in which opening or closing BIDs may only start at certain positions. Such a structure and corresponding grid is shown in FIG. 1. Here, the first BID may start at bit number M (M&gt;0), and from there on BIDs may start at each following Nth bit (with N&gt;1) until the end of the bitstream. For example, if M=1 and N=8, BIDs would always start at the beginning of a new byte in the bitstream. The parameters M and N may be fixed in a respective specification, or they may alternatively be transmitted in at the very beginning of the bitstream in its so-called header  1 . By the latter approach, it is possible to adapt the parameters to possible specific application requirements.  
         [0028]    In the case that there is only one positioning grid defined for opening and for closing BIDs, at those positions both kind of BIDs may start. Therefore, the opening and closing BIDs must be distinguished, e.g. by a leading or trailing “0” and “1”, respectively, in order to distinguish them at the parser.  
         [0029]    By means of a second aspect of the present invention, different grids for opening BIDs and for closing BIDs are specified. The grids are defined in a way, that the occurence of an opening BID at a closing grid position is not possible, and vice versa. Thus, the same BID can be used for an opening and a closing tag, without having to mark it as such with a leading or trailing bit. A corresponding structure and two respective grids, are shown in FIG. 2. Here, the first opening BID may start at bit number M (M&gt;0), and from then on at each following Nth bit (N&gt;1), as already the case in FIG. 1. However, at those positions no closing tag must start. The first closing tag may start at bit number K (K&gt;M), and from then on at each following Lth bit (L&gt;1). The parameters M, K, N and L shall be chosen such that the grids do not interfere with each other. All parameters may again be fixed in a respective specification, or they may alternatively be transmitted in at the very beginning of the bitstream in its header  1 .  
         [0030]    Besides the aspects of just parsing a bitstream representing multimedia descriptions, it may be very helpful for a parser if it could skip complete sub-descriptions of an overall description, without having to parse the complete corresponding part of the bitstream. This could be e.g. the case if the part to skip contains information which the application that consumes the description is not interested in, while it may be very well interested in information beyond or past that sub-description. In the current textual form, the complete sub-description has to be parsed. By means of the third aspect of the present invention however, it is possible to skip a whole sub-description without parsing the corresponding bitstream completely. Therefore, a unique number is assigned to each opening BID of the same type, i.e. corresponding to the same D or DS. The same unique number is assigned to the corresponding closing tag of the respective sub-description. The unique numbers are added to the opening and closing BID as fixed or variable length codes, and written into the bitstream. When a parser now wants to skip a complete sub-description, it just has to search for the closing BID with the corresponding unique number, instead of parsing the whole corresponding part of the bitstream.