ngraziano / SharpRTSP

A RTSP handling library
Other
538 stars 180 forks source link

Is SharpRTSP support sending Receiver Report in UDP protocol? #42

Closed sinhngoc2008 closed 2 weeks ago

sinhngoc2008 commented 6 years ago

I'm using sharprtsp lib to build an application that consumes video from VLC RTSP server. I cannot send a correct Receiver Report to VLC server to keep the connection alive more than one minute. Please help me to solve it

RogerHardiman commented 6 years ago

I added some code to send Receiver Reports and it is in the RtspClientExample. But it may have bugs in and it only sends an empty Receiver Report.

Do you have an example VLC command line which starts the VLC RTSP Server so I can set up a test here in my office?

Thanks

sinhngoc2008 commented 6 years ago

This is the vlc command to start a VCL RTSP Server: cvlc -vvv --rtsp-tcp video.mkv :sout=#rtp{sdp=rtsp://192.168.0.16:8554/test} :no-sout-all :sout-keep --loop --ttl 1

or you can set up on the VLC GUI https://support.spinetix.com/wiki/Tutorial:Streaming_using_VLC

The VLC RTSP Server provides the RTCP packets on the UDP protocol Also, the SDP parser of your project is not correct in this case.

Please check it!

RogerHardiman commented 6 years ago

I have found the SDP parsing issue - Unsigned Int64 needed for Origin.

Now I have problems getting the SETUP command to work.

I'll need to find out what is wrong before I can look at the Receiver Report problem.

(I assume you have found and fixed these issues to get to the point where the Receiver Report has an error. Would you like to share the fixes you have done already?)

Thanks

RogerHardiman commented 6 years ago

Ok. I've got UDP streaming working. I receive the stream. On my setup it seems to stop after 10 or 15 seconds. So I've got something to work with.

I'm away this weekend so may be able to take a look some time next week.

ngraziano commented 6 years ago

I have change the RTSP keep alive from OPTIONS to GET_PARAMETER in commit 7529bd6.

For me it make VLC happy until the end of a file of more than 5 min, but the loop does not work.

The send of RTCP report in UDP is not implemented, we have to save the port number at SETUP response (and maybe source address) and create a dedicated UdpClient.

RogerHardiman commented 6 years ago

I've added another change to the RTSP Client Example. If the camera does not support GET_PARAMETER then it falls back to using OPTIONS

But as @ngraziano said, to send UDP RTCP RR Receiver Reports will require some additional code. We always welcome submissions from other developers

ikriz commented 5 years ago

Also Interested in the RTP over UDP implementation for the RTSP server, any indication when this may be implemented? Willing to spend some time on it just dont know where to start...

[update] I stand corrected I see you've been busy :)[/update]

ngraziano commented 2 weeks ago

Old bug report. I think all problem have been fixe so I close it.