SkyRocketToys / Sonix

Firmware for video board on skyviper
17 stars 19 forks source link

RTSP anomalies #8

Closed Consti10 closed 3 years ago

Consti10 commented 6 years ago

Hello, I am currently adding support for the SkyViper v2450 drone in my low latency fpv player https://www.rcgroups.com/forums/showthread.php?2873827-FPV_VR-Ultra-low-latency-for-FPV-Virtual-Reality-Android-App but am unable to get the live video feed via rtsp. I am using a simple self-made java rtsp library that has been tested succesfully with vlc as server, but no success with the sky viper as server so far. I have both checked a) the rtsp responses from the sky viper -> everything should be okay, but after PLAY command simply nothing arrives at the requested rtp port b) I even recorded the communication of both vlc client -> sky viper (which worked) and fpv-vr client -> sky viper (does not work, but the viper always responds to SETUP & PLAY request with okay) with wireshark -> on port 554 (rtsp communication) the messages are equal.

Is there anything special about the Sonix rtsp client, e.g. that it uses port 4500 for rtp (there are some really really old ietf papers about some secure rtp protcoll, and 4500 is default for secure tunneling)

Can you maybe give me the source code of the RTSP server so I can use that to find the issue ?

Best regards, Constantin

Consti10 commented 6 years ago

I continued debugging using other well-tested libraries and discovered the following: VLC on windows as client -> sky drone as server works VLC on android as client -> sky drone as server does NOT work RTSP viewer app (internally live5555) -> sky drone as server and interleaved=true works but the forced tcp connection makes the stream unusable slow.

Any idea why VLC android app does not work ? Also, can you confirm that the server on the sky drone sends video a) immediately after replying to an PLAY command with OK or b) only after some other requirement (e.g. a mavlink connection was established)