Page 1 of 1

Forcing the trackID

Posted: 07 Mar 2009 18:52
by heruan
I have an IP Camera (Vivotek 7142) which offers a RTSP stream (rtsp://camera-ip/live.sdp) in MPEG4. I can watch this stream without problems with VLC. Then, I have a Grandstream GXV-3000 phone, with an LCD screen and the possibility to watch an H.264 RTSP stream. To watch the camera stream on the phone LCD screen, I set up a server PC with this command:

Code: Select all

$ cvlc rtsp://camera-ip/live2.sdp --sout '#transcode{vcodec=h264,vb=800,scale=1,acodec=mp4a,ab=128,channels=2}:duplicate{dst=rtp{dst=server-ip,port=1234,sdp=rtsp://server-ip:8554/live.sdp}}'
From another VLC instance I can see that stream correctly on rtsp://server-ip:8554/live.sdp, but NOT from the phone. Debugging with tcpdump, I noticed the phone's request is rtsp://server-ip/live.sdp/trackID=1 while VLC offers a trackID=0, and so VLC replies with a 404 not found error.

So, how can I force VLC to offer a trackID=1 instead of 0?

Re: Forcing the trackID

Posted: 07 Mar 2009 19:34
by Rémi Denis-Courmont
You can't.

Re: Forcing the trackID

Posted: 07 Mar 2009 20:13
by heruan
Hm... And what does that trackID stand for? Can I generate a fake trackID=0 to increase the index and place the real stream on trackID=1?

Re: Forcing the trackID

Posted: 08 Mar 2009 08:18
by Rémi Denis-Courmont
trackID is an arbitrary URL that the server can set however it wants, consistent with the SDP control parameters.

Other RTSP servers don't even use that syntax at all. Anything that assumes trackID=1 is simply plain broken.