Open ianswett opened 9 months ago
After more consideration, I tend to think this is not an moqt issue, but it is one worth addressing in WARP. I'm happy to help with text if that's useful.
Keeping it open because I think it could end up being critical to client side ABR.
Two thoughts on this:
Capture Timestamp in Microseconds: Captures the wall-clock time of the encoded media frame in a 64-bit unsigned integer.
This differs from Christian's proposal in that it is a payload level versus QUIC-level timestamp. Additionally, it indicates when the Object was captured , not when it entered the sendQueue, although for real-time media these typically collapse to a similar time point.
Client side bandwidth estimation is a challenge when the client doesn't know when the sender was app-limited and when it was congestion control limited.
One solution is to add a TIMESTAMP frame that has a relative timestamp of when the packet was serialized/sent. It could also be useful to have a bool to indicate whether the sender was app-limited prior to the packet being sent.
Christian has a draft (https://www.ietf.org/archive/id/draft-huitema-quic-ts-08.html) that could be used for this purpose. The draft was written with the idea that it would be bundled with an ACK to allow removal of latency variability on the reverse path, but it seems like it could be bundled with some or all MOQ packets to improve client bandwidth estimation.