[FFmpeg-devel] Realmedia patch
Tue Sep 9 17:00:52 CEST 2008
Ronald S. Bultje wrote:
>> Are you really sure about this? I've seen real servers handling this
>> properly (that is, accepting requests with the correct "Transport:"
>> tag and replying with a correct "Transport:").
> SETUP rtsp://streamr.hitpops.jp/ngc/mov/m0609.mov/streamid=0 RTSP/1.0
> Transport: x-pn-tng/TCP;mode=play
> RealChallenge2: d5273de0821265735b2910a6cbe0406201d0a8e3, sd=d38651c4
> CSeq: 5
> line='RTSP/1.0 200 OK'
> line='CSeq: 5'
> line='Date: Mon, 08 Sep 2008 21:11:37 GMT'
> line='Session: 276998441-5'
> line='Reconnect: true'
> line='RealChallenge3: 1f1f861dfc36d2d379d74c951ba1f8bd4f213d09,sdr=18fd741f'
> line='RDTFeatureLevel: 2'
> line='Transport: x-pn-tng/tcp;interleaved=0'
Ugh... This is... Broken :(
So, the server says that it is going to send an RDT stream, but it really
sends RTP. If the server is returning wrong information, I do not really
know what to do...
I've just been told that x-pn-tng is old and deprecated, and the new
thing should be "x-real-rdt"... Can you try it to see if it makes any
> So Transport: is unrelated to the internal
> datastream format, it just distinguishes TCP vs. UDP etc.
It looks like real decided to change the meaning of a standard RTSP
attribute... I am wondering why they are calling this bastardized protocol
>> So: if you see the "IsRealDataType" tag set to 1, you can guess that
>> the server supports RDT, and you can ask for it. Otherwise, you just
>> ask for regular RTP (RTP/AVP, etc...). If the guess is correct, the
>> server will reply with a success, otherwise the setup will fail and
>> you can try to ask for a different transport.
> I will do this. Code change in rtsp.c should be minimal and it will
> contain little to no Real-specific code (just the hooks for it). I'll
> probably move the relevant code to a new file, real_rtsp.c or
> rtsp_real.c or so, just to make it clear in code and everything that
> it is unrelated to RDT, but also not related to standard RTSP.
More information about the ffmpeg-devel