Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
755ab62
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
c281986
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
fd75163
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
9a7ffc8
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
7653caf
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
136594b
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
cf9cee7
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
9877a6b
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
a79c5ae
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
3b705ba
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
74d2aa0
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
3d3a73e
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
77a559f
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
b3d8ee4
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
4f5fa15
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
5c626e1
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
9605803
Documentation edits made through Mintlify web editor
mintlify[bot] May 7, 2025
01b993a
Documentation edits made through Mintlify web editor
mintlify[bot] May 14, 2025
e158226
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
624cba6
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
2000560
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
b78a52d
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
7c0c4da
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
a01a847
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
2c16733
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
cc09245
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
cf1922a
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
4947f57
Documentation edits made through Mintlify web editor
mintlify[bot] May 19, 2025
c211b16
Documentation edits made through Mintlify web editor
mintlify[bot] Jun 3, 2025
64929b7
Documentation edits made through Mintlify web editor
mintlify[bot] Jun 3, 2025
e9c608d
Documentation edits made through Mintlify web editor
mintlify[bot] Jun 4, 2025
5b76e86
Documentation edits made through Mintlify web editor
mintlify[bot] Jun 4, 2025
9ef4117
Documentation edits made through Mintlify web editor
mintlify[bot] Jun 10, 2025
9892a1c
Documentation edits made through Mintlify web editor
mjmendez212 Dec 23, 2025
6341aeb
Documentation edits made through Mintlify web editor
mjmendez212 Dec 23, 2025
1054658
Documentation edits made through Mintlify web editor
mjmendez212 Dec 23, 2025
9374146
Documentation edits made through Mintlify web editor
mjmendez212 Dec 30, 2025
57918b7
Documentation edits made through Mintlify web editor
mjmendez212 Dec 30, 2025
3d26ebb
Documentation edits made through Mintlify web editor
mjmendez212 Dec 30, 2025
eace8a0
Documentation edits made through Mintlify web editor
mjmendez212 Dec 31, 2025
1456f19
Documentation edits made through Mintlify web editor
mjmendez212 Dec 31, 2025
bf0e355
Documentation edits made through Mintlify web editor
mjmendez212 Dec 31, 2025
ad4b547
Documentation edits made through Mintlify web editor
mjmendez212 Dec 31, 2025
e5643bb
Documentation edits made through Mintlify web editor
mjmendez212 Dec 31, 2025
b74ba49
Documentation edits made through Mintlify web editor
mjmendez212 Dec 31, 2025
d421435
Documentation edits made through Mintlify web editor
mjmendez212 Jan 5, 2026
9a69a86
Documentation edits made through Mintlify web editor
mjmendez212 Jan 5, 2026
6f04a7d
Documentation edits made through Mintlify web editor
mjmendez212 Jan 8, 2026
da53e9a
Documentation edits made through Mintlify web editor
mjmendez212 Jan 9, 2026
13079c1
Documentation edits made through Mintlify web editor
mjmendez212 Jan 9, 2026
32c6f21
Documentation edits made through Mintlify web editor
mjmendez212 Jan 9, 2026
7da896e
Documentation edits made through Mintlify web editor
mjmendez212 Jan 9, 2026
ea58918
Documentation edits made through Mintlify web editor
mjmendez212 Jan 12, 2026
86d9ff3
Documentation edits made through Mintlify web editor
mjmendez212 Jan 12, 2026
d013991
Documentation edits made through Mintlify web editor
mjmendez212 Jan 20, 2026
9947832
Documentation edits made through Mintlify web editor
mjmendez212 Jan 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 19 additions & 7 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -978,23 +978,32 @@
]
},
"streaming-platform/how-the-streaming-platform-interact-with-the-cdn",
{
{
"group": "Live streaming",
"pages": [
"streaming-platform/live-streaming/create-a-live-stream",
"streaming-platform/live-streaming/webrtc-to-hls-transcoding",
{
"group": "Push live streams software",
"group": "Broadcasting software",
"pages": [
"streaming-platform/live-streaming/broadcasting-software/ffmpeg",
"streaming-platform/live-streaming/broadcasting-software/larix",
"streaming-platform/live-streaming/broadcasting-software/obs"
]
},
{
"group": "Protocols",
"pages": [
"streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs",
"streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-liveu-solo"
"streaming-platform/live-streaming/protocols/rtmp",
"streaming-platform/live-streaming/protocols/srt",
"streaming-platform/live-streaming/protocols/webrtc"
]
},
"streaming-platform/live-streaming/create-and-configure-a-restream-to-social-media",
"streaming-platform/live-streaming/combine-multiple-live-streams",
"streaming-platform/live-streaming/record-your-live-streams-and-save-them-as-videos",
"streaming-platform/live-streaming/pause-and-rewind-the-live-streams",
"streaming-platform/live-streaming/insert-html-overlays-in-live-streams"
"streaming-platform/live-streaming/insert-html-overlays-in-live-streams",
"streaming-platform/live-streaming/how-low-latency-streaming-works"
]
},
{
Expand Down Expand Up @@ -1054,7 +1063,10 @@
{
"group": "Troubleshooting",
"pages": [
"streaming-platform/troubleshooting/solve-common-streaming-platform-issues",
"streaming-platform/troubleshooting/general-issues",
"streaming-platform/troubleshooting/http-status-codes",
"streaming-platform/troubleshooting/live-streaming-issues",
"streaming-platform/troubleshooting/vod-issues",
{
"group": "WebRTC common issues",
"pages": [
Expand Down
Binary file added images/larix-grove.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
70 changes: 35 additions & 35 deletions streaming-platform/about-gcore-streaming-platform.mdx
Original file line number Diff line number Diff line change
@@ -1,36 +1,36 @@
---
title: About GCore streaming platform
sidebarTitle: Overview
---
## Method 1: Streaming directly via CDN
If you have your own media server that produces a stream in HLS format, you will need one CDN resource with special settings for playlists (.m3u8) and chunks (.ts). For more information about settings, see the article [Live streaming via CDN using the HLS protocol](/cdn/cdn-resource-options/configure-live-streams-and-video-delivery-via-cdn-only-for-paid-tariffs).
You can protect the stream with a token. The token to encrypt the streaming is configured via a script on the origin server, enabling the Secure Token option in the CDN Resource settings according to the "[Configure and use Secure Token](/cdn/cdn-resource-options/security/use-a-secure-token/configure-and-use-secure-token)" guide.
## Method 2: Streaming via the video streaming with CDN
Use this method if a stream from your server is not in HLS format.
Streaming via our Video Streaming has advantages and additional features, such as:
* [Live stream recording](/streaming-platform/live-streaming/record-your-live-streams-and-save-them-as-videos) records the broadcast and saves it as VOD.
* [DVR](/streaming-platform/live-streaming/pause-and-rewind-the-live-streams) allows you to rewind the stream, stop it and return to viewing it later.
* [Restreaming](/streaming-platform/live-streaming/create-and-configure-a-restream-to-social-media) allows you to send a broadcast to several media services simultaneously, such as Facebook and YouTube.
* [Own player and statistics](/streaming-platform/extra-features/customize-appearance-of-the-built-in-player) allow you to collect statistics on views, geography, and popularity of individual broadcasts.
The formats and specifications supported by the Video Streaming are described in the [article](/streaming-platform/live-streams-and-videos-protocols-and-codecs/what-initial-parameters-of-your-live-streams-and-videos-we-can-accept).
When you stream via the Video Streaming, there are two ways to send us the stream: PUSH and PULL.
* To use PULL, you need a server with a stream in RTMP (or other) format. The stream is sent to our servers, which convert it into HLS.
* Use PUSH if you stream directly from your computer, camera, or any other device using third-party [software](/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs). In this case, there is a unique key in the Gcore Customer Portal that you insert into your program, and the stream is sent to us. The Video Streaming converts it into HLS and sends it to end-users.
We can receive SRT streams in either PULL or PUSH format. To send us PULL-SRT, just specify a link in the required protocol in the URL field. If you want to get a PUSH link to send SRT streams to us, write to support via [support@gcore.com](mailto:support@gcore.com) or your manager. We will set up an SRT-PUSH link on your account.
---
title: About GCore streaming platform
sidebarTitle: Overview
---

## Method 1: Streaming directly via CDN

If you have your own media server that produces a stream in HLS format, you will need one CDN resource with special settings for playlists (.m3u8) and chunks (.ts). For more information about settings, see the article [Live streaming via CDN using the HLS protocol](/cdn/cdn-resource-options/configure-live-streams-and-video-delivery-via-cdn-only-for-paid-tariffs).

You can protect the stream with a token. The token to encrypt the streaming is configured via a script on the origin server, enabling the Secure Token option in the CDN Resource settings according to the "[Configure and use Secure Token](/cdn/cdn-resource-options/security/use-a-secure-token/configure-and-use-secure-token)" guide.

## Method 2: Streaming via the video streaming with CDN

Use this method if a stream from your server is not in HLS format.

Streaming via our Video Streaming has advantages and additional features, such as:

* [Live stream recording](/streaming-platform/live-streaming/record-your-live-streams-and-save-them-as-videos) records the broadcast and saves it as VOD.
* [DVR](/streaming-platform/live-streaming/pause-and-rewind-the-live-streams) allows you to rewind the stream, stop it and return to viewing it later.
* [Restreaming](/streaming-platform/live-streaming/create-and-configure-a-restream-to-social-media) allows you to send a broadcast to several media services simultaneously, such as Facebook and YouTube.
* [Own player and statistics](/streaming-platform/extra-features/customize-appearance-of-the-built-in-player) allow you to collect statistics on views, geography, and popularity of individual broadcasts.



The formats and specifications supported by the Video Streaming are described in the [article](/streaming-platform/live-streams-and-videos-protocols-and-codecs/what-initial-parameters-of-your-live-streams-and-videos-we-can-accept).

When you stream via the Video Streaming, there are two ways to send us the stream: PUSH and PULL.

* To use PULL, you need a server with a stream in RTMP (or other) format. The stream is sent to our servers, which convert it into HLS.
* Use PUSH if you stream directly from your computer, camera, or any other device using third-party [software](https://gcore.com/docs/streaming-platform/live-streaming/broadcasting-software/obs). In this case, there is a unique key in the Gcore Customer Portal that you insert into your program, and the stream is sent to us. The Video Streaming converts it into HLS and sends it to end-users.



We can receive SRT streams in either PULL or PUSH format. To send us PULL-SRT, just specify a link in the required protocol in the URL field. If you want to get a PUSH link to send SRT streams to us, write to support via [support@gcore.com](mailto:support@gcore.com) or your manager. We will set up an SRT-PUSH link on your account.

About PULL and PUSH in detail, you can read in the "[Create a live stream](/streaming-platform/live-streaming/create-a-live-stream)" guide (step 3.2).
68 changes: 68 additions & 0 deletions streaming-platform/live-streaming/broadcasting-software/ffmpeg.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
---
title: "FFmpeg"
sidebarTitle: "FFmpeg"
---

FFmpeg is a free and open-source command-line tool for recording, screencasting, and live streaming. It’s suitable for video game streaming, blogging, educational content, and more.

FFmpeg links your device (e.g, a laptop or a PC) to different streaming platforms (e.g., Gcore Video Streaming, YouTube, Twitch, etc.). It takes an image captured by a camera, converts it into a video stream, and then sends it to the streaming platform.

## Setup

1. Install FFmpeg on your device. Follow the download instructions on [the official website](https://ffmpeg.org/download.html).

2. To get the server URL and stream key, go to the [Streaming list](https://streaming.gcore.com/streaming/list), open the **Live stream settings** you need, and copy the relevant value from the **URLs for the encoder** section.

For example, if you see these values on the **Live stream settings** page:

![Live stream settings](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/11774973436177.png)

Concatenate them to form the full RTMP URL for the stream:

```
rtmp://vp-push-ix1.gvideo.co/in/400448?cdf2a7ccf990e464c2b…
```

3. Open the command line interface (CLI) on your device and run the following command:

```
ffmpeg -f {input format params} -f flv {RTMP URL}
```

## Configure the stream parameters for optimal performance

We recommend configuring the stream parameters you will send to our server to ensure optimal streaming performance. You can adjust these settings via the CLI parameters of FFmpeg.

Example of a command line for streaming via FFmpeg with the recommended parameters:

```
ffmpeg -f {input format params} \
-c:v libx264 -preset veryfast -b:v 2000000 \
-profile:v baseline -vf format=yuv420p \
-crf 23 -g 60 \
-b:a 128k -ar 44100 -ac 2 \
-f flv {RTMP URL}
```

### Output parameters

- **Video Bitrate:** To stream at 720p resolution, set the bitrate to 2000Kbps (`-b:v 2000000`). If you’re broadcasting at 1080p, set the bitrate to 4000Kbps (`-b:v 4000000`).
- **Audio Bitrate:** 128 (`-b:a 128k`).
- **Encoder:** Software (`-c:v libx264`), or any other H264 codec.
- **Rate control:** CRF (`-crf 23`)
- **Keyframe Interval:** 2s (`-g 60`).
- **CPU Usage Preset:** veryfast (`-preset veryfast`).
- **Profile:** baseline (`-profile:v baseline -vf format=yuv420p`)

### Audio parameters

- **Sample Rate**: 44.1 kHz (`-ar 44100`) or 48 kHz (`-ar 48000`).
- Use **Stereo** for the best sound quality (`-ac 2`).

### Video parameters

If you need to reduce the original resolution (downscale), follow the instructions in this section. If no resolution change is required, you can skip this step.

- **Output (Scaled) Resolution:** 1280×720
- **Downscale Filter:** Bicubic
- **Common FPS Values:** 30
64 changes: 64 additions & 0 deletions streaming-platform/live-streaming/broadcasting-software/larix.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
title: "Larix"
sidebarTitle: "Larix"
---

Larix is a free video recording, screencasting, and live streaming encoder. It’s suitable for video game streaming, blogging, educational content, and more.

Larix links your mobile device (e.g., a smartphone or a tablet) to different streaming platforms (e.g., Gcore Video Streaming, YouTube, Twitch, etc.). It takes an image captured by a camera, converts it into a video stream, and then sends it to the streaming platform.

## Setup

1. Install Larix on your mobile device. You can find the download instructions on the official website.
2. To get the server URL and stream key, go to the [Streaming list](https://streaming.gcore.com/streaming/list), open the **Live stream settings** you need, and copy the relevant value from the **URLs for the encoder** section.

For example, if you see these values on the **Live stream settings** page:

![Live stream settings](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/11774973436177.png)

Concatenate them to form the full RTMP URL for the stream:

```
rtmp://vp-push-ix1.gvideo.co/in/400448?cdf2a7ccf990e464c2b…
```

3. Open [Larix Grove](https://softvelum.com/larix/grove/), where you can create the configuration for the Larix app and share it via QR code.
4. In **Larix Grove**, scroll down to the **Connection** section.
5. Enter the RTMP URL and a name for your connection.
6. Click the **QR-Code** button to generate a QR code. You can scan this code with the Larix app on your mobile device to automatically configure the connection.
7. Open the Larix app on your mobile device and tap the gear icon to open the settings.
8. Tap **Larix Grove** and then tap **Scan Grove QR code**.
9. Scan the QR code you generated in Larix Grove. The app will automatically configure the connection.
10. Return to the Larix app's main screen and tap the big white button to start streaming.

## Configure the stream parameters for optimal performance

We recommend configuring the stream parameters you send to our server to ensure optimal streaming performance.

You can adjust these settings with [Larix Grove](https://softvelum.com/larix/grove/), which generates the configuration and connection URL as a QR code. This allows you to share the configuration with team members easily.

After you have changed the settings, click the **QR-Code** button to generate a new QR code for sharing.

![Larix Grove Pn](/images/larix-grove.png)

### Camera parameters

If you need to reduce the original resolution (downscale), follow the instructions in this section.

If you need to increase the FPS to 60, make sure to also increase the bitrate accordingly for optimal stream quality (i.e., double it).

If no resolution change is required, you can skip this step.

- **Resolution:** 1280×720
- **Frame rate:** 30

### Video encoder parameters

- **Video Bitrate:** 2000000 for 720p resolution or 4000000 for 1080p resolution.
- **Keyframe Interval:** 60 (i.e., 2 seconds)

### Audio encoder parameters

- **Audio Bitrate:** 128000
- **Sample Rate**: 44100 or 48000
- **Channels**: 2
100 changes: 100 additions & 0 deletions streaming-platform/live-streaming/broadcasting-software/obs.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
---
title: "Open Broadcaster Software"
sidebarTitle: "OBS"
---

Open Broadcaster Software (OBS) is a free and open-source encoder for video recording, screencasting, and live streaming. It’s suitable for video game streaming, blogging, educational content, and more.

OBS links your device (a laptop or a PC) to different streaming platforms (Gcore Video Streaming, YouTube, Twitch, etc.). It takes a camera image, converts it into a video stream, and then sends it to the streaming platform.

## Setup

1. Download Open Broadcaster Software (OBS) from the [official website](https://obsproject.com).

2. Open the **Settings** section and go to the **Stream** tab. Complete the remaining steps in it.

![Stream tab](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/10807190142097.png)

3. Select **Custom** from the dropdown list.

4. Enter the Server URL into the **Server** field and the unique key into the **Stream Key** field. To get the Server URL and key, go to the [Streaming list](https://streaming.gcore.com/streaming/list), open the Live stream settings you need, and copy the relevant value from the URLs for the encoder section.

For example, if you see these values on the Live stream settings page:

![Live stream settings](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/11774973436177.png)

Paste them into the OBS Settings as follows:

- _rtmp://vp-push-ix1.gvideo.co/in/_ is the **Server**.
- _400448?cdf2a7ccf990e464c2b…_ is the **Stream Key**.

5. Click the **Apply** button to save the new configuration.

6. Go to the **main OBS menu**, select the stream's source (video capture device, display capture, etc.), and click **Start Streaming**.

![Start Streaming](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/10807465490193.png)

7. Once the streaming has started, go to the [Streaming list](https://streaming.gcore.com/streaming/list), open the **Live Stream settings**, and copy the link to embed the broadcast to your website.

![Streaming list](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/11775007043985.png)

That’s it. The stream from OBS will be broadcast to your website.

## Configure the stream parameters for optimal performance

We recommend configuring the stream parameters you will send to our server to ensure optimal streaming performance. You can adjust these settings in the OBS Output, Audio, and Video tabs.

### Output parameters

1. Open OBS Settings and go to the **Output** tab. Select **Simple** mode.

2. Set the parameters as follows:

- **Video Bitrate:** The resolution of your stream determines the required bitrate: The higher the resolution, the higher the bitrate. To stream at 720p resolution, set the bitrate to 2000Kbps. If you’re broadcasting at 1080p, set the bitrate to 4000Kbps.
- **Audio Bitrate:** 128.
- **Encoder:** Software (x264), or any other H264 codec.

![Manage the stream parameters](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/10807571524241.png)

3. Click **Advanced** mode.

4. Set the parameters as follows:

- **Rate control:** CRF (the default value is 23)
- **Keyframe Interval (0=auto):** 2s
- **CPU Usage Preset:** veryfast
- **Profile:** baseline

5. Click **Apply** to save the configuration.

![configuration](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/10807656645393.png)

### Audio parameters

![Audio parameters](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/10807660371473.png)

1. Open OBS Settings and go to the Audio tab.

2. Set the Sample Rate to 44.1 kHz (default) or 48 kHz. Select **Stereo** for the best sound quality.

3. Click **Apply**.

### Video parameters

If you need to reduce the original resolution (downscale), follow the instructions in this section. If no resolution change is required, you can skip this step.

1. Open OBS Settings and go to the **Video** tab.

2. Set the following parameters:

- **Output (Scaled) Resolution:** 1280×720
- **Downscale Filter:** Bicubic
- **Common FPS Values:** 30

3. Click **Apply**.

![Video parameters Apply](https://assets.gcore.pro/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs/10807613445521.png)

<Tip>
You can see the stream's [output parameters here](https://gcore.com/docs/streaming-platform/live-streaming/push-live-streams-software/push-live-streams-via-obs#output-parameters). If you need to increase the FPS to 60, make sure to also increase the bitrate accordingly for optimal stream quality.
</Tip>
Loading