[cvs-annodex] commit (/annodex):
standards/draft-pfeiffer-annodex-02-rc2.txt
silvia
nobody at lists.annodex.net
Sat Mar 5 18:54:51 EST 2005
Update of /annodex (new revision 1046)
Modified files:
standards/draft-pfeiffer-annodex-02-rc2.txt
Log Message:
Small update. :)
Modified: standards/draft-pfeiffer-annodex-02-rc2.txt
===================================================================
--- standards/draft-pfeiffer-annodex-02-rc2.txt 2005-03-05 07:54:16 UTC (rev 1045)
+++ standards/draft-pfeiffer-annodex-02-rc2.txt 2005-03-05 07:54:50 UTC (rev 1046)
@@ -955,6 +955,14 @@
5. Handling time in Annodex format bitstream
+ With time-continuous data like Annodex, one needs to handle data at
+ four different levels:
+ o at the bytes level, upon seeking.
+ o at the packets level, upon encapsulating.
+ o at the granules level, upon recompositing.
+ o at the time level, upon displaying and addressing.
+ This section explains how they all fit together.
+
5.1 Conceptual overview
Annodex bitstreams inherently represent one timeline only, where the
@@ -993,6 +1001,14 @@
----------------------------------------------------
audio bitstream 2
-------------------------------
+
+
+
+Pfeiffer, et al. Expires September 3, 2005 [Page 18]
+
+Internet-Draft ANNODEX March 2005
+
+
| |/////| | | |
-------------------------------
video bitstream 2
@@ -1001,14 +1017,6 @@
diagram) is called the "basetime" and represents the time in seconds
associated with the granule position of 0 on all logical bitstreams.
Typically, a newly created Annodex file starts all its logical
-
-
-
-Pfeiffer, et al. Expires September 3, 2005 [Page 18]
-
-Internet-Draft ANNODEX March 2005
-
-
bitstreams at granule position 0, and a typical extract of an Annodex
bitstream, such as the one starting at t_url in the image above,
starts each of its logical bitstreams at a different granule
@@ -1049,6 +1057,14 @@
sampling rates. The granulerate is specified in the skeleton
secondary header packets for each logical bitstream.
+
+
+
+Pfeiffer, et al. Expires September 3, 2005 [Page 19]
+
+Internet-Draft ANNODEX March 2005
+
+
Each one of the bitstreams insert data into the Ogg bitstream through
packets which have an associated temporal duration based on the
encoder packaging. Packets are packaged into Ogg pages, which have a
@@ -1057,14 +1073,6 @@
the Annodex bitstream after decoding the given Ogg page.
The granule position together with the granulerate and granuleshift
-
-
-
-Pfeiffer, et al. Expires September 3, 2005 [Page 19]
-
-Internet-Draft ANNODEX March 2005
-
-
information of the skeleton secondary header packets for the
particular logical bitstream are used for the calculation of the time
position for which a data packet of the logical bitstream completes
@@ -1106,6 +1114,13 @@
t_page = basetime + ((keyindex + keyoffset) / granulerate)
+
+
+Pfeiffer, et al. Expires September 3, 2005 [Page 20]
+
+Internet-Draft ANNODEX March 2005
+
+
The basetime provides the time offset used at the beginning of the
logical bitstream for the first data packet and thus MUST be added
for a correct calculation of the temporal position.
@@ -1113,14 +1128,6 @@
As an example regard an audio bitstream that has a granulerate of
44100 (i.e. 44100 samples per 1 sec), a granuleshift of 0, and
starts at 4 sec. When reaching a granule_position of 88200, this
-
-
-
-Pfeiffer, et al. Expires September 3, 2005 [Page 20]
-
-Internet-Draft ANNODEX March 2005
-
-
maps to a time position of 6 seconds:
t_page = 4 + ((88200 + 0) / 44100) = 6
@@ -1162,6 +1169,14 @@
npt=12.020 to npt=15.0 will be 661500.
A note about field overflows: an overflow of the granule position
+
+
+
+Pfeiffer, et al. Expires September 3, 2005 [Page 21]
+
+Internet-Draft ANNODEX March 2005
+
+
field can destroy the temporal integrity of the Annodex physical
bitstream. In this case, a multiplexer MUST end the Annodex physical
bitstream and restart a new one resetting the counter to 0 and
@@ -1170,13 +1185,6 @@
overflow of the page_sequence_number on one of the logical
bitstreams.
-
-
-Pfeiffer, et al. Expires September 3, 2005 [Page 21]
-
-Internet-Draft ANNODEX March 2005
-
-
5.3 Addressing/seeking into the bitstream
Addressing into an Annodex bitstream is possible with the temporal
@@ -1217,6 +1225,14 @@
information - the currently active clip in the case of CMML.
Therefore, once seeking has located the correct Byte position that
+
+
+
+Pfeiffer, et al. Expires September 3, 2005 [Page 22]
+
+Internet-Draft ANNODEX March 2005
+
+
refers to the given temporal offset, it MUST seek back. For logical
bitstreams that have a non-zero "granuleshift" in the skeleton, it
MUST seek back to the Ogg page that has a "keyindex" granule
@@ -1225,14 +1241,6 @@
position that satisfies all these requirements is the correct seek
position.
-
-
-
-Pfeiffer, et al. Expires September 3, 2005 [Page 22]
-
-Internet-Draft ANNODEX March 2005
-
-
A player that presents from an offset MUST take into account that the
bitstream may contain some packets that are only there to allow
accurate decoding of the seek time. When the backwards dependencies
@@ -1276,14 +1284,6 @@
-
-
-
-
-
-
-
-
Pfeiffer, et al. Expires September 3, 2005 [Page 23]
Internet-Draft ANNODEX March 2005
--
silvia
More information about the cvs-annodex
mailing list