> For the complete documentation index, see [llms.txt](https://manual.fotokite.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://manual.fotokite.com/system-profile/remote-livestream/general-information.md).

# General Information

## Introduction <a href="#introduction" id="introduction"></a>

The Fotokite system can stream live Thermal and Color Video to remote viewers over the Internet via Wi-Fi or Mobile Network.&#x20;

The following Livestream modes are supported:

| Mode                 | Support for                                                                                                                                                                            | Max user(s) |
| -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------- |
| Remote Livestream \* | <ul><li>See Thermal and Color Video</li><li>See system location kite and orientation</li><li>See Kite altitude</li></ul>                                                               | 50          |
| Remote Control \*    | <ul><li>See Thermal and Color Video</li><li>See system location kite and orientation</li><li>Control Kite altitude</li><li>Control Kite rotation</li><li>Control camera zoom</li></ul> | 1           |

\* Available with a subscription. Please contact your Fotokite sales representative.

## Service Description <a href="#service-description" id="service-description"></a>

### Remote Stream

The Fotokite Sigma streams its video feeds to the internet either via its cellular modem, or via customer-provided Wi-Fi/Ethernet connection. The video feeds are then relayed via the Fotokite Cloud and streamed to the viewers web browser client, hosted by Fotokite. Users can connect to the video stream by entering a link and code in their browser. The link and code can also be shared via a QR code.&#x20;

### Remote Control

With Remote Control, the Fotokite system can be easily controlled remotely via the Internet. Remote Control enables EVLOS (extended visual line of sight) and BVLOS (beyond visual line of sight) operations. Here is an overview:

{% stepper %}
{% step %}
**VLOS** (Visual Line of Sight)

The drone must be clearly visible by the drone operator.
{% endstep %}

{% step %}
**EVLOS** (Extended Visual Line of Sight)

Allows to operate a drone further than VLOS by using visual observers on scene.
{% endstep %}

{% step %}
**BVLOS** (Beyond Visual Line of Sight)

The drone operator does not maintain visual contact with a drone.
{% endstep %}
{% endstepper %}

{% hint style="danger" %}
EVLOS and BVLOS operations are subject to authorization in most countries. To ensure compliance, operators must check with the official aviation authority or relevant governmental agency for the latest regulations. Local regulations may vary, and it is the operator's responsibility to adhere to current rules.
{% endhint %}

### Limitations <a href="#limitations" id="limitations"></a>

* Remote Livestream does not offer a way to send the video stream to 3rd party integrations on the internet.
* Remote Livestream is designed and tested to support 50 concurrent viewers at a time.

## Streaming resolution

The resolution of the stream is continuously adjusted to fit the networking connection from the Ground Station to the cloud.

The maximum streaming resolution is 1080p, the minimum resolution is 240p.

If the network connection from the cloud to the viewer is bad, this can also have a negative impact on the stream quality.  This will not effect the stream quality as seen by a different viewer with a good network connection.

## Security & Privacy Considerations <a href="#security-and-privacy-considerations" id="security-and-privacy-considerations"></a>

Some cloud infrastructure is needed in order for remote streaming to work (to allow any device on the internet – which has the stream link + code – to watch the stream, as opposed to devices only in the local network like the Fotokite Tablet). This infrastructure consists of:

* Coordination server – creates and stops streaming sessions, assigns video relay servers, authenticates users (checks code)
* Video relay servers – forward video from the Fotokite Sigma system to end users
* Remote Livestream web client - A web browser client to view the stream and for remote control

### Infrastructure

The coordination server (there is a single one) is hosted on GCP (Google Cloud Platform). The server is located in the EU (europe-west1, Belgium). No video data goes through this server, this server handles only metadata. All data (Fotokite Sigma ↔︎ server ↔︎ client/browser) is always encrypted in transit.

The (multiple) video relay servers are also hosted on GCP, there are many of these in different data centers around the world. When starting a stream, the closest (in terms of latency over the internet) free video relay server is automatically assigned to the streaming session. There is no guarantee on the location of the assigned relay server. For example, when streaming from the EU, one might get assigned a sever in the US if all EU servers are currently at capacity (unlikely but possible). All video data (Fotokite Sigma system ↔︎ server ↔︎ client/browser) is always encrypted in transit.

#### Google Cloud Platform (GCP)

Google Cloud Platform is Google’s public cloud offering. Note that it is completely separate from Google’s other businesses. As such, Google does not access our data in any way; not for ads mining, nor for any other purposes. In fact, they have industry leading Security, Privacy and compliance practices (see whitepaper link below).

This is comparable to AWS (Amazon Web Services) or Azure (Microsoft’s cloud).

See:

* [GCP whitepaper](https://cloud.google.com/files/gcp-trust-whitepaper.pdf)
* [GCP Privacy Notice](https://cloud.google.com/terms/cloud-privacy-notice)
* [A list of GCP public customers](https://cloud.google.com/customers), including hospitals, banks, govt. agencies

### Data Access

Anyone who knows the stream link (video room name) and the code has access to the stream. The code is a reasonably secure means of authentication, as long as it gets rotated every couple of days.

Fotokite staff technically has access to all live streams, because the servers are controlled by Fotokite. However, Fotokite will not access live streams unless the customer explicitly allows us to do so (e.g. demos, support cases).

No video data is recorded on our servers, so it is physically impossible for anyone to access video data which was streamed in the past. Metadata (which system streamed at what time) is however recorded.

### Code Settings

Each stream is secured with a code. The following code settings are possible and can be set in Fotokite Live:

| Code                   | Details                                                                                                                                                                                                                                                                                                                      |
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| One-Time-Code          | <p>A One-Time-Code is auto generated and renews with every new Livestream session.<br><br>The code will be reset if the stream is stopped explicitly by the user in Fotokite Live by pressing the Stop Livestream button or no streaming happens for at least 30min (system is powered off or loses internet connection)</p> |
| Persistent Code        | <p>A Persistent Code is auto generated and does not renew.</p><p></p><p>Please use with caution, as a Persistent Code can expose a higher risk of security.</p>                                                                                                                                                              |
| Custom Persistent Code | <p>A Custom Persistent Code is set by the user. </p><p></p><p>Please use with caution, as a Persistent Code can expose a higher risk of security.</p>                                                                                                                                                                        |

Code settings can not be changed during streaming.

### Network protocols

All communications between the Fotokite Sigma system and the servers, as well as between the servers and the end device (browsers), are encrypted. The only exception are the ping messages which are used to choose a video relay server by latency.

The networking protocols in use in the live streaming system are (also see [Technical Requirements](/system-profile/remote-livestream/technical-requirements.md)):

<table><thead><tr><th width="249">Protocol</th><th width="249.33333333333331">Encryption</th><th>Comments</th></tr></thead><tbody><tr><td>HTTPS</td><td>Yes - SSL/TLS - guarantees confidentiality and integrity</td><td>Supports TLS versions v1.0 through v1.3 or newer. Version in use depends on end device. Modern Browsers will use v1.3 or newer.</td></tr><tr><td>WebSocket</td><td>Yes - SSL/TLS - guarantees confidentiality and integrity<br></td><td>Supports TLS versions v1.0 through v1.3 or newer. Version in use depends on end device. Modern Browsers will use v1.3 or newer.</td></tr><tr><td>WebRTC/RTSP</td><td>Yes - DTLS - guarantees confidentiality and integrity</td><td>Self-signed certificates are in use, but certificate fingerprints are verified through HTTPS, which verifies the remote end point and makes MITM attacks impossible. Thus, the same guarantees as for HTTPS (listed above) apply.</td></tr><tr><td>Latencytest ping</td><td>No</td><td>No user data is transferred using this protocol.</td></tr></tbody></table>

## Service Level (SLA), Availability, Uptime

Our network services are deployed in a redundant manner and can tolerate failure of multiple machines. The system will automatically pick a new video relay server if one fails. Our infrastructure is automatically monitored and we are alerted immediately if issues are met.

However, we cannot provide customers with a guaranteed uptime percentage: **the service is provided on a best-effort basis**. Too many factors (internet connection, cloud networking infrastructure) are outside of Fotokite's control.

To maintain and upgrade services, we reserve the right to take offline the service up to one hour a month at max. Such service windows will be announced beforehand in a timely manner, and it is highly unlikely they will not occur every month.

## Data Consumption

Remote Livestream consumes about 1GB of data per hour.

The video streams will be sent to Fotokite's relay servers through the Ground Station's own Internet connection. This can be a Wi-Fi network, an Ethernet Connection or a Cellular connection via the Integrated cellular modem. See [Network Integration and Setup](/installation-and-integration/network-integration-and-setup.md) for details.

The streaming time is currently unlimited. However the Cellular Data budget is capped at 50 GB per month for systems that have Remote Livestreaming or Remote Control enabled.  This is sufficient for about 50 hours of streaming per month. In case you need more than 50GB, an increased budgets can be requested via the Fotokite Support team.

## Various

### Alternative: Local Video Streaming

For cases where Livestreaming cannot be used due to privacy, networking or firewall problems, requirements for a static PINs etc., see [Local Video Streaming (RTSP)](/installation-and-integration/local-video-streaming-rtsp.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://manual.fotokite.com/system-profile/remote-livestream/general-information.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
