Skip to content

Commit

Permalink
Merge pull request #183 from AOMediaCodec/isobmff_ref
Browse files Browse the repository at this point in the history
SHA: b863e9d
Reason: push, by cconcolato

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
  • Loading branch information
cconcolato and github-actions[bot] committed Dec 11, 2023
1 parent 16dfb75 commit 26eedbd
Showing 1 changed file with 9 additions and 7 deletions.
16 changes: 9 additions & 7 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -1490,7 +1490,7 @@
</style>
<meta content="Bikeshed version 82ce88815, updated Thu Sep 7 16:33:55 2023 -0700" name="generator">
<link href="https://aomediacodec.github.io/av1-isobmff/" rel="canonical">
<meta content="df5721b6677c11b02132b5cd517440aae933f6e1" name="document-revision">
<meta content="b863e9d4d689a6392940f0bee3f00098ede2c0a9" name="document-revision">
<style>/* Boilerplate: style-autolinks */
.css.css, .property.property, .descriptor.descriptor {
color: var(--a-normal-text);
Expand Down Expand Up @@ -2153,7 +2153,7 @@ <h2 class="no-num no-toc no-ref heading settled" id="profile-and-date"><span cla
</div>
<div class="p-summary" data-fill-with="abstract">
<h2 class="no-num no-toc no-ref heading settled" id="abstract"><span class="content">Abstract</span></h2>
<p>This document specifies the storage format for <a data-link-type="biblio" href="#biblio-av1" title="AV1 Bitstream &amp; Decoding Process Specification">[AV1]</a> bitstreams in <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO Base Media File Format">[ISOBMFF]</a> tracks as well as in <a data-link-type="biblio" href="#biblio-cmaf" title="Information technology — Multimedia application format (MPEG-A) — Part 19: Common media application format (CMAF) for segmented media">[CMAF]</a> files.</p>
<p>This document specifies the storage format for <a data-link-type="biblio" href="#biblio-av1" title="AV1 Bitstream &amp; Decoding Process Specification">[AV1]</a> bitstreams in <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO base media file format">[ISOBMFF]</a> tracks as well as in <a data-link-type="biblio" href="#biblio-cmaf" title="Information technology — Multimedia application format (MPEG-A) — Part 19: Common media application format (CMAF) for segmented media">[CMAF]</a> files.</p>
</div>
<div data-fill-with="at-risk"></div>
<nav data-fill-with="table-of-contents" id="toc">
Expand Down Expand Up @@ -2247,11 +2247,11 @@ <h2 class="heading settled" data-level="1" id="bitstream-overview"><span class="
<p>Key Frames with the <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=2" id="ref-for-page=2①">show_frame</a> flag set to 1 have the additional property that after decoding the Key Frame, all frames following the Key Frame in the bitstream can be decoded. They are called <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=218" id="ref-for-page=218">Random Access Points</a> in <a data-link-type="biblio" href="#biblio-av1" title="AV1 Bitstream &amp; Decoding Process Specification">[AV1]</a>.</p>
<p>Key Frames with the <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=2" id="ref-for-page=2②">show_frame</a> flag set to 0 are called <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=218" id="ref-for-page=218①">Delayed Random Access Points</a>. <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=218" id="ref-for-page=218②">Delayed Random Access Points</a> have the additional property that if a future <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=218" id="ref-for-page=218③">Key Frame Dependent Recovery Point</a> exists, all frames following that <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=218" id="ref-for-page=218④">Key Frame Dependent Recovery Point</a> can be decoded. A <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=218" id="ref-for-page=218⑤">Key Frame Dependent Recovery Point</a> is a frame with <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=2" id="ref-for-page=2③">show_existing_frame</a> set to 1 that refers to a previous <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=218" id="ref-for-page=218⑥">Delayed Random Access Points</a>.</p>
<h2 class="heading settled" data-level="2" id="basic-encapsulation"><span class="secno">2. </span><span class="content">Basic Encapsulation Scheme</span><a class="self-link" href="#basic-encapsulation"></a></h2>
<p>This section describes the basic data structures used to signal encapsulation of <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=1" id="ref-for-page=1①">AV1 bitstreams</a> in <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO Base Media File Format">[ISOBMFF]</a> containers.</p>
<p>This section describes the basic data structures used to signal encapsulation of <a data-link-type="dfn" href="https://aomediacodec.github.io/av1-spec/av1-spec.pdf#page=1" id="ref-for-page=1①">AV1 bitstreams</a> in <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO base media file format">[ISOBMFF]</a> containers.</p>
<h3 class="heading settled" data-level="2.1" id="brands"><span class="secno">2.1. </span><span class="content">General Requirements &amp; Brands</span><a class="self-link" href="#brands"></a></h3>
<p>A file conformant to this specification satisfies the following:</p>
<ul>
<li data-md><span id="assert-3d78af2f">It SHALL conform to the normative requirements of <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO Base Media File Format">[ISOBMFF]</a></span>
<li data-md><span id="assert-3d78af2f">It SHALL conform to the normative requirements of <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO base media file format">[ISOBMFF]</a></span>
<li data-md><span id="assert-03258f22">It SHALL have the <dfn class="css" data-dfn-for="ISOBMFF Brand" data-dfn-type="value" data-export id="valdef-isobmff-brand-av01">av01<a class="self-link" href="#valdef-isobmff-brand-av01"></a></dfn> brand among the compatible brands array of the FileTypeBox</span>
<li data-md><span id="assert-bd1c6212">It SHALL contain at least one track using an <a data-link-type="dfn" href="#av1sampleentry" id="ref-for-av1sampleentry">AV1SampleEntry</a>, possibly transformed by encryption as specified in <a href="#CommonEncryption">§ 4 Common Encryption</a></span>
<li data-md><span id="assert-5e63f779">It SHOULD indicate a structural ISOBMFF brand among the compatible brands array of the FileTypeBox, such as <a class="property css" data-link-type="property" href="https://www.iso.org/standard/68960.html#" id="ref-for-something">iso6</a></span>
Expand Down Expand Up @@ -2286,7 +2286,7 @@ <h4 class="heading settled" data-level="2.2.4" id="av1sampleentry-semantics"><sp
<p class="note" role="note"><span class="marker">NOTE:</span> Parsers may ignore the value of the compressorname field. It is specified in this document simply for legacy and backwards compatibility reasons.</p>
<span id="assert-8d3f8e0c">The <dfn data-dfn-type="dfn" data-noexport id="config">config<a class="self-link" href="#config"></a></dfn> field SHALL contain an <a data-link-type="dfn" href="#av1codecconfigurationbox" id="ref-for-av1codecconfigurationbox①">AV1CodecConfigurationBox</a> that applies to the samples associated with this sample entry.</span>
<p class="note" role="note"><span class="marker">NOTE:</span> <span id="assert-8d7a614c">Multiple instances of <a data-link-type="dfn" href="#av1sampleentry" id="ref-for-av1sampleentry①">AV1SampleEntry</a> may be required when the track contains samples requiring a <a data-link-type="dfn" href="#av1codecconfigurationbox" id="ref-for-av1codecconfigurationbox②">AV1CodecConfigurationBox</a> with different characteristics.</span></p>
<span id="assert-d9e74d75">Optional boxes not specifically mentioned here can be present, in particular those indicated in the definition of the <a data-link-type="dfn" href="https://www.iso.org/standard/68960.html#" id="ref-for-something④">VisualSampleEntry</a> in <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO Base Media File Format">[ISOBMFF]</a>.</span>
<span id="assert-d9e74d75">Optional boxes not specifically mentioned here can be present, in particular those indicated in the definition of the <a data-link-type="dfn" href="https://www.iso.org/standard/68960.html#" id="ref-for-something④">VisualSampleEntry</a> in <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO base media file format">[ISOBMFF]</a>.</span>
<h3 class="heading settled" data-level="2.3" id="av1codecconfigurationbox-section"><span class="secno">2.3. </span><span class="content">AV1 Codec Configuration Box</span><a class="self-link" href="#av1codecconfigurationbox-section"></a></h3>
<h4 class="heading settled" data-level="2.3.1" id="av1codecconfigurationbox-definition"><span class="secno">2.3.1. </span><span class="content">Definition</span><a class="self-link" href="#av1codecconfigurationbox-definition"></a></h4>
<pre class="def">Box Type: <dfn data-dfn-type="dfn" data-export id="av1c">av1C<a class="self-link" href="#av1c"></a></dfn>
Expand Down Expand Up @@ -2490,7 +2490,7 @@ <h4 class="heading settled" data-level="2.8.4" id="metadatasamplegroupentry-sema
<p><dfn data-dfn-type="dfn" data-export id="metadata_type">metadata_type<a class="self-link" href="#metadata_type"></a></dfn> is a 8-bit field whose value is the value of the metadata_type field defined in <a data-link-type="biblio" href="#biblio-av1" title="AV1 Bitstream &amp; Decoding Process Specification">[AV1]</a>, when it is equal or lower than 255. metadata_type values above 255 are not supported by this sample group.</p>
<p><dfn data-dfn-type="dfn" data-export id="metadata_specific_parameters">metadata_specific_parameters<a class="self-link" href="#metadata_specific_parameters"></a></dfn> provides an additional part of the <code>grouping_type_parameter</code>, which MAY be used to distinguish different sample groups having the same <code>metadata_type</code> but different sub-parameters. <span id="assert-7d13a03d">In this version of the specification, <code>metadata_specific_parameters</code> is only defined when <code>metadata_type</code> is set to <code>METADATA_TYPE_ITUT_T35</code> in which case its value SHALL be set to the first 24 bits of the <code>metadata_itut_t35</code> structure.</span> <span id="assert-973cddc9">For other types of metadata, its value SHOULD be set to 0. In all cases, when the <code>grouping_type_parameter</code> is used, readers processing sample groups SHALL use the entire value of <code>grouping_type_parameter</code></span>.</p>
<h2 class="heading settled" data-level="3" id="cmaf"><span class="secno">3. </span><span class="content">CMAF AV1 track format</span><a class="self-link" href="#cmaf"></a></h2>
<p><a data-link-type="biblio" href="#biblio-cmaf" title="Information technology — Multimedia application format (MPEG-A) — Part 19: Common media application format (CMAF) for segmented media">[CMAF]</a> defines structural constraints on ISOBMFF files additional to <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO Base Media File Format">[ISOBMFF]</a> for the purpose of, for example, adaptive streaming or for protected files. Conformance to these structural constraints is signaled by the presence of the brands <code><a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something②⑥">cmfc</a></code> or <code><a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something②⑦">cmf2</a></code> in the <code>FileTypeBox</code>.</p>
<p><a data-link-type="biblio" href="#biblio-cmaf" title="Information technology — Multimedia application format (MPEG-A) — Part 19: Common media application format (CMAF) for segmented media">[CMAF]</a> defines structural constraints on ISOBMFF files additional to <a data-link-type="biblio" href="#biblio-isobmff" title="Information technology — Coding of audio-visual objects — Part 12: ISO base media file format">[ISOBMFF]</a> for the purpose of, for example, adaptive streaming or for protected files. Conformance to these structural constraints is signaled by the presence of the brands <code><a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something②⑥">cmfc</a></code> or <code><a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something②⑦">cmf2</a></code> in the <code>FileTypeBox</code>.</p>
<p class="note" role="note"><span class="marker">NOTE:</span> It is important to note that while the <code><a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something②⑧">cmf2</a></code> brand does not introduce any new requirements compared to the previously defined <code><a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something②⑨">cmfc</a></code> brand, it further restricts the <code><a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something③⓪">cmfc</a></code> constraints.</p>
<p>For compatibility reasons, when the <code><a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something③①">cmf2</a></code> brand is used, the <code><a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something③②">cmfc</a></code> brand SHOULD also be included in the <code>FileTypeBox</code>.</p>
<p>If a <a data-link-type="dfn" href="https://www.iso.org/standard/71975.html#" id="ref-for-something③③">CMAF Video Track</a> uses the brand <code>av01</code>, it is called a <dfn class="dfn-paneled" data-dfn-type="dfn" data-noexport id="cmaf-av1-track">CMAF AV1 Track</dfn> and the following constraints, defining the CMAF Media Profile for AV1, apply:</p>
Expand Down Expand Up @@ -2638,6 +2638,8 @@ <h2 class="heading settled" data-level="6" id="changelist"><span class="secno">6
<p><a href="https://github.com/AOMediaCodec/av1-isobmff/pull/142">Clarify the color info in the codecs string.</a></p>
<li data-md>
<p><a href="https://github.com/AOMediaCodec/av1-isobmff/pull/171">Make assert-id’s unique and add them to the previous version.</a></p>
<li data-md>
<p><a href="https://github.com/AOMediaCodec/av1-isobmff/pull/183">Use undated reference for ISOBMFF.</a></p>
</ul>
</main>
<div data-fill-with="conformance">
Expand Down Expand Up @@ -2924,7 +2926,7 @@ <h3 class="no-num no-ref heading settled" id="normative"><span class="content">N
<dt id="biblio-cmaf">[CMAF]
<dd><a href="https://www.iso.org/standard/71975.html"><cite>Information technology — Multimedia application format (MPEG-A) — Part 19: Common media application format (CMAF) for segmented media</cite></a>. Standard. URL: <a href="https://www.iso.org/standard/71975.html">https://www.iso.org/standard/71975.html</a>
<dt id="biblio-isobmff">[ISOBMFF]
<dd><a href="http://standards.iso.org/ittf/PubliclyAvailableStandards/c068960_ISO_IEC_14496-12_2015.zip"><cite>Information technology — Coding of audio-visual objects — Part 12: ISO Base Media File Format</cite></a>. December 2015. International Standard. URL: <a href="http://standards.iso.org/ittf/PubliclyAvailableStandards/c068960_ISO_IEC_14496-12_2015.zip">http://standards.iso.org/ittf/PubliclyAvailableStandards/c068960_ISO_IEC_14496-12_2015.zip</a>
<dd><a href="https://www.iso.org/standard/83102.html"><cite>Information technology — Coding of audio-visual objects — Part 12: ISO base media file format</cite></a>. Standard. URL: <a href="https://www.iso.org/standard/83102.html">https://www.iso.org/standard/83102.html</a>
<dt id="biblio-rfc2119">[RFC2119]
<dd>S. Bradner. <a href="https://datatracker.ietf.org/doc/html/rfc2119"><cite>Key words for use in RFCs to Indicate Requirement Levels</cite></a>. March 1997. Best Current Practice. URL: <a href="https://datatracker.ietf.org/doc/html/rfc2119">https://datatracker.ietf.org/doc/html/rfc2119</a>
<dt id="biblio-rfc6381">[RFC6381]
Expand Down

0 comments on commit 26eedbd

Please sign in to comment.