Skip to content

Commit 8ada051

Browse files
authored
Extend EncodedVideoChunkMetadata for Spatial Scalability
Fixes w3c#619 Rebase and update of PR w3c#654
1 parent 1203950 commit 8ada051

File tree

1 file changed

+27
-2
lines changed

1 file changed

+27
-2
lines changed

Diff for: index.src.html

+27-2
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,10 @@
133133
:: A grouping of {{EncodedVideoChunk}}s whose timestamp cadence produces a
134134
particular framerate. See {{VideoEncoderConfig/scalabilityMode}}.
135135

136+
: <dfn>Spatial Layer</dfn>
137+
:: A grouping of {{EncodedVideoChunk}}s which produces a particular
138+
resolution. See {{VideoEncoderConfig/scalabilityMode}}.
139+
136140
: <dfn>Progressive Image</dfn>
137141
:: An image that supports decoding to multiple levels of detail, with lower
138142
levels becoming available while the encoded data is not yet fully buffered.
@@ -1652,11 +1656,20 @@
16521656
|svc|.{{SvcOutputMetadata/temporalLayerId}}.
16531657
4. Assign |svc| to
16541658
|chunkMetadata|.{{EncodedVideoChunkMetadata/svc}}.
1655-
8. If |encoderConfig|.{{VideoEncoderConfig/alpha}} is set to `"keep"`:
1659+
8. If |encoderConfig|.{{VideoEncoderConfig/scalabilityMode}}
1660+
describes multiple [=spatial layers=]:
1661+
1. Let |svc| be a new {{SvcOutputMetadata}} instance.
1662+
2. Let |spatial_layer_id| be the zero-based index describing the
1663+
spatial layer for |output|.
1664+
3. Assign |spatial_layer_id| to
1665+
|svc|.{{SvcOutputMetadata/spatialLayerId}}.
1666+
4. Assign |svc| to
1667+
|chunkMetadata|.{{EncodedVideoChunkMetadata/svc}}.
1668+
9. If |encoderConfig|.{{VideoEncoderConfig/alpha}} is set to `"keep"`:
16561669
1. Let |alphaSideData| be the encoded alpha data in |output|.
16571670
2. Assign |alphaSideData| to
16581671
|chunkMetadata|.{{EncodedVideoChunkMetadata/alphaSideData}}.
1659-
9. Invoke {{VideoEncoder/[[output callback]]}} with |chunk| and
1672+
10. Invoke {{VideoEncoder/[[output callback]]}} with |chunk| and
16601673
|chunkMetadata|.
16611674
</dd>
16621675
<dt><dfn>Reset VideoEncoder</dfn> (with |exception|)</dt>
@@ -1704,6 +1717,9 @@
17041717

17051718
dictionary SvcOutputMetadata {
17061719
unsigned long temporalLayerId;
1720+
unsigned long spatialLayerId;
1721+
unsigned long long frameId;
1722+
sequence <unsigned long long> dependencies;
17071723
};
17081724
</xmp>
17091725

@@ -1723,7 +1739,16 @@
17231739
:: A number that identifies the [=temporal layer=] for the associated
17241740
{{EncodedVideoChunk}}.
17251741

1742+
: <dfn dict-member for=SvcOutputMetadata>spatialLayerId</dfn>
1743+
:: A number that identifies the [=spatial layer=] for the associated
1744+
{{EncodedVideoChunk}}.
1745+
1746+
: <dfn dict-member for=SvcOutputMetadata>frameId</dfn>
1747+
:: A number that identifies the associated {{EncodedVideoChunk}}.
17261748

1749+
: <dfn dict-member for=SvcOutputMetadata>dependencies</dfn>
1750+
:: A sequence containing the {{frameId}} values that the associated {{EncodedVideoChunk}} depends on.
1751+
17271752
Configurations{#configurations}
17281753
===============================
17291754

0 commit comments

Comments
 (0)