# SRT

## What is SRT?

SRT, the abbreviation of Secure Reliable Transport protocol, is an open source live streaming protocol which brings pristine quality, low latency live video over the public Internet.

## Configure SRT

* Go to Setting->Network->SRT

| Item        | Description                                                                                         |
| ----------- | --------------------------------------------------------------------------------------------------- |
| Main Stream | <p>Enable: Check the checkbox;<br>Video Push: Enter PUSH URL;<br>Push Mode: Complex/Video/Audio</p> |
| Sub Stream  | <p>Enable: Check the checkbox;<br>Video Push: Enter PUSH URL;<br>Push Mode: Complex/Video/Audio</p> |
| Push Mode   | Three modes: Complex(Video\&Audio), Video only, Audio only                                          |
| Push URL    | Get the URL from your SRT server                                                                    |

### Caller Mode(OBS For Example)

* Double confirm the IP address of the PC with OBS/vMix installed by WIN+R->CMD->ipconfig/all->Check "Ethernet Adapter" and get the IP
* Access the encoder from browsers and go to Setting->Push->Tab SRT->Enable SRT->Enter URL: **srt://**<mark style="color:purple;">**192.168.1.97**</mark>**:20001?mode=caller** {**NOTE:&#x20;**<mark style="color:purple;">**192.168.1.97**</mark>**&#x20;is the IP address of PC with OBS or vMix installed**}->Click "Save"

<figure><img src="https://2135358283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpoaBKMSV5lXq2C8IiNMO%2Fuploads%2FUfMfUQt2G05ylxbtmx9E%2FGKHVE_Push_SRTCaller.jpg?alt=media&#x26;token=4695e35c-0f0e-4c39-aaea-db54e1a08e39" alt=""><figcaption></figcaption></figure>

* Run OBS->Add->Media Source->Check the checkbox of Local File->Input: **srt://**<mark style="color:purple;">**192.168.1.97**</mark>**:20001?mode=listener\&latency=50** {**NOTE:&#x20;**<mark style="color:purple;">**192.168.1.97**</mark>**&#x20;is the IP address of PC with OBS or vMix installed**}->Click "Okay"->Wait for a while and the video will be shown as below:

<figure><img src="https://2135358283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpoaBKMSV5lXq2C8IiNMO%2Fuploads%2Fae7ghgLFLw3DBhpCREXO%2FGKHVE_Push_SRTCallerOBS.jpg?alt=media&#x26;token=19617623-f633-4ef2-a461-718fb8e7c682" alt=""><figcaption></figcaption></figure>

### Listener Mode (OBS for Example)

* Run Device Manager->Double confirm the IP address of encoder;
* Access the encoder from browser->Setting->Push->SRT->Enter PUSH URL: **srt://**<mark style="color:purple;">**192.168.1.196**</mark>**:20001?mode=listener** {**NOTE:&#x20;**<mark style="color:purple;">**192.168.1.196**</mark>**&#x20;is the IP address of encoder**}->Click"Save" as below:

<figure><img src="https://2135358283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpoaBKMSV5lXq2C8IiNMO%2Fuploads%2FE5lq1lhGkUwsg3P1SuYd%2FGKHVE_Push_SRTListener.jpg?alt=media&#x26;token=8fb3656e-80ee-4b3e-8d3c-70ea2779ecb8" alt=""><figcaption></figcaption></figure>

* Run OBS->Add->Media Source->Check the checkbox of Local File->Input: **srt://**<mark style="color:purple;">**192.168.1.196**</mark>**:20001?mode=caller\&latency=50** {**NOTE:&#x20;**<mark style="color:purple;">**192.168.1.196**</mark>**&#x20;is the IP address of encoder**}->Click "Okay"->Wait for a while and the video will be shown as below:

<figure><img src="https://2135358283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpoaBKMSV5lXq2C8IiNMO%2Fuploads%2FNoCmttEfvQKsOF6ID4uS%2FGKHVE_Push_SRTListenerOBS.jpg?alt=media&#x26;token=f21110b9-c12f-43b1-9a81-2c149db0c480" alt=""><figcaption></figcaption></figure>

### Rendezvous Mode

<figure><img src="https://2135358283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpoaBKMSV5lXq2C8IiNMO%2Fuploads%2FiEPRbr9YkQitsnrs3R1F%2FGKHVE_Push_SRTRendezvous.jpg?alt=media&#x26;token=22f99b96-0157-48dd-8ff4-cb5c26ef072c" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
If it's required to be compatible with private servers, we can do that too. But MOQ will be required too.
{% endhint %}
