gstreamer rtp stream h264 multicast with multiple clients

Gérôme Frésia gerome.fresia at gmail.com
Sat May 20 06:26:13 UTC 2017


Hello,

I have the following problem with gstreamer 1.12:

gst-server
gst-launch-1.0 filesrc location=$H264 ! qtdemux ! h264parse ! rtph264pay config-interval=1 ! udpsink host=MULTICAST_IP port=PORT

gst-client 1
gst-launch-1.0 uridecodebin uri=sdp:///path_sdp ! videoconvert ! xvimagesink

gst-client 2
gst-launch-1.0 uridecodebin uri=sdp:///path_sdp ! videoconvert ! xvimagesink

My sdp file looks like:
v=0
o=- 1188340656180883 1 IN IP4 MULTICAST_IP
s= session
i= Test
c= IN IP4 MULTICAST_IP
t=0 0 
a=tool:Gstreamer
a=recvonly
a=type:broadcast
a=charset:UTF-8
m=video PORT RTP/AVP 96
b=RS:0
b=RR:0
a=rtpmap:96 H264/90000
a=framerate:30
a=fmtp:96 media=video;

When I stop one client, after few second, the video of the second client is closed.

I found that problem is related to the rtcp. If I add return true at gst-plugins-good/gst/rtpmanager/gstrtpsession.c in the beginning of  method start_rtcp_thread (in order to not start rtcp_thread), the second client video is OK.

Why the first client is impacted by the second client disconnection ?
Why the rtcp stream of the second client is listen by the first client ?

Thanks you


More information about the gstreamer-devel mailing list