Skip to main content

How to add External Video Sources to Eyeson

This guide covers how to integrate various external data sources into Eyeson video meetings.

4 ways to add external sources

Direct Streaming via RTMP/RTSP

Install and execute Ghost

  1. Download and install the Eyeson Ghost RTMP server from the Github repository
  2. Launch the Ghost server application
  3. Find your IP address

Configure your streaming device

Set up your streaming device (camera, drone, etc.) with:

  • Protocol: RTMP
  • Port: 1935 (default; can be changed with --rtmp-listen-addr)
  • IP Address: The accessible IP address of the Ghost server
    • For local network: Use private IP (e.g. 192.168.x.x)
    • For external access: Use public IP with appropriate port forwarding
danger

All streaming devices must have network connectivity to the Ghost server, either through local network access or properly configured public interfaces.

Connect video stream to the call

  1. Start an Eyeson meeting
  2. Copy the guest link and process it with Eyeson Ghost:
rtmp_client --user-id datasource01 --delay 40 --rtmp-listen-addr rtmp://%IP_ADDR%:1935 %GUEST_LINK%
tip

The delay parameter controls stream buffering duration in milliseconds. Higher delay values provide improved stream stability at the cost of latency, particularly beneficial for unreliable network connections. Optimal delay values typically range from 20ms to 200ms depending on network conditions.

For all available flags, use:

rtmp_client --help

Start streaming

Configure your device to start RTMP live streaming using your PC's IP address as the target. You can use the user-id to position the stream in the layout.

HDMI Capture via RTSP Converter

For devices with HDMI output but no native streaming capability (or devices in closed systems like in medical devices, etc.):

  1. Connect your source device to an HDMI-to-RTSP converter using a standard HDMI cable
  2. Connect the converter to your network via Ethernet or Wi-Fi
  3. Configure the converter according to manufacturer specifications
  4. Set up the Ghost server as described above, pointing to the converter's stream
  5. Connect Ghost to your Eyeson meeting using the guest link

Recommended hardware includes Kiloview E1/E2 encoders, MOKOSE HDMI to IP encoders, or AVMATRIX converters.

Screen Sharing Integration

For devices connected to a computer workstation:

  1. Open a web browser on the computer displaying your external data
  2. Join the Eyeson meeting via direct link or your account login
  3. Use the screen-sharing function to select either the entire display or specific application window
  4. Verify that participants can see the shared content

This method requires no additional hardware beyond the existing workstation.

API Integration for Data Visualization

For programmable data visualization:

  1. Obtain an API key from the Eyeson Developer Portal
  2. Create a meeting room with a POST request to the Eyeson API:
import requests

base_url = 'https://api.eyeson.team'
api_key = 'YOUR_API_KEY'

headers = {
'Authorization': api_key,
'Content-Type': 'application/json',
'Accept': 'application/json'
}

payload = {
'id': 'DataVisualizationRoom',
'user': {'name': 'Data Analyst'},
'options': {
'sfu_mode': 'disabled',
'widescreen': True
}
}

response = requests.post(base_url + '/rooms', headers=headers, json=payload)
data = response.json()
access_key = data['access_key']
  1. Use the access_key to add custom data visualization images as layer within the video stream
  2. Update visual elements in real-time as data changes through additional API calls

This method provides the greatest customization potential and enables automation of meeting setups.