Opened 7 years ago

Last modified 6 years ago

#2171 closed defect

Joining a SSM multicast group using an SDP — at Initial Version

Reported by: dbrb2 Owned by:
Priority: normal Component: avformat
Version: git-master Keywords: sdp rtp rtsp
Cc: ben@bbarker.co.uk Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Hi, first bug report so apologies if format not quite correct.

When attempting to join a multicast group using SSM by providing ffmpeg with an sdp file as input, a tshark trace seems to show that the IGMPv3 requests issued do not in fact include the SSM addresses provided within the SDP, and hence the stream is not joined.

The original issue was raised here:

http://ffmpeg.gusari.org/viewtopic.php?f=12&t=766&p=1482#p1482

The command to replicate can be as simple as:

ffmpeg -i file.sdp

Where "file.sdp" is of the form:

v=0
m=video <multicast_port> RTP/AVP 96
c=IN IP4 <multicast_ip>
a=rtpmap:96 RTP/AVP
a=source-filter: incl IN IP4 <multicast_ip> <unicast_ip>

An example output for this would be:

ffmpeg version 1.1.1 Copyright (c) 2000-2013 the FFmpeg developers

built on Jan 22 2013 14:35:01 with gcc 4.1.2 (GCC) 20080704 (Red Hat 4.1.2-52)
configuration: --enable-gpl --enable-libvorbis --enable-x11grab --enable-libx264 --enable-nonfree --enable-version3
libavutil 52. 13.100 / 52. 13.100
libavcodec 54. 86.100 / 54. 86.100
libavformat 54. 59.106 / 54. 59.106
libavdevice 54. 3.102 / 54. 3.102
libavfilter 3. 32.100 / 3. 32.100
libswscale 2. 1.103 / 2. 1.103
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100

[sdp @ 0x1ba57500] Could not find codec parameters for stream 0 (Video: mpeg4, yuv420p): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[sdp @ 0x1ba57500] Estimating duration from bitrate, this may be inaccurate
file.sdp: could not find codec parameters

If tshark is run on the machine making this request, it can be seen that no source is specified in the IGMPv3 requests

456.597623 <local_ip> -> 224.0.0.22 IGMP V3 Membership Report / Join group <multicast_video_address> for any sources
458.410757 <local_ip> -> 224.0.0.22 IGMP V3 Membership Report / Join group <multicast_video_address> for any sources
466.613846 <local_ip> -> 224.0.0.22 IGMP V3 Membership Report / Leave group <multicast_video_address>

Whereas a successful join of this group (using another media player, for instance VLC) would yeild something similar to:

146.777143 <local_ip> -> 224.0.0.22 IGMP V3 Membership Report / Join group <multicast_video_address> for any sources
146.785156 <local_ip> -> 224.0.0.22 IGMP V3 Membership Report / Join group <multicast_video_address> for source {<unicast_video_address>}

Change History (0)

Note: See TracTickets for help on using tickets.