Skip to content

one-view-layouts-public-safety-v2

Eyeson One View API

Merge all sources into a single video stream and achieve complete sync.

salesforce
Eyeson for Salesforce
Video meetings inside Salesforce, guided workflows & compliant document sharing.
record
Eyeson Stream Recorder
An unmatched solution for capturing streams across any sector.
rtmp and rtsp stream to your videomeeting eyeson ghost
Thomas StenitzerMay 3, 20223 min read

eyeson ghost Server - live stream with your drone, bodycam to a video meeting with ease

With eyeson Ghost RTMP-Server, we released a new handy application with which you can stream any RTMP- or RTSP-source into a meeting.

In this blog post, I will show you how you can set up eyeson ghost RTMP server on your PC.

You can watch the video tutorial here:

First steps - preparing your PC

Download the .exe for the RTMP stream from our eyeson ghost repository where you find in the example section (https://github.com/eyeson-team/ghost/releases) and save it in an easy-to-access folder. In this example, we will save it to C:\eyeson.

Open Windows Powershell (or any bash you like). Typing the command ./rtmp-server_windows_amd64.exe -h shows you the available flags:

Windows Powershell with command for flags

 

Start a meeting to join with a drone

Head over to https://accounts.eyeson.team/ and start a new meeting.

Click on the "Invite guest" icon Invite Guest to a running meeting or press Shift+I to copy the guest link of the running meeting to the clipboard.

Now start the ghost server with ./rtmp-server_windows_amd64.exe https://app.eyeson.team/?[$GUEST_TOKEN] - it will join the running meeting as a guest.

Alternatively, you can use ./rtmp-server_windows_amd64.exe [YourAPIKey] to start a new meeting.

If the startup of the server is a success, you will get a response in your command prompt:

Response in command prompt

You can provide the guest-Link to participants to join the running meeting.

Connect your drone or any streaming device

RTMP is more or less the standard in streaming as many devices support it, whether it is a drone or a body cam that allows you to enter an RTMP address or an app like the Larix Screencast that allows you to stream your phone or tablet.

Supposing you are in the same network as the PC, enter the IP address of your PC, followed by :1935 (the standard port used by RTMP and ghost) as the connection endpoint, stream authentication can be everything you want.

Example: DJI GO 4

Connect your drone to your phone, and open "General Settings" in the upper right corner.

Open "Choose Live Streaming Plattform"

Settings - Choose Live Streaming Platform

Click on "Custom RTMP"

RTMP Custom Selection

Now enter the IP-Adress of your PC at the dialog "Create Custom Livestream" and tap on "Next".

create custom livestream

Choose "Start".

Now, you can see on the left upper side if your drone is connected to the ghost server and information about the FPS (frames per second) it is streaming.

Your drone is now part of the running meeting.

If the FPS drops to 0, your drone is no longer connected.

Accessing the ghost server from anywhere in the world

If your source device (e.g. your drone) is not in the same network as your PC, make sure you can access the ghost server via a port forwarding, for example, use ngrok.io.

Use the TCP forwarding to get the streaming address for your device: ./ngrok tcp 1935

Example: Larix Streamcaster via ngrok.io

Example Larix Streamcaster

ghost settings via flags 

You can adapt various settings via flags:

--api-endpoint string Sets a custom api-endpoint (default "https://api.eyeson.team") .

--delay int32 This flag allows you do set a custom delay in ms (default 150) if your streaming device is sending a variable fps-rate to avoid judders.

-h, --help Summons the help for the ghost rtmp-server.

--room-id string Sets a Room ID. If left empty, a new meeting will be created on each request.

--rtmp-listen-addr string This flag sets the RTMP address this server is listening to (default "rtmp://0.0.0.0:1935").

--user string Sets a custom participant/user name (default "rtmp-test").

--user-id string Sets a user id to use.

-v, --verbose Triggers the verbose output to display extended information.

Example usage:

./rtmp-server_windows_amd64.exe --user Drone --delay 60 https://app.eyeson.team/?guest=xxxxxxxxxxxxxxxxxxxxxxxx

Starts a ghost RTMP-server listening to rtmp://0.0.0.0:1935 with the user name "Drone" to join the running meeting with a delay of 60 ms.

RELATED ARTICLES