rtprtxsend: run a new GstTask on the src pad
authorGeorge Kiagiadakis <george.kiagiadakis@collabora.com>
Wed, 15 Jan 2014 08:46:14 +0000 (09:46 +0100)
committerWim Taymans <wtaymans@redhat.com>
Tue, 21 Jan 2014 13:54:01 +0000 (14:54 +0100)
commit133913a11ae35656797a7101ad0e01d484bea46b
treefc5004613252c1c2c4de4e7a3096bbef4183c900
parent4480a258448fbbde926bae42e10861edd05ee876
rtprtxsend: run a new GstTask on the src pad

The reason behind this is to minimize the retransmission delay.
Previously, when a NACK was received, rtprtxsend would put a
retransmission packet in a queue and it would send it from chain(),
i.e. only after a new buffer would arrive.

This unfortunately was causing big delays, in the order of 60-100 ms,
which can be critical for the receiver side.

By having a separate GstTask for pushing buffers out of rtxsend,
we can push buffers out right after receiving the event, without
waiting for chain() to get called.
gst/rtpmanager/gstrtprtxsend.c
gst/rtpmanager/gstrtprtxsend.h