Subject: Re: [Cellar] re-formatting the Matroska Codec Mappings

From: Steve Lhomme <[email-masked]>
Date: Sat, 4 Feb 2017 14:48:06 +0100

2017-01-24 4:22 GMT+01:00 Dave Rice <[email-masked]>:
> Hi all,
>
> The documentation on how to document a Codec Mapping in Matroska has been
> integrated into the GitHub repo. Now here's a attempt to update the Codec
> Mapping page to use the new form:
> https://github.com/Matroska-Org/matroska-specification/pull/88. Some notes
> about the update:
>
> There are many informal questions left within the codec_specs document,
> usually listed with a “???”. Steve, Moritz, are these notes to self? Can we
> resolve or remove them? For example V_MS/VFW/FOURCC contains "Where is the
> Huffman table stored in HuffYUV, not AVISTREAMINFO ??? And the FourCC, not
> in AVISTREAMINFO.fccHandler ???” Also the definition for A_AC3 seems to
> question if there is any Private Data for that encoding "The private data is
> void ???”.

Yes, that should be removed.

The A_AC3 description could get some love. The ACM part can be dropped
but it leaves pretty much nothing. Since it must be a standardized
format we should link to that in one form or another.

I think it's better to accept this pull request and not delay separate
issues about the content.

> In some cases the original list of codec mappings was nested, I flattened it
> which increases clarify but also increases redundancy.
>
> The description for V_MPEG1, V_MPEG2, A_MPC, and S_TEXT/USF seem to imply
> that they are not yet defined, though their definitions are in early states.
>
> The pull request updates the form of the Codec Mappings, but isn’t intended
> to update or clarify all of the language (there’s still a lot to do there).
>
> And some questions:
>
> Should we define a structure to detail Private Data? For instance Private
> Data for V_MS/VFW/FOURCC contains a BITMAPINFOHEADER and for V_REAL contains
> a real_video_props_t. These structures are defined in linked references but
> is it worthwhile to define the structure within the Codec Mapping? There is
> a method for defining bitstream data already in the FFV1 specification
> (example) which we could adapt.

IMO it shouldn't. When the documentation is public/stable enough we
don't need to describe it again. It is needed when the mapping is not
trivial like removing parts, adding parts or voiding some parts.

> The definition for A_AAC/?????/??? implies that it applies to all A_AAC/*
> Codec Mappings and its description says "AAC audio always uses wFormatTag
> 0xFF” which implies that WAVEFORMATEX is used in the Private Data; however
> each definition for A_AAC/* says that the Private Data is void. So why does
> it need to be said that "AAC audio always uses wFormatTag 0xFF”? The A_PCM
> Codec Mappings reference wFormatTag as well.

I think it was a way to tell that AAC mapping corresponds to the 0xFF
wFormatTag in Windows ACM. I don't think we need to care about the ACM
correspondance anymore except when it's necessary to interpret the
mapping.

> V_Uncompressed references a KaxCodecColourSpace element but there isn’t such
> a thing. Is it intended to refer to the ColourSpace Element?

Yes and a lot more like Colour, MasteringMetadata and anything that
cannot be deduced by the codec itself.

> A_PCM/* references a KaxAudioBitDepth element. Is this meant to be the
> BitDepth Element?

Yes and how the channels are layed out although I'm not sure we have that yet.

> The specs list A_QUICKTIME/QDMC and A_QUICKTIME/QDM2 as deprecated and
> superseded by A_QUICKTIME. However we note deprecation with a date in the
> “Deprecation Date” value, but I’m unable to determine when that date was.
> Suggestions on a date to use or an alternate expression to note Codec
> deprecation?

Maybe Moritz know better but I don't know about these particular
formats and would guess they have never been used.

> Best Regards,
> Dave Rice
>
>
> _______________________________________________
> Cellar mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/cellar
>

Hi from FOSDEM.

-- 
Steve Lhomme
Matroska association Chairman