Currently, we VarInt encode the PTS in the simple hang container. This is quite overkill and makes it slightly more difficult to build, as media layers need to implement QUIC VarInts now for a single value.
This is actually a good test for a new container enum we should add to the catalog. We should create a container: "raw" that uses a u64 while container: "legacy" uses a varint. In the (near) future we would add fmp4 and eventually loc.
The first step would be to add decode support for a new container field. If the field is detected, we change this line to read 8 bytes instead of a varint number of bytes. Same on the Rust side although that is less immediately important (used by gstreamer).
The implementation should be generic enough that we can add multiple containers in the future.
Currently, we VarInt encode the PTS in the simple
hangcontainer. This is quite overkill and makes it slightly more difficult to build, as media layers need to implement QUIC VarInts now for a single value.This is actually a good test for a new
containerenum we should add to the catalog. We should create acontainer: "raw"that uses a u64 whilecontainer: "legacy"uses a varint. In the (near) future we would addfmp4and eventuallyloc.The first step would be to add decode support for a new container field. If the field is detected, we change this line to read 8 bytes instead of a varint number of bytes. Same on the Rust side although that is less immediately important (used by gstreamer).
The implementation should be generic enough that we can add multiple containers in the future.