Using ffplay with RTSP and source-specific multicast

Viewed 27

We are trying to use ffplay to join a live video source in a network that uses IGMPv3 source-specific multicast.

If we use an SDP file this works fine and wireshark shows that ffplay correctly sends a source-specific multicast membership report.

However, when we try to join the same source using RTSP, ffplay seems to ignore the source-specific address contained in the SDP response to RTSP DESCRIBE and fails because it tries to join for any source. This is the command used:

ffplay -loglevel debug -rtsp_transport udp_multicast -protocol_whitelist rtp,udp,tcp -i rtsp://[username:password]@[ip address]/stream0

The SDP response as reported by ffplay includes:

a=source-filter: incl IN IP4 * [ssm ip address]

The only error reported by ffplay is:

Failed to parse interval end specification ''

Wireshark shows that ffplay is not performing an SSM join:

Membership Report / Join group [group IP address] for any sources

Further details in the screenshot below. Are we doing something wrong, is this a feature of ffplay or a potential bug?

I note that libavformat/rtsp.h contains the comment /** The following are used only in SDP, not RTSP */ against code for sdp port, source-specific multicast addresses, etc. I’m not sure if that hints at our issue being because of a feature in ffmpeg.

ffplay using rtsp and ssm

0 Answers
Related