diff --git a/codec_registry.src.html b/codec_registry.src.html index fa6587da..573cb266 100644 --- a/codec_registry.src.html +++ b/codec_registry.src.html @@ -184,6 +184,11 @@
+Title: H.263 WebCodecs Registration
+Repository: w3c/webcodecs
+Status: NOTE-ED
+Shortname: webcodecs-h263-codec-registration
+Level: none
+Group: mediawg
+ED: https://w3c.github.io/webcodecs/h263_codec_registration.html
+TR: https://www.w3.org/TR/webcodecs-h263-codec-registration/
+Editor: Yahweasel, Wereweasel https://wereweasel.com/
+
+Abstract: This registration is entered into the [[webcodecs-codec-registry]].
+ It describes, for H.263, (1) the fully qualified codec strings, (2) the
+ codec-specific {{EncodedVideoChunk}} [=EncodedVideoChunk/[[internal
+ data]]=] bytes, (3) the {{VideoDecoderConfig.description}} bytes, (4) the
+ values of {{EncodedVideoChunk}} [=EncodedVideoChunk/[[type]]=], and (5)
+ the naming convention used in this document.
+
+ The registration is not intended to include any information on whether a
+ codec format is encumbered by intellectual property claims. Implementers and
+ authors are advised to seek appropriate legal counsel in this matter if they
+ intend to implement or use a specific codec format. Implementers of
+ WebCodecs are not required to support the H.263 codec.
+
+ This registration is non-normative.
+
+Markup Shorthands:css no, markdown yes, dfn yes
+!Participate: Git Repository.
+!Participate: File an issue.
+!Version History: https://github.com/w3c/webcodecs/commits
+
+
++spec: WEBCODECS; urlPrefix: https://w3c.github.io/webcodecs/# + type: attribute + text: EncodedVideoChunkMetadata.decoderConfig; url: dom-encodedvideochunkmetadata-decoderconfig + for: EncodedVideoChunkType; text: key; url: dom-encodedvideochunktype-key + text: VideoDecoderConfig.description; url: dom-videodecoderconfig-description + type: dfn + for: EncodedVideoChunk; text: [[internal data]]; url: dom-encodedvideochunk-internal-data-slot + for: EncodedVideoChunk; text: [[type]]; url: dom-encodedvideochunk-type-slot + for: VideoEncoder; text: [[output callback]]; url: dom-videoencoder-output-callback-slot + type: interface + text: EncodedVideoChunk; url: encodedvideochunk + text: VideoEncoder; url: videoencoder + type: dictionary + text: VideoEncoderConfig; url: dictdef-videoencoderconfig + text: VideoDecoderConfig; url: dictdef-videodecoderconfig ++ +
+{
+ "H.263v1": {
+ "href": "https://www.itu.int/rec/T-REC-H.263-199603-S/en",
+ "title": "H.263: Video coding for low bit rate communication (03/96)",
+ "publisher": "ITU-T"
+ },
+ "H.263v2": {
+ "href": "https://www.itu.int/rec/T-REC-H.263-199802-S/en",
+ "title": "H.263: Video coding for low bit rate communication (02/98)",
+ "publisher": "ITU-T"
+ },
+ "H.263v3": {
+ "href": "https://www.itu.int/rec/T-REC-H.263-200501-I/en",
+ "title": "H.263: Video coding for low bit rate communication (01/2005)",
+ "publisher": "ITU-T"
+ }
+}
+
+
+Fully qualified codec strings {#fully-qualified-codec-strings}
+==============================================================
+
+The codec string begins with the prefix `"h263."`, with a suffix of 1 character
+describing the version of the specification: `"h263.1"` for the first revision
+([[H.263v1]]), `"h263.2"` for the second revision ([[H.263v2]]), or `"h263.3"`
+for the third revision ([[H.263v3]]). As the specifications are backwards
+compatible, an encoder can encode using an earlier revision than specified, and
+a decoder can decode using a later revision than specified.
+
+`"h263.3"`, but no prior revision, can further be suffixed with a `"."` and a
+one-character profile number, as specified in Annex X.2 of [[H.263v3]]. If a
+profile is not specified, then an encoder can use any optional features and a
+decoder needs to support all optional features. This can further be suffixed by
+a `"."` and a two-character level, as described in Table X.2 of [[H.263v3]]. If
+a level is not specified, then an encoder can support any level or can support
+formats other than those in any specified level, and a decoder needs to support
+any level and can support formats other than those in any specified level.
+
+As revisions of H.263 prior to H.263v3 do not have profiles or levels, if
+`"h263.1"` or `"h263.2"` is specified, then an encoder can support any optional
+features in the specified revision, and a decoder needs to support all optional
+features in the specified revision. The non-normative profiles and levels
+specified in Appendix II are not used.
+
+EncodedVideoChunk data {#encodedvideochunk-data}
+================================================
+
+{{EncodedVideoChunk}} [=EncodedVideoChunk/[[internal data]]=] is expected to be
+a picture as described in Section 5.1 of [[H.263v1]], [[H.263v2]], or
+[[H.263v3]], as appropriate for the used specification revision.
+
+VideoDecoderConfig description {#videodecoderconfig-description}
+================================================================
+
+{{VideoDecoderConfig.description}} is not used for this codec.
+
+EncodedVideoChunk type {#encodedvideochunk-type}
+================================================
+
+If an {{EncodedVideoChunk}}'s [=EncodedVideoChunk/[[type]]=] is
+{{EncodedVideoChunkType/key}}, then the {{EncodedVideoChunk}} is expected to
+contain an `INTRA` picture. The precise definition depends on the specification
+revision:
+
+H.263v1: `PTYPE`'s bit 9 (Picture Coding Type) is 0 (`INTRA`), as defined in
+Section 5.1.3 of [[H.263v1]].
+
+H.263v2, H.263v3: If `PTYPE`'s bits 6-8 are not set to 111, then `PTYPE`'s bit
+9 (Picture Coding Type) is 0 (`INTRA`), as defined in Section 5.1.3. If
+`PTYPE`'s bits 6-8 are set to 111, as defined in Section 5.1.3, then
+`PLUSPTYPE`'s `MPPTYPE`'s bits 1-3 (Picture Type Code) are 000 (`INTRA`), as
+defined in Section 5.1.4.3. Section numbers refer to [[H.263v2]] if the second
+revision is used, or [[H.263v3]] if the third revision is used.
+
+Notes on codec naming {#notes-on-codec-naming}
+==============================================
+
+This registration codifies only the unamended H.263 specification revisions as
+published by ITU-T. Each specification is named "H.263", so they are
+differentiated by revision numbers. The specifications do not formally have
+revision numbers, but the revision numbers used in this registration are
+commonly used. Each revision is materially identical to the previous revision
+with several separately published annexes added. This registration provides no
+means of specifying the annexes independently of the specification revisions in
+which they were included, so it is not possible to, for instance, specify
+baseline H.263 with Annexes A through J but not L through T. H.263v1 includes
+Annexes A through H, H.263v2 includes Annexes A through T, and H.263v3 includes
+Annexes A through X.
+
+H.263v2 is also known as H.263+ or H.263 1998. H.263v3 is also known as H.263++
+or H.263 2005.
+
+MPEG-4 Part 2 specifies a video encoding format which is backwards compatible
+with H.263 (H.263 streams can be decoded as MPEG-4 Part 2), but it is not
+forwards compatible (MPEG-4 Part 2 streams do not decode as H.263), and it is
+not covered by this registration.
+
+Privacy and Security Considerations {#privacy-and-security-considerations}
+==========================================================================
+
+Please refer to the [[WEBCODECS#privacy-considerations|Privacy Considerations]]
+and [[WEBCODECS#security-considerations|Security Considerations]] sections in
+[[WEBCODECS]].