Add another diagram (elementary multiplexing)
svn path=/trunk/ogg/; revision=17135
This commit is contained in:
parent
edc5330510
commit
7df26aa6ce
BIN
doc/multiplex1.png
Normal file
BIN
doc/multiplex1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 53 KiB |
632
doc/multiplex1.svg
Normal file
632
doc/multiplex1.svg
Normal file
@ -0,0 +1,632 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.46"
|
||||
sodipodi:docname="multiplex1.svg"
|
||||
inkscape:output_extension="org.inkscape.output.svg.inkscape"
|
||||
inkscape:export-filename="/home/xiphmont/MotherfishSVN/ogg/doc/multiplex1.png"
|
||||
inkscape:export-xdpi="78.239998"
|
||||
inkscape:export-ydpi="78.239998">
|
||||
<defs
|
||||
id="defs4">
|
||||
<inkscape:perspective
|
||||
sodipodi:type="inkscape:persp3d"
|
||||
inkscape:vp_x="0 : 526.18109 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_z="744.09448 : 526.18109 : 1"
|
||||
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
|
||||
id="perspective10" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
gridtolerance="10000"
|
||||
guidetolerance="10"
|
||||
objecttolerance="10"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.98994949"
|
||||
inkscape:cx="414.22127"
|
||||
inkscape:cy="675.05057"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="1436"
|
||||
inkscape:window-height="986"
|
||||
inkscape:window-x="1776"
|
||||
inkscape:window-y="26"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid2383" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="147.14285"
|
||||
y="265.93362"
|
||||
id="text3566"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3568"
|
||||
x="147.14285"
|
||||
y="265.93362" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="144.28571"
|
||||
y="265.21933"
|
||||
id="text3570"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3572"
|
||||
x="144.28571"
|
||||
y="265.21933" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="135.71429"
|
||||
y="264.50504"
|
||||
id="text3574"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3576"
|
||||
x="135.71429"
|
||||
y="264.50504" /></text>
|
||||
<rect
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3155"
|
||||
width="90"
|
||||
height="80"
|
||||
x="80"
|
||||
y="127.36218"
|
||||
ry="0" />
|
||||
<rect
|
||||
ry="0"
|
||||
y="127.36218"
|
||||
x="580"
|
||||
height="80"
|
||||
width="90"
|
||||
id="rect3188"
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3196"
|
||||
width="90"
|
||||
height="80"
|
||||
x="480"
|
||||
y="127.36218"
|
||||
ry="0" />
|
||||
<rect
|
||||
ry="0"
|
||||
y="127.36218"
|
||||
x="380"
|
||||
height="80"
|
||||
width="90"
|
||||
id="rect3204"
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3212"
|
||||
width="90"
|
||||
height="80"
|
||||
x="280"
|
||||
y="127.36218"
|
||||
ry="0" />
|
||||
<rect
|
||||
ry="0"
|
||||
y="127.36218"
|
||||
x="180"
|
||||
height="80"
|
||||
width="90"
|
||||
id="rect3220"
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#5fd35f;fill-opacity:1;stroke:none;stroke-width:2.70000005;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3258"
|
||||
width="620"
|
||||
height="40"
|
||||
x="65"
|
||||
y="157.36218"
|
||||
ry="4.3460864e-06" />
|
||||
<path
|
||||
style="fill:#5fd35f;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 70,157.36218 L 70,147.36218 L 30,177.36218 L 70,207.36218 L 70,157.36218 z"
|
||||
id="path3266"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
style="font-size:24px;fill:#5fd35f;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 680,157.36218 L 680,147.36218 L 720,177.36218 L 680,207.36218 L 680,157.36218 z"
|
||||
id="path3268" />
|
||||
<rect
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3260"
|
||||
width="620"
|
||||
height="20"
|
||||
x="65"
|
||||
y="102.36218"
|
||||
ry="0"
|
||||
inkscape:export-xdpi="78.239998"
|
||||
inkscape:export-ydpi="78.239998" />
|
||||
<path
|
||||
style="fill:#bbddbb;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 70,102.36218 L 70,92.362183 L 40,112.36218 L 70,132.36218 L 70,102.36218 z"
|
||||
id="path3262" />
|
||||
<path
|
||||
style="fill:#bbddbb;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 680,102.36218 L 680,92.362183 L 710,112.36218 L 680,132.36218 L 680,102.36218 z"
|
||||
id="path3264" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
|
||||
x="280"
|
||||
y="122.36218"
|
||||
id="text3270"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3562"
|
||||
x="280"
|
||||
y="122.36218">elementary physical bitstream A</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="445"
|
||||
y="192.36218"
|
||||
id="text3274"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3276"
|
||||
x="445"
|
||||
y="192.36218">logical bitstream A</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="87.979683"
|
||||
y="146.8571"
|
||||
id="text3161"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3163"
|
||||
x="87.979683"
|
||||
y="146.8571">OggS</tspan></text>
|
||||
<text
|
||||
id="text3190"
|
||||
y="146.8571"
|
||||
x="587.97968"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="146.8571"
|
||||
x="587.97968"
|
||||
id="tspan3192"
|
||||
sodipodi:role="line">OggS</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="487.97971"
|
||||
y="146.8571"
|
||||
id="text3198"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3200"
|
||||
x="487.97971"
|
||||
y="146.8571">OggS</tspan></text>
|
||||
<text
|
||||
id="text3206"
|
||||
y="146.8571"
|
||||
x="387.97971"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="146.8571"
|
||||
x="387.97971"
|
||||
id="tspan3208"
|
||||
sodipodi:role="line">OggS</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="287.97971"
|
||||
y="146.8571"
|
||||
id="text3214"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3216"
|
||||
x="287.97971"
|
||||
y="146.8571">OggS</tspan></text>
|
||||
<text
|
||||
id="text3222"
|
||||
y="146.8571"
|
||||
x="187.97968"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="146.8571"
|
||||
x="187.97968"
|
||||
id="tspan3224"
|
||||
sodipodi:role="line">OggS</tspan></text>
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
id="path3372"
|
||||
d="M 70,292.36218 L 70,282.36218 L 30,312.36218 L 70,342.36218 L 70,292.36218 z"
|
||||
style="fill:#5fa3d3;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
<rect
|
||||
ry="9.3506489"
|
||||
y="262.36218"
|
||||
x="80"
|
||||
height="80"
|
||||
width="90"
|
||||
id="rect3318"
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3326"
|
||||
width="90"
|
||||
height="80"
|
||||
x="580"
|
||||
y="262.36218"
|
||||
ry="9.3506489" />
|
||||
<rect
|
||||
ry="9.3506489"
|
||||
y="262.36218"
|
||||
x="480"
|
||||
height="80"
|
||||
width="90"
|
||||
id="rect3334"
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3342"
|
||||
width="90"
|
||||
height="80"
|
||||
x="380"
|
||||
y="262.36218"
|
||||
ry="9.3506489" />
|
||||
<rect
|
||||
ry="9.3506489"
|
||||
y="262.36218"
|
||||
x="280"
|
||||
height="80"
|
||||
width="90"
|
||||
id="rect3350"
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3358"
|
||||
width="90"
|
||||
height="80"
|
||||
x="180"
|
||||
y="262.36218"
|
||||
ry="9.3506489" />
|
||||
<rect
|
||||
ry="0.25253814"
|
||||
y="292.36218"
|
||||
x="65"
|
||||
height="40"
|
||||
width="620"
|
||||
id="rect3364"
|
||||
style="fill:#5fa3d3;fill-opacity:1;stroke:none;stroke-width:2.70000005;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3374"
|
||||
d="M 680,292.36218 L 680,282.36218 L 720,312.36218 L 680,342.36218 L 680,292.36218 z"
|
||||
style="font-size:24px;fill:#5fa3d3;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
<rect
|
||||
ry="0"
|
||||
y="237.36218"
|
||||
x="65"
|
||||
height="20"
|
||||
width="620"
|
||||
id="rect3366"
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
id="path3368"
|
||||
d="M 70,237.36218 L 70,227.36218 L 40,247.36218 L 70,267.36218 L 70,237.36218 z"
|
||||
style="fill:#b5cfdf;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
<path
|
||||
id="path3370"
|
||||
d="M 680,237.36218 L 680,227.36218 L 710,247.36218 L 680,267.36218 L 680,237.36218 z"
|
||||
style="fill:#b5cfdf;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
<text
|
||||
id="text3376"
|
||||
y="257.36218"
|
||||
x="280"
|
||||
style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
|
||||
xml:space="preserve"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3564"
|
||||
x="280"
|
||||
y="257.36218">elementary physical bitstream B</tspan></text>
|
||||
<text
|
||||
id="text3380"
|
||||
y="327.36218"
|
||||
x="445"
|
||||
style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
|
||||
xml:space="preserve"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3524"
|
||||
x="445"
|
||||
y="327.36218">logical bitstream B</tspan></text>
|
||||
<text
|
||||
id="text3320"
|
||||
y="282.32013"
|
||||
x="87.943802"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="282.32013"
|
||||
x="87.943802"
|
||||
id="tspan3322"
|
||||
sodipodi:role="line">OggS</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="587.94385"
|
||||
y="282.32013"
|
||||
id="text3328"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3330"
|
||||
x="587.94385"
|
||||
y="282.32013">OggS</tspan></text>
|
||||
<text
|
||||
id="text3336"
|
||||
y="282.32013"
|
||||
x="487.94382"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="282.32013"
|
||||
x="487.94382"
|
||||
id="tspan3338"
|
||||
sodipodi:role="line">OggS</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="387.94382"
|
||||
y="282.32013"
|
||||
id="text3344"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3346"
|
||||
x="387.94382"
|
||||
y="282.32013">OggS</tspan></text>
|
||||
<text
|
||||
id="text3352"
|
||||
y="282.32013"
|
||||
x="287.94382"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="282.32013"
|
||||
x="287.94382"
|
||||
id="tspan3354"
|
||||
sodipodi:role="line">OggS</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="187.9438"
|
||||
y="282.32013"
|
||||
id="text3360"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3362"
|
||||
x="187.9438"
|
||||
y="282.32013">OggS</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="444.9722"
|
||||
y="496.02066"
|
||||
id="text3638"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3640"></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline"
|
||||
d="M 365,352.36218 L 365,402.36218 L 335,392.36218 L 375,432.36218 L 415,392.36218 L 385,402.36218 L 385,352.36218 L 365,352.36218 z"
|
||||
id="path3299" />
|
||||
<rect
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3388"
|
||||
width="90"
|
||||
height="80"
|
||||
x="80.166489"
|
||||
y="467.36224"
|
||||
ry="0" />
|
||||
<rect
|
||||
ry="9.3506489"
|
||||
y="467.36224"
|
||||
x="580.1665"
|
||||
height="80"
|
||||
width="90"
|
||||
id="rect3396"
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3404"
|
||||
width="89.833496"
|
||||
height="80"
|
||||
x="480.1665"
|
||||
y="467.36224"
|
||||
ry="0"
|
||||
inkscape:export-xdpi="78.239998"
|
||||
inkscape:export-ydpi="78.239998" />
|
||||
<rect
|
||||
ry="9.3506489"
|
||||
y="467.36224"
|
||||
x="380.1665"
|
||||
height="80"
|
||||
width="90"
|
||||
id="rect3412"
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#bbddbb;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3420"
|
||||
width="90"
|
||||
height="80"
|
||||
x="280.1665"
|
||||
y="467.36224"
|
||||
ry="0" />
|
||||
<rect
|
||||
ry="9.3506489"
|
||||
y="467.36224"
|
||||
x="180.16649"
|
||||
height="80"
|
||||
width="90"
|
||||
id="rect3428"
|
||||
style="fill:#b5cfdf;fill-opacity:1;stroke:none;stroke-width:2.70000004999999987;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#5fd35f;fill-opacity:1;stroke:none;stroke-width:2.70000005;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3434"
|
||||
width="615.1665"
|
||||
height="40.000061"
|
||||
x="65"
|
||||
y="497.36218"
|
||||
ry="4.3460864e-06" />
|
||||
<path
|
||||
style="fill:#5fd35f;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 70.16649,497.36224 L 70.16649,487.36224 L 30.16649,517.36224 L 70.16649,547.36224 L 70.16649,497.36224 z"
|
||||
id="path3442"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
style="font-size:24px;fill:#5fd35f;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 680.16649,497.36224 L 680.16649,487.36224 L 720.16649,517.36224 L 680.16649,547.36224 L 680.16649,497.36224 z"
|
||||
id="path3444" />
|
||||
<rect
|
||||
style="fill:#cccccc;fill-opacity:1;stroke:none;stroke-width:2.70000005;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3436"
|
||||
width="620"
|
||||
height="20"
|
||||
x="65"
|
||||
y="442.36218"
|
||||
ry="0" />
|
||||
<path
|
||||
style="fill:#cccccc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 70.16649,442.36224 L 70.16649,432.36224 L 40.16649,452.36224 L 70.16649,472.36224 L 70.16649,442.36224 z"
|
||||
id="path3438" />
|
||||
<path
|
||||
style="fill:#cccccc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 680.16649,442.36224 L 680.16649,432.36224 L 710.16649,452.36224 L 680.16649,472.36224 L 680.16649,442.36224 z"
|
||||
id="path3440" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
|
||||
x="300.1665"
|
||||
y="462.36224"
|
||||
id="text3446"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3526"
|
||||
x="300.1665"
|
||||
y="462.36224">multiplexed physical bitstream</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 175.16649,492.36224 L 175.16649,547.36224"
|
||||
id="path3662" />
|
||||
<path
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 275.16649,542.36224 L 275.16649,492.36224"
|
||||
id="path3668" />
|
||||
<path
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 375.16649,492.36224 L 375.16649,542.36224"
|
||||
id="path3670" />
|
||||
<path
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 475.16649,492.36224 L 475.16649,542.36224"
|
||||
id="path3672" />
|
||||
<path
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 575.16649,492.36224 L 575.16649,542.36224"
|
||||
id="path3674" />
|
||||
<path
|
||||
style="fill:#5fa3d3;fill-opacity:1;stroke:none;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 176.84389,517.32564 L 176.84389,497.37512 L 225.20495,497.37512 L 273.566,497.37512 L 273.566,517.32564 L 273.566,537.27615 L 225.20495,537.27615 L 176.84389,537.27615 L 176.84389,517.32564 z"
|
||||
id="path3676" />
|
||||
<path
|
||||
style="fill:#5fa3d3;fill-opacity:1;stroke:none;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 376.79115,517.32564 L 376.79115,497.37512 L 425.1522,497.37512 L 473.51325,497.37512 L 473.51325,517.32564 L 473.51325,537.27615 L 425.1522,537.27615 L 376.79115,537.27615 L 376.79115,517.32564 z"
|
||||
id="path3678" />
|
||||
<path
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 575.16649,492.36224 L 575.16649,542.36224"
|
||||
id="path3680" />
|
||||
<path
|
||||
style="fill:#5fa3d3;fill-opacity:1;stroke:none;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 680.18684,542.21496 L 680.18684,537.27615 L 628.5428,537.27615 L 576.89875,537.27615 L 576.89875,517.32564 L 576.89875,497.37512 L 628.5428,497.37512 L 680.18684,497.37512 L 680.18684,492.45006 L 680.18684,487.525 L 700,502.36218 C 710.89722,510.52263 719.81813,517.27102 719.82422,517.3586 C 719.83225,517.47395 684.31753,544.18376 680.64581,546.82378 C 680.20662,547.13956 680.18684,546.94102 680.18684,542.21496 z"
|
||||
id="path3682" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="88.110291"
|
||||
y="487.82529"
|
||||
id="text3390"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3392"
|
||||
x="88.110291"
|
||||
y="487.82529">OggS</tspan></text>
|
||||
<text
|
||||
id="text3398"
|
||||
y="487.82529"
|
||||
x="588.11029"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="487.82529"
|
||||
x="588.11029"
|
||||
id="tspan3400"
|
||||
sodipodi:role="line">OggS</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="488.11032"
|
||||
y="487.82529"
|
||||
id="text3406"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3408"
|
||||
x="488.11032"
|
||||
y="487.82529">OggS</tspan></text>
|
||||
<text
|
||||
id="text3414"
|
||||
y="487.82529"
|
||||
x="388.11032"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="487.82529"
|
||||
x="388.11032"
|
||||
id="tspan3416"
|
||||
sodipodi:role="line">OggS</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="288.11032"
|
||||
y="487.82529"
|
||||
id="text3422"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3424"
|
||||
x="288.11032"
|
||||
y="487.82529">OggS</tspan></text>
|
||||
<text
|
||||
id="text4306"
|
||||
y="487.86862"
|
||||
x="183.07068"
|
||||
style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="487.86862"
|
||||
x="183.07068"
|
||||
id="tspan4308"
|
||||
sodipodi:role="line">OggS</tspan></text>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 31 KiB |
@ -424,6 +424,14 @@ physical bitstream by taking the pages in order from the physical
|
||||
bitstream and redirecting them into the appropriate logical decoding
|
||||
entity.
|
||||
|
||||
<div class="caption">
|
||||
<img src="multiplex1.png">
|
||||
|
||||
<p>Multiple media types are mutliplexed into a single Ogg stream by
|
||||
interleaving the pages from each elementary physical stream.
|
||||
|
||||
</div>
|
||||
|
||||
<p><a href="ogg-multiplex.html">Ogg Bitstream Multiplexing</a> specifies
|
||||
proper multiplexing of an Ogg bitstream in detail.
|
||||
|
||||
@ -452,38 +460,9 @@ interleaved in order of the time stamp regardless of stream type.
|
||||
Both continuous and discontinuous logical streams are used to seek
|
||||
within a physical stream, however only continuous streams are used to
|
||||
determine buffering depth; because discontinuous streams are stamped
|
||||
by start time, they will always 'fall out' in time when buffering
|
||||
tracks only the continuous streams. See 'Examples' for an
|
||||
illustration of the buffering mechanism.
|
||||
|
||||
<h2>Mapping Requirements</h2>
|
||||
|
||||
<p>Each codec is allowed some freedom in deciding how its logical
|
||||
bitstream is encapsulated into an Ogg bitstream (even if it is a
|
||||
trivial mapping, eg, 'plop the packets in and go'). This is the
|
||||
codec's <em>mapping</em>. Ogg imposes a few mapping requirements
|
||||
on any codec.
|
||||
|
||||
<p>The <a href="framing.html">framing specification</a> defines
|
||||
'beginning of stream' and 'end of stream' page markers via a header
|
||||
flag (it is possible for a stream to consist of a single page). A
|
||||
correct stream always consists of an integer number of pages, an easy
|
||||
requirement given the variable size nature of pages.</p>
|
||||
|
||||
<p>The first page of an elementary Ogg bitstream consists of a single,
|
||||
small 'initial header' packet that must include sufficient information
|
||||
to identify the exact CODEC type. From this initial header, the codec
|
||||
must also be able to determine its timebase and whether or not it is a
|
||||
continuous- or discontinuous-time stream. The initial header must fit
|
||||
on a single page. If a codec makes use of auxiliary headers (for
|
||||
example, Vorbis uses two auxiliary headers), these headers must follow
|
||||
the initial header immediately. The last header finishes its page;
|
||||
data begins on a fresh page.
|
||||
|
||||
<p>As an example, Ogg Vorbis places the name and revision of the
|
||||
Vorbis CODEC, the audio rate and the audio quality into this initial
|
||||
header. Comments and detailed codec setup appears in the larger
|
||||
auxiliary headers.</p>
|
||||
by start time, they will always 'fall out' at the proper time when
|
||||
buffering the continuous streams. See 'Examples' for an illustration
|
||||
of the buffering mechanism.
|
||||
|
||||
<h2>Multiplexing Requirements</h2>
|
||||
|
||||
@ -493,24 +472,24 @@ of multiple elementary streams:
|
||||
|
||||
<ol>
|
||||
|
||||
<li> The initial header for each stream appears in sequence, each
|
||||
<li><p> The initial header for each stream appears in sequence, each
|
||||
header on a single page. All initial headers must appear with no
|
||||
intervening data (no auxiliary header pages or packets, no data pages
|
||||
or packets). Order of the initial headers is unspecified. The
|
||||
'beginning of stream' flag is set on each initial header.
|
||||
|
||||
<li> All auxiliary headers for all streams must follow. Order
|
||||
<li><p> All auxiliary headers for all streams must follow. Order
|
||||
is unspecified. The final auxiliary header of each stream must flush
|
||||
its page.
|
||||
|
||||
<li>Data pages for each stream follow, interleaved in time order.
|
||||
<li><p>Data pages for each stream follow, interleaved in time order.
|
||||
|
||||
<li>The final page of each stream sets the 'end of stream' flag.
|
||||
<li><p>The final page of each stream sets the 'end of stream' flag.
|
||||
Unlike initial pages, terminal pages for the logical bitstreams need
|
||||
not occur contiguously; indeed it may not be possible for them to do so.
|
||||
</oL>
|
||||
|
||||
<p>Each grouped bitstream must have a unique serial number within the
|
||||
<p><p>Each grouped bitstream must have a unique serial number within the
|
||||
scope of the physical bitstream.</p>
|
||||
|
||||
<h3>chaining and multiplexing</h3>
|
||||
@ -522,6 +501,57 @@ stand on its own as a valid physical bitstream. Chained streams do
|
||||
not mix or interleave; a new segment may not begin until all streams
|
||||
in the preceding segment have terminated. </p>
|
||||
|
||||
<h2>Codec Mapping Requirements</h2>
|
||||
|
||||
<p>Each codec is allowed some freedom in deciding how its logical
|
||||
bitstream is encapsulated into an Ogg bitstream (even if it is a
|
||||
trivial mapping, eg, 'plop the packets in and go'). This is the
|
||||
codec's <em>mapping</em>. Ogg imposes a few mapping requirements
|
||||
on any codec.
|
||||
|
||||
<ol>
|
||||
|
||||
<li><p>The <a href="framing.html">framing specification</a> defines
|
||||
'beginning of stream' and 'end of stream' page markers via a header
|
||||
flag (it is possible for a stream to consist of a single page). A
|
||||
correct stream always consists of an integer number of pages, an easy
|
||||
requirement given the variable size nature of pages.</p>
|
||||
|
||||
<li><p>The first page of an elementary Ogg bitstream consists of a single,
|
||||
small 'initial header' packet that must include sufficient information
|
||||
to identify the exact CODEC type. From this initial header, the codec
|
||||
must also be able to determine its timebase and whether or not it is a
|
||||
continuous- or discontinuous-time stream. The initial header must fit
|
||||
on a single page. If a codec makes use of auxiliary headers (for
|
||||
example, Vorbis uses two auxiliary headers), these headers must follow
|
||||
the initial header immediately. The last header finishes its page;
|
||||
data begins on a fresh page.
|
||||
|
||||
<p><p>As an example, Ogg Vorbis places the name and revision of the
|
||||
Vorbis CODEC, the audio rate and the audio quality into this initial
|
||||
header. Vorbis comments and detailed codec setup appears in the larger
|
||||
auxiliary headers.</p>
|
||||
|
||||
<li><p>Granule positions must be translatable to an exact absolute
|
||||
time value. As described above, the mux layer is permitted to query a
|
||||
codec or codec stub plugin to perform this mapping. It is not
|
||||
necessary for an absolute time to be mappable into a single unique
|
||||
granule position value.
|
||||
|
||||
<li><p>Codecs are not required to use a fixed duration-per-packet (for
|
||||
example, Vorbis does not). the mux layer is permitted to query a
|
||||
codec or codec stub plugin for the time duration of a packet.
|
||||
|
||||
<li><p>Although an absolute time need not be translatable to a unique
|
||||
granule position, a codec must be able to determine the unique granule
|
||||
position of the current packet using the granule position of a
|
||||
preceeding packet.
|
||||
|
||||
<li><p>Packets and pages must be arranged in ascending
|
||||
granule-position and time order.
|
||||
|
||||
</ol>
|
||||
|
||||
<h2>Examples</h2>
|
||||
|
||||
<em>[More to come shortly; this section is currently being revised and expanded]</em>
|
||||
|
Loading…
Reference in New Issue
Block a user