RTSP Streaming - Unsupported Transport

About encoding, codec settings, muxers and filter usage
noknok
Blank Cone
Blank Cone
Posts: 30
Joined: 08 Sep 2009 23:06

RTSP Streaming - Unsupported Transport

Postby noknok » 10 Sep 2009 20:58

Ok, I have a question in regards to HOW VLC handles it IP acquisition for the RTP Stream in RTSP.

We have inserted our own RTSP relay in the middle of the RTSP signaling because unfortunately while NAT forwards packets just fine, the unfortunate part is the smarter phones (blackjack, blackberry, etc) actually look at the SDP response for the signaling, whereas phones like a simple Samsung I737 doesnt look at the control signaling in the SDP. VLC inserts the local Unroutable IP address space in the SDP of the DESCRIBE response, and then the phones can not reach the server because they attempt to connect to the LOCAL IP of say 192.168.2.205 for the SETUP/PLAY control. (as you see the 127.0.0.1 and the 192.168.2.205 IP's used in the control= segments of the SDP)

So since some phones parse the actual SDP for this data, we have a relay, which in essence re-writes the SDP and messaging between CLIENT and VLC.

SDP returned by VLC is:

Code: Select all

RTSP/1.0 200 OK Server: vlc 1.0.1 Date: Thu, 10 Sep 2009 18:33:33 GMT Content-Type: application/sdp Content-Base: rtsp://192.168.2.205:8081/mysdp.sdp Content-Length: 627 Cache-Control: no-cache Cseq: 0 v=0 o=- 14867443389876337316 14867443389876337316 IN IP4 sml-workstation s=Unnamed i=N/A c=IN IP4 127.0.0.1 t=0 0 a=tool:vlc 1.0.1 a=recvonly a=type:broadcast a=charset:UTF-8 a=control:rtsp://192.168.2.205:8081/mysdp.sdp m=audio 8084 RTP/AVP 96 b=AS:48 b=RR:0 a=rtpmap:96 mpeg4-generic/48000 a=fmtp:96 streamtype=5; profile-level-id=15; mode=AAC-hbr; config=1188; SizeLength=13; IndexLength=3; IndexDeltaLength=3; Profile=1; a=control:rtsp://192.168.2.205:8081/mysdp.sdp/trackID=0 m=video 8082 RTP/AVP 97 b=AS:384 b=RR:0 a=rtpmap:97 H263-1998/90000 a=control:rtsp://192.168.2.205:8081/mysdp.sdp/trackID=1

Now when werun this thru the RELAY, we insert a "client_ip=x.x.x.x" in the transport line, so VLC will stream to the client and not our relay. But VLC rejects the message with unsupported transport. Any insight?

Here is the request and response, once run thru our RTSP relay:

SETUP rtsp://192.168.2.205:8081/mysdp.sdp/trackID=0 RTSP/1.0
CSeq: 1
Transport: RTP/AVP;unicast;client_ip=32.160.195.209;client_port=8084-8085
Blocksize: 1400
User-Network: Qualcomm
DeviceInfo: MSM6XX0
Supported: method.eos, com.pv.server_playlist
User-Agent: SAMSUNG-SGH-A737/UCHD2 SHP/VPP/R5 NetFront/3.4 SMM-MMS/1.2.0 profile/MIDP-2.0 configuration/CLDC-1.1

RTSP/1.0 461 Unsupported transport
Server: vlc 1.0.1
Date: Thu, 10 Sep 2009 18:33:35 GMT
Content-Length: 0
Cache-Control: no-cache
Cseq: 1

Shawn

noknok
Blank Cone
Blank Cone
Posts: 30
Joined: 08 Sep 2009 23:06

Re: RTSP Streaming - Unsupported Transport

Postby noknok » 11 Sep 2009 18:02

Well, I did some more research. The LIVE555 stack does not support the ability to stream to an assigned IP different than the source of the signaling. This was by choice on their part for security reasons (DOS attacks etc)

Anyway, coded a RTSP proxy daemon last night, and all works perfect for streaming RTSP to cell phones from behind a NAT.

All is perfect, except for the bug of no FPS transcoding on the streams (20 FPS input, and want 7 FPS output).

Maybe that bug can be looked at put in the next release?

Shawn

de_prince
Blank Cone
Blank Cone
Posts: 11
Joined: 09 Aug 2010 06:52

Re: RTSP Streaming - Unsupported Transport

Postby de_prince » 10 Aug 2010 05:31

Hi Shawn,

Can you give me hints on how to stream to by pass firewall with your methods? The Client is Nokia E63 (S60)

Thanks a bunch.

simon272
Blank Cone
Blank Cone
Posts: 21
Joined: 07 Apr 2010 15:38
VLC version: 1.0.1
Operating System: FreeBSD
Contact:

Re: RTSP Streaming - Unsupported Transport

Postby simon272 » 10 Aug 2010 22:57

2 noknok: can you post parameters you use to stream video to mobile devices through Internet?

Kind regards!

DuMONChIK
New Cone
New Cone
Posts: 1
Joined: 05 Nov 2010 17:53

Re: RTSP Streaming - Unsupported Transport

Postby DuMONChIK » 05 Nov 2010 17:57

...can you post parameters you use to stream video to mobile devices through Internet?
vlc -vv video-file.avi --sout="#transcode{vcodec=h264,venc=x264{keyint=5,profile=baseline,level=1.1},vb=300,width=320,height=240,fps=25,acodec=mp4a,ab=192,channels=2}:rtp{mp4a-latm,sdp=rtsp://0.0.0.0:8888/video.sdp}"

Tested on Nokia C6-00 and on Nokia N97.

jlundy82
New Cone
New Cone
Posts: 6
Joined: 03 Oct 2010 18:41

Re: RTSP Streaming - Unsupported Transport

Postby jlundy82 » 12 Nov 2010 21:53

noknok:

Is there anyway you (or anyone reading this) could explain how your daemon works? In particular, I think a lot of people are looking for a way to get RTSP working from behind a router. If I understand correctly, the code you wrote can intercept the RTSP headers and alter them to have a different IP address?


Return to “VLC stream-output (sout)”

Who is online

Users browsing this forum: No registered users and 24 guests