How to capture a GstRTPRetransmission event on the client's side

Sebastian Dröge sebastian at centricular.com
Sun May 17 09:15:04 PDT 2015


On So, 2015-05-17 at 14:46 +0300, Panagiotis Mousouliotis wrote:
> Hello,
> 
> I use this pair of client-server pipelines:
> 
> server:
> gst-launch-1.0 -v udpsrc port=2000 ! application/x-rtp,payload=127  !
> rtpjitterbuffer latency=50 do-retransmission=true ! rtph264depay !
> h264parse ! avdec_h264 ! xvimagesink sync=false
> 
> client:
> gst-launch-1.0 -v v4l2src device=/dev/video1 !
> video/x-h264,width=640,height=480,framerate=30/1 ! h264parse ! rtph264pay
> pt=127 ! rtprtxqueue ! udpsink host=localhost port=2000 sync=false
> 
> and I would like somehow to capture (in my code) on the client's side the
> GstRTPRetransmission event, which is sent upstream by the rtpjitterbuffer
> element.

You can use a pad probe to catch all upstream events on the sinkpad of
the jitterbuffer or the srcpad of the udpsrc.

To make RTX work, you should send those events to the sender via RTCP
though. See the examples in gst-plugins-good/tests/examples/rtp. Ideally
the client/server rtpaux examples.

-- 
Sebastian Dröge, Centricular Ltd · http://www.centricular.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 949 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150517/14a54d93/attachment-0001.sig>


More information about the gstreamer-devel mailing list