diff --git a/doc/build_oggdraft.sh b/doc/build_oggdraft.sh index 2011cc667ab4dc5b794d96bd466eebc2dfacfef3..aa65aeb4add362c4377b1e28cfad431c73807737 100755 --- a/doc/build_oggdraft.sh +++ b/doc/build_oggdraft.sh @@ -39,6 +39,6 @@ set -e [ -n "${0%/*}" ] && cd "${0%/*}" echo running xml2rfc -xml2rfc draft-terriberry-oggopus.xml draft-terriberry-oggopus.html & -xml2rfc draft-terriberry-oggopus.xml +xml2rfc draft-ietf-codec-oggopus.xml draft-ietf-codec-oggopus.html & +xml2rfc draft-ietf-codec-oggopus.xml wait diff --git a/doc/draft-terriberry-oggopus.xml b/doc/draft-ietf-codec-oggopus.xml similarity index 95% rename from doc/draft-terriberry-oggopus.xml rename to doc/draft-ietf-codec-oggopus.xml index 7ca2970bf0ad0505ba60bcaf5f6eb48e947b98b5..9f6cbbe0fca6d13d5f6f5739a8b4b4a4f32a4fe0 100644 --- a/doc/draft-terriberry-oggopus.xml +++ b/doc/draft-ietf-codec-oggopus.xml @@ -1,16 +1,16 @@ <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE rfc SYSTEM 'rfc2629.dtd' [ -<!ENTITY rfc2119 PUBLIC '' 'https://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'> -<!ENTITY rfc3533 PUBLIC '' 'https://xml.resource.org/public/rfc/bibxml/reference.RFC.3533.xml'> -<!ENTITY rfc3534 PUBLIC '' 'https://xml.resource.org/public/rfc/bibxml/reference.RFC.3534.xml'> -<!ENTITY rfc4732 PUBLIC '' 'https://xml.resource.org/public/rfc/bibxml/reference.RFC.4732.xml'> -<!ENTITY rfc3629 PUBLIC '' 'https://xml.resource.org/public/rfc/bibxml/reference.RFC.3629.xml'> -<!ENTITY rfc6381 PUBLIC '' 'https://xml.resource.org/public/rfc/bibxml/reference.RFC.6381.xml'> -<!ENTITY rfc6716 PUBLIC '' 'https://xml.resource.org/public/rfc/bibxml/reference.RFC.6716.xml'> +<!ENTITY rfc2119 PUBLIC '' 'https://xml2rfc.tools.ietf.org/tools/xml2rfc/public/rfc/bibxml/reference.RFC.2119.xml'> +<!ENTITY rfc3533 PUBLIC '' 'https://xml2rfc.tools.ietf.org/tools/xml2rfc/public/rfc/bibxml/reference.RFC.3533.xml'> +<!ENTITY rfc3534 PUBLIC '' 'https://xml2rfc.tools.ietf.org/tools/xml2rfc/public/rfc/bibxml/reference.RFC.3534.xml'> +<!ENTITY rfc3629 PUBLIC '' 'https://xml2rfc.tools.ietf.org/tools/xml2rfc/public/rfc/bibxml/reference.RFC.3629.xml'> +<!ENTITY rfc4732 PUBLIC '' 'https://xml2rfc.tools.ietf.org/tools/xml2rfc/public/rfc/bibxml/reference.RFC.4732.xml'> +<!ENTITY rfc6381 PUBLIC '' 'https://xml2rfc.tools.ietf.org/tools/xml2rfc/public/rfc/bibxml/reference.RFC.6381.xml'> +<!ENTITY rfc6716 PUBLIC '' 'https://xml2rfc.tools.ietf.org/tools/xml2rfc/public/rfc/bibxml/reference.RFC.6716.xml'> ]> <?rfc toc="yes" symrefs="yes" ?> -<rfc ipr="trust200902" category="std" docName="draft-terriberry-oggopus-01"> +<rfc ipr="trust200902" category="std" docName="draft-ietf-codec-oggopus-00"> <front> <title abbrev="Ogg Opus">Ogg Encapsulation for the Opus Audio Codec</title> @@ -59,7 +59,7 @@ </address> </author> -<date day="16" month="July" year="2012"/> +<date day="19" month="November" year="2012"/> <area>RAI</area> <workgroup>codec</workgroup> @@ -269,7 +269,7 @@ However, a decoder will want to skip these samples after decoding them. <t> A 'pre-skip' field in the ID header (see <xref target="id_header"/>) signals - the number of samples which should be skipped (decoded but discarded) at the + the number of samples which SHOULD be skipped (decoded but discarded) at the beginning of the stream. This provides sufficient history to the decoder so that it has already converged before the stream's output begins. @@ -375,11 +375,22 @@ A decoder MUST reject as invalid any stream where the granule position is of stream' flag set. It MAY defer this action until it decodes the last packet completed on that page. -If that page has the 'end of stream' flag set, a demuxer can work forwards from - the granule position '0', but MUST reject as invalid any stream where the - granule position is smaller than the 'pre-skip' amount. +</t> + +<t> +If that page has the 'end of stream' flag set, a demuxer MUST reject as invalid + any stream where its granule position is smaller than the 'pre-skip' amount. This would indicate that more samples should be skipped from the initial decoded output than exist in the stream. +If the granule position is smaller than the number of decoded samples produced + by the packets that complete on that page, then a demuxer MUST use an initial + granule position of '0', and can work forwards from '0' to timestamp + individual packets. +If the granule position is larger than the number of decoded samples available, + then the demuxer MUST still work backwards as described above, even if the + 'end of stream' flag is set, to determine the initial granule position, and + thus the initial PCM sample position. +Both of these will be greater than '0' in this case. </t> </section> @@ -403,7 +414,8 @@ This 'pre-roll' is separate from, and unrelated to, the 'pre-skip' used at the If the point 80 ms prior to the seek target comes before the initial PCM sample position, the decoder SHOULD start decoding from the beginning of the stream, applying pre-skip as normal, regardless of whether the pre-skip is - larger or smaller than 80 ms. + larger or smaller than 80 ms, and then continue to discard the samples + required to reach the seek target (if any). </t> </section> @@ -1106,7 +1118,8 @@ The authors agree to grant third parties the irrevocable right to copy, use, <reference anchor="vorbis-trim" target="http://xiph.org/vorbis/doc/Vorbis_I_spec.html#x1-130000A.2"> <front> -<title>The Vorbis I Specification, Appendix A Embedding Vorbis into an Ogg stream</title> +<title>The Vorbis I Specification, Appendix A: Embedding Vorbis into an + Ogg stream</title> <author initials="C." surname="Montgomery" fullname="Christopher "Monty" Montgomery"/> <date month="November" year="2008"/>