Files
livekit/pkg
Raja Subramanian 2e71fba3da Prevent negative timestamp diff (#595)
Found another reason for potential stalling on layer switch up.

When switching up, it is possible that the key frame of the packet
at higher layer arrives very close to a packet in the currently
forwarded layer.

An inversion happens when higher layer packet arrives earlier
(as timestamped at receicver), but gets scheduled for forwarding
later (as seen by forwarder).

Because of the order of processing goroutines,
it is possible to have negative diff when trying to adjust
RTP timestamps for layer switch. A negative diff results in
large jump in RTP timestamp. Client stalls, sends PLI three seconds
later (3 seconds is a Chrome thing, not sure about others), waits
for another key frame and starts again. In the mean time, the
video is frozen.
2022-04-06 10:18:41 +05:30
..
2022-03-29 10:29:54 +08:00
2022-03-30 13:49:53 -07:00
2022-04-04 21:37:10 +05:30
2022-04-05 20:42:06 +05:30
2022-03-02 19:08:07 +05:30