Open the code of Litchi Vue

Hi,

Is it possible to make Litchi Vue opensource (the free compagnion app)? or at least have some info on how the two app communicate together? I have a Quest2 headset and litchi vue work well on it, but only in legacy mode (you stay in the home environement). I want to port it as standalone VR app but honestly, even if the functionnality is simple, it will be time consuming to reverse engineer the communication protocol.

Thanks :slightly_smiling_face:

The Litchi Vue app uses network service discovery/bonjour to find nearby Litchi apps ready to stream

The service type is _litchistream._tcp.

Once connected, Litchi will automatically start streaming the packets. Each packet is prefixed with its length (int32). Packet contents are its type (1 byte), followed by the packet’s data

The byte order is little endian

Packet types:
0 = H.264 encoded video stream
1 = OSD data:

        velocityX = bb.getFloat(0),
        velocityY = bb.getFloat(4),
        velocityZ = bb.getFloat(8),
        rcSignal = bb.getShort(12),
        wifiSignal = bb.getShort(14),
        satelliteCount = bb.getShort(16),
        batteryPercent = bb.getShort(18),
        altitude = bb.getFloat(20),
        distance = bb.getFloat(24),
        droneLoc = LatLng(bb.getDouble(28), bb.getDouble(36)),
        homeLoc = LatLng(bb.getDouble(44), bb.getDouble(52)),
        yaw = bb.getFloat(60),
        isRecording = bb.get(64).toInt() == 1,
        recordingTime = bb.getLong(65),
        timestamp = bb.getDouble(73)

2 = Stream info (not relevant for newer drones that use DJI Fly)

1 Like

Oh this! If you’re going to get working on this I’m very interested to see how it goes. I’m even willing to test your code on my similar devices and if they’re fckd you know that something didn’t work. :grinning::ok_hand:

Just because I bought that headset last Christmas and it was something kinda almost fun for few hours after that I haven’t had any use for it but today when I also tried Litchi Vus and it worked well.

:grinning::ok_hand:

Really thanks for that! :star_struck: It should be enougth to start some POC in python before going the Unity/UE4 ways to have the VR framework.
I will push update later (I just got back from vacation) when I have time to test that.

Thanks again :smile:

1 Like

The only thing it will miss is the ability to change the position of the gimbal with Litchi Vue. it could be related to the position of the VR headset. The only problem would be the lag (about 0.5 to 2 seconds) which would not be pleasant for some people. With that you can have one pilot with line of sight and one “enjoyer” with the headset. (and it can be use with the internal VR mode of Litchi Vue).

Sorry my short message but I read some warnings that sunlight could destroy the Oculus thing, didn’t get any further in details but need to check this out. Like direct sunlight to drone camera. Mosquitos are eating me alive that’s the reason for economic use of my fingers :smiley: