[cvs-annodex] commit (/annodex): standards/draft-pfeiffer-cmml-current.xml

silvia nobody at lists.annodex.net
Tue Feb 15 09:54:37 EST 2005


Update of /annodex (new revision 904)

Modified files:
   standards/draft-pfeiffer-cmml-current.xml

Log Message:
Updated the CMML extraction section.



Modified: standards/draft-pfeiffer-cmml-current.xml
===================================================================
--- standards/draft-pfeiffer-cmml-current.xml	2005-02-14 22:38:23 UTC (rev 903)
+++ standards/draft-pfeiffer-cmml-current.xml	2005-02-14 22:54:36 UTC (rev 904)
@@ -1809,36 +1809,66 @@
       the decoding steps are outlined in order here. 
       </t>
 
-        <t>The core of a CMML file can be created from the "head" tag taken
-        from the secondary header packet of the annotation bitstream, and 
-        from the sequence of "clip" tags extracted from the content of 
-        the annotation bitstream. A decoder MUST take care to reinsert
-        the start time of each "clip" element into the "start" attribute of 
-        the respective CMML "clip" tag. The start time will be calculated 
-        from the Granule rate in the annotation fisbone packet and the
-        Granule pos given in the respective "clip" Ogg packet.
+      <section title="Extracting the preamble, 'head' and 'clip' tags">
+
+        <t>The data encoded in the CMML logical bitstream conists of the
+        xml preamble, the "cmml" tag, the "head" tag, and the "clip" tags.
+        These are fairly straightforward to extract.
         </t>
 
-        <t>If the Annodex bitstream has a non-zero basetime or a non-null
-        utc time in the skeleton ident header, a "stream" tag MUST be
-        created with these attribute values. That "stream" tag is empty
-        by default. A ripping application MAY however extract all the data
-        bitstreams out of the Annodex bitstream into files, and then reference
-        these files in the "src" attribute of "import" tags.
+        <t>xml preamble and "cmml" tag: The xml preamble is constructed
+        from the second header packet of the CMML logical bitstream. It contains
+        the full xml preamble. It also contains the "cmml" processing
+        instruction, which MUST be transformed back to a normal element
+        and an end "cmml" tag be added at the end of the created CMML document.
         </t>
 
+        <t>"head" tag: The "head" tag is constructed from the third header packet
+        of the CMML logical bitstream, which contains the complete content
+        of the "head" element.
+        </t>
+
+        <t>"clip" tags: The "clip" tags are constructed from the content
+        of the CMML logical bitstream. Each packet contains a "clip" tag
+        with all of the information except for the timing information.
+        A decoder MUST take care to add the start time of each "clip"
+        element into the "start" attribute of the respective CMML "clip" tag.
+        The start time will be calculated from the granulerate in the
+        CMML fisbone packet and the granulepos given in the respective
+        "clip" Ogg packet. Empty "clip" tags should also be converted to
+        end time attributes of the previous "clip" tag on the same track.
+        </t>
+
+      </section>
+
+      <section title="Creating a 'stream' tag">
+
+        <t>The creation of a "stream" tag is not necessary to extract the
+        content of the CMML logical bitstream and thus a textual representation
+        of the interleaved bitstream. However, if the Annodex bitstream has
+        a non-zero "basetime" or a non-null "utc" time in the skeleton
+        ident header, a "stream" tag will allow accurate time information
+        in the CMML file and SHOULD be created with these attribute values.
+        </t>
+
+        <t>If a "stream" tag is created with the "basetime" and "utc" attributes,
+        it is empty by default. A ripping application MAY however extract all
+        the data bitstreams out of the Annodex bitstream into files, and then
+        reference these files in the "src" attribute of "import" tags.
+        </t>
+
         <t>Other attributes of the "import" tags MAY also be filled in from 
         the logical bitstreams:
         <list style="symbols">
 	  <t>the "contenttype" attribute from the "Content-type" Message 
-	  header field of the respecitve skeleton secondary header packet,</t>
+	  header field of the respective skeleton secondary header packet,</t>
 	  <t>the "granulerate" attribute from the Granulerate fields of 
 	  the respecitive skeleton secondary header packet,</t>
 	  <t>the "id" attribute from a Message header field called "ID"
 	  if available,</t>
 	  <t>and "param" elements from all the remaining Message header fields
 	  of the respective skeleton secondary header packet, where the field
-          name gets stored in the "name" attribute and the value in the
+          name is stored in the "name" attribute and the value in the
           "value" attribute.</t>
 	</list>
         </t>
@@ -1847,38 +1877,20 @@
 <figure>
 <artwork><![CDATA[
 <stream basetime="[Basetime]" utc="[UTC]">
-  <import id="[ID]" granulerate="[Granulerate]" contenttype="[Content-type]"
-          src="[stream1.mpg]" start="0"/>
+  <import id="[ID]"
+          granulerate="[Granulerate numerator/Granulerate denominator]"
+          contenttype="[Content-type message header value]"
+          src="[stream1.ogg]"
+          start="0">
+    <param name="[message header name]" value="[message header value]"/>
+  </import>
 </stream>
 ]]></artwork>
 </figure>
         </t>
 
-        <t>If the annotation bitstream has Message header fields called 
-        "ID", "Content-Language", or "Content-Dir", the "cmml" tag of the
-        decoded CMML file MUST use these field values in its "id", "lang",
-        and "dir" attributes. This ensures that the default language setting
-        of the annotation bitstream gets preserved:
-<figure>
-<artwork><![CDATA[
-<cmml id="[ID]" lang="[Content-Language]" dir="[Content-Dir]">
-]]></artwork>
-</figure>
-        </t>
+      </section>
 
-        <t>To restore the correct XML preamble for the CMML file, the
-        charset part of the "Content-type" Message header field of the
-        annotation bitstream MUST be extracted and used as value of
-        the "encoding" attribute of the XML processing instruction. All
-        the other fields of the XML preamble are fixed:
-<figure>
-<artwork><![CDATA[
-<?xml version="1.0" encoding="[Content-type]" standalone="yes"?>
-<!DOCTYPE cmml SYSTEM "cmml.dtd">
-]]></artwork>
-</figure>
-        </t>
-
     </section>
 
 


-- 
silvia



More information about the cvs-annodex mailing list