Page 1 of 1

Problems playing RTP stream using SDP

Posted: 10 Feb 2013 23:28
by lucasweb
I currently have an Android application that is capturing video from the camera and streaming it over RTP. I do not use RTSP.

I have created a SDP file that describes the RTP feed. I can open the SDP file in Quicktime 7 and can see the stream, attempting to open the SDP file in VLC does not work. I get the following error:

"live555 demux error: no data received in 10s, aborting"

I am monitoring the RTP packets using Wireshark and can see the packets on the network (see example below):

Code: Select all

281956 2545.589171000 10.0.1.25 10.0.1.150 UDP 1442 Source port: 54405 Destination port: 51372
Quicktime 7 does not seem to have a problem binding to the destination port in the SDP and playing the stream but I see the following ICMP packet when attempting to use VLC:

Code: Select all

286674 2925.162140000 10.0.1.150 10.0.1.25 ICMP 70 Destination unreachable (Port unreachable)
My SDP file contains:

Code: Select all

v=0 o=- 1360349812962 1360349812962 IN IP4 10.0.1.25 s=Unnamed i=N/A c=IN IP4 10.0.1.150 t=0 0 a=recvonly m=video 51372 RTP/AVP 96 b=RR:0 a=rtpmap:96 H264/90000 a=fmtp:96 packetization-mode=1;profile-level-id=42c01e;sprop-parameter sets=Z0LAHukBQHsg,aM4G4g==;
I have been able to get the same stream to play if I use RTSP. When I do this, the port defined in 'm' is ignored and the client port returned in the SETUP response is used.

What do I need to do to get the stream to play in VLC using just the SDP file?

I've tried using the argument '--rtp-client-port=51326' when starting VLC but it does not seem to make a difference.

Many thanks in advance.

Re: Problems playing RTP stream using SDP

Posted: 11 Feb 2013 17:45
by RĂ©mi Denis-Courmont
live555 is not receiving data. Either this is a bug in the version of live555 is your VLC build, or this is networking/firewalling.

Re: Problems playing RTP stream using SDP

Posted: 11 Feb 2013 19:13
by lucasweb
It appears that VLC (at least the way I'm using it) does not use the client port you specify in the SDP, it always assigns it own port that it expects the RTP packets to be delivered on.

I changed my approach to allow me to capture the destination port that VLC assigns and start my RTP feed using that port as the destination and it worked. This is not an ideal solution.

Does any one know how to get VLC to use the destination port in the SDP file?