[vlc] Re: RTSP + RTP + SDP - what does vlc expect?

Kim Schulz kim at schulz.dk
Wed Mar 7 11:23:01 CET 2007




On Tue, 6 Mar 2007 15:59:01 +0100, Kim Schulz <kim at schulz.dk> wrote:
> Hi
> I am working on a very basic RTSP server which is supposed to serve mpeg-4
> visual simple profile stream.
> I have most of the negotiation up, but it does not look like vlc wants to
> accept the data I send it when playing.
> this is what my negotiation looks like (from vlc console):
> 
[snip]
> now I would expect that I could send the video data (RTP) via UDP to port
> 8888, but it seems like it is not getting into vlc as expected.
> It this not what I am supposed to do or?

ok so now I have added the c= option to my SDP and it now looks like this: 

===========================================================================
Sending request: OPTIONS rtsp://10.123.10.30:9999 RTSP/1.0
CSeq: 29
User-Agent: VLC media player (LIVE555 Streaming Media v2006.10.27)


Received OPTIONS response: RTSP/1.0 200 OK
CSeq: 29
Public: DESCRIBE, SETUP, TEARDOWN, PLAY


Sending request: DESCRIBE rtsp://10.123.10.30:9999 RTSP/1.0
CSeq: 30
Accept: application/sdp
User-Agent: VLC media player (LIVE555 Streaming Media v2006.10.27)


Received DESCRIBE response: RTSP/1.0 200 OK
CSeq: 30
Content-Type: application/sdp
Content-Length: 178


Need to read 178 extra bytes
Read 178 extra bytes: v=0
o=CSR 2890844526 2890842807 IN IP4 10.123.10.30
s=CSR DEMO
t=0 0
c=IN IP4 10.123.10.30
m=video 8888 RTP/AVP 98
a=rtpmap:98 MP4V-ES/90000
a=fmtp:98 profile-level-id=1

[00000364] live555 demuxer debug: RTP subsession 'video/MP4V-ES'
Sending request: SETUP rtsp://10.123.10.30:9999/ RTSP/1.0
CSeq: 31
Transport: RTP/AVP;unicast;client_port=8888-8889
User-Agent: VLC media player (LIVE555 Streaming Media v2006.10.27)


Received SETUP response: RTSP/1.0 200 OK
CSeq: 31
Date: 6 Mar 2007 14:15:01 CET
Session: 123456789
Transport: RTP/AVP;unicast;client_port=8888-8889


Sending request: PLAY rtsp://10.123.10.30:9999 RTSP/1.0
CSeq: 32
Session: 123456789
Range: npt=0.000-
User-Agent: VLC media player (LIVE555 Streaming Media v2006.10.27)


Received PLAY response: RTSP/1.0 200 OK
CSeq: 32
Session: 123456789
Session: 123456789
Range: npt=0.000-


[00000363] main input debug: selecting program id=0
[00000364] main demuxer debug: using access_demux module "live555"
[00000363] main input debug: looking for a subtitle file in C:\Program Fil
es\VideoLAN\VLC\
[00000365] main decoder debug: looking for decoder module: 27 candidates
[00000365] ffmpeg decoder debug: libavcodec already initialized
[00000365] ffmpeg decoder debug: postprocessing disabled
[00000365] ffmpeg decoder debug: using direct rendering
[00000365] ffmpeg decoder debug: ffmpeg codec (MPEG-4 Video) started
[00000365] main decoder debug: using decoder module "ffmpeg"
[00000365] main decoder debug: thread 4300 (decoder) created at priority 0
 (input/decoder.c:159)
[00000363] main input debug: `rtsp://10.123.10.30:9999' successfully opened
===========================================================================

after this I start sending RTP data via UDP packets to port 8888, but vlc does 
not seem to get this (the data statistics shows zero activity). 
after 10sec I get this from vlc:
===========================================================================
[00000364] live555 demuxer warning: no data received in 10s. Switching to
TCP
Sending request: TEARDOWN rtsp://10.123.10.30:9999 RTSP/1.0
CSeq: 33
Session: 123456789
User-Agent: VLC media player (LIVE555 Streaming Media v2006.10.27)
...
===========================================================================

isn't this how it is supposed to work, where the RTSP server streams the UDP packets
to the client on the port specified in the negotiation? 
Please note that I have both client and server on the same machine, so I am 
pretty sure that it isn't network problems. 
If I just ignore the SDP part and set vlc to play UDP/RTP on port 8888, then it 
vlc receives the data just fine (but dont know how to play it). 
this looks like the following in the console: 
===========================================================================
[00000363] main input debug: thread 4220 joined (input/input.c:412)
[00000293] main playlist debug: creating new input thread
[00000366] main input debug: waiting for thread completion
[00000366] main input debug: thread 4220 (input) created at priority 1 (in
put/input.c:265)
[00000366] main input debug: `udp://@:8888' gives access `udp' demux `' pa
th `@:8888'
[00000366] main input debug: creating demux: access='udp' demux='' path='@
:8888'
[00000367] main demuxer debug: looking for access_demux module: 0 candidat
es
[00000367] main demuxer warning: no access_demux module matched "udp"
[00000366] main input debug: creating access 'udp' path='@:8888'
[00000368] main access debug: looking for access2 module: 6 candidates
[00000368] access_udp access debug: opening server=:0 local=:8888
[00000368] main access debug: net: connecting to '[]:0@[]:8888'
[00000368] main access debug: looking for network module: 1 candidate
[00000368] ipv4 access debug: resolving :8888...
[00000368] ipv4 access debug: resolving :0...
[00000368] main access debug: using network module "ipv4"
[00000368] main access debug: removing module "ipv4"
[00000368] main access debug: using access2 module "access_udp"
[00000371] main private debug: pre buffering
[00000368] access_udp access debug: no RTP header detected
[00000366] main input debug: creating demux: access='udp' demux='' path='@
:8888'
[00000372] main demuxer debug: looking for demux2 module: 45 candidates
[00000372] ffmpeg demuxer debug: couldn't guess format
[00000372] ps demuxer warning: this does not look like an MPEG PS stream,
continuing anyway
[00000372] main demuxer debug: using demux2 module "ps"
[00000366] main input debug: looking for a subtitle file in C:\Program Fil
es\VideoLAN\VLC\
[00000368] access_udp access warning: unimplemented query in control
[00000366] main input debug: `udp://@:8888' successfully opened
[00000372] ps demuxer warning: garbage at input, trying to resync...
===========================================================================


any ideas? (and yes I still cant use the live555 streaming server)
-- 
Kim Schulz

-- 
This is the vlc mailing-list, see http://www.videolan.org/vlc/
To unsubscribe, please read http://www.videolan.org/support/lists.html



More information about the vlc mailing list