Subject: [Cellar] defining how to define codec support

From: "[email-masked]" <[email-masked]>
Date: Sat, 31 Dec 2016 14:53:25 -0500

Hi all,

From comments on the recent subtitle definition, I drafted a pull request [1] to better document how to define codec support in Matroska. Mostly this adds a new section called “Defining Matroska Codec Support” which is reviewable at GitHub in rendered form [2]. I started to document how to construct a Codec ID and broke it down into the concepts of a Prefix, Major ID, Minor ID, Micro ID, and Delimiter. If any ABNF authors want to volunteer, it may be useful to rework the Codec ID definition in ABNF.

I also divided the vague concept of Codec Description into three parts Description, Citation (we should reference the specification of the codec), and Initialization (to specifically define the data to be stored in CodecPrivate or CodecState).

Once the above revisions are supported, we can rework the existing codec specs into this form.

Also I notice that in many places the word “Codec” is used when it seems that “Encoding” is intended. For instance if many Codecs all encode the same encoding, then the Codec ID for each it the same although the Codecs are different. Should this be the Encoding ID?

Best Regards,
Dave Rice

[1] https://github.com/Matroska-Org/matroska-specification/pull/79
[2] https://github.com/Matroska-Org/matroska-specification/blob/c4d2374c2104e8de961032035d6122451701ac05/codec_specs.md#defining-matroska-codec-support