test-multicast & test-multicast2 doesn't work
I'm trying to establish multicast RSTP streaming using test-multicast and test-multicast2 server. I've compiled version 1.16.2.
I launch example multicast/multicast2 server from examples and I'm trying to connect to this server from another virtual machine using pipeline:
gst-launch-1.0 rtspsrc protocols=udp-mcast location=rtsp://192.168.10.110:8554/test latency=0 ! rtph264depay ! avdec_h264 ! videoconvert ! videoscale ! autovideosink and I get:
Setting pipeline to PAUSED ... Pipeline is live and does not need PREROLL ... Got context from element 'autovideosink0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\ gldisplayx11-0"; Progress: (open) Opening Stream Progress: (connect) Connecting to rtsp://192.168.10.110:8554/test Progress: (open) Retrieving server options Progress: (open) Retrieving media info Progress: (request) SETUP stream 0 Progress: (request) SETUP stream 1 Progress: (open) Opened Stream Setting pipeline to PLAYING ... New clock: GstSystemClock Progress: (request) Sending PLAY request Progress: (request) Sending PLAY request Progress: (request) Sent PLAY request ERROR: from element /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0: Could not read from resource. Additional debug info: gstrtspsrc.c(5448): gst_rtspsrc_reconnect (): /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0: Could not receive any UDP packets for 5,0000 seconds, maybe your firewall is blocking it. No other protocols to try. Execution ended after 0:00:05.110990765 Setting pipeline to PAUSED ... Setting pipeline to READY ... Setting pipeline to NULL ... Freeing pipeline ...
I've set multicast routing at those machines with ip route add 220.127.116.11/4 dev enp0s3
Unicast streaming works just fine. Some people seem to have the same problem, but there is no solution: