The main difference with the WIP av1-in-mpegts mapping is that the payload data
is not startcode-escaped. Most of the rest is sensible usage of it:
* Custom AV1G (AV1 Gstreamer) registration descriptor instead of AV01
* AV1CodecConfigurationRecord is stored in the same 0x80 custom descriptor and
conforms fully to the isobmff spec (i.e. does not the HDR fields from the
provisional mpegts specification which conflict with that one).
* Data is stored as OBU
* Access Unit is the frame level (same as provisional mpegts mapping)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4442>
This is a custom mapping. There isn't much needed apart from that to store vp9
in mpeg-ts since the bitstream is self contained.
Since there are no official specification we don't want people to be mistaken in
believing that. Therefore that mapping is only used in the muxer if the (new)
property `enable-custom-mappings` is set to TRUE.
* The MPEG-TS Stream Type is Private Data (0x6) with the registration descriptor
set to `VP09`.
* The Access Unit are VP9 frames stored in PES packets
* As there is no emulation prevention byte in VP9 elementary stream, the can be
misdetection of PES start code. To avoid this, the start of a PES packet must
be signalled using the Payload Unit Start Indicator in the transport packet
header
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7707>