Getting Started

Running with Docker

OvenMediaEngine supports the Docker image from AirenSoft's Docker Hub (airensoft/ovenmediaengine) repository. After installing Docker, you can simply run the following command:

docker run --name ome -d -e OME_HOST_IP=Your.HOST.IP.Address \
-p 1935:1935 -p 9999:9999/udp -p 9000:9000 -p 3333:3333 -p 3478:3478 -p 10000-10009:10000-10009/udp \
airensoft/ovenmediaengine:0.15.2

To use TLS, you must set up a certificate. See TLS Encryption for more information.

You can set the following environment variables.

Ports

EnvDefault Value

OME_HOST_IP

*

OME_ORIGIN_PORT

9000

OME_RTMP_PROV_PORT

1935

OME_SRT_PROV_PORT

9999/udp

OME_MPEGTS_PROV_PORT

4000/udp

OME_LLHLS_STREAM_PORT

3333

OME_LLHLS_STREAM_TLS_PORT

3334

OME_WEBRTC_SIGNALLING_PORT

3333

OME_WEBRTC_SIGNALLING_TLS_PORT

3334

OME_WEBRTC_TCP_RELAY_PORT

3478

OME_WEBRTC_CANDIDATE_PORT

10000-10004/udp

Installation

Install dependencies

OvenMediaEngine can work with a variety of open-sources and libraries. First, install them on your clean Linux machine as described below. We think that OME can support most Linux packages, but the tested platforms we use are Ubuntu 18+, Fedora 28+, and CentOS 7+.

(curl -LOJ https://github.com/AirenSoft/OvenMediaEngine/archive/v0.15.2.tar.gz && tar xvfz OvenMediaEngine-0.15.2.tar.gz)
OvenMediaEngine-0.15.2/misc/prerequisites.sh

If the prerequisites.sh script fails, try to run sudo apt-get update and rerun it. If it's not enough proceed with the manual installation.

Build & Run

You can build the OvenMediaEngine source using the following command:

sudo apt-get update
cd OvenMediaEngine-0.15.2/src
make release
sudo make install
systemctl start ovenmediaengine
# If you want automatically start on boot
systemctl enable ovenmediaengine.service 

if systemctl start ovenmediaengine fails in Fedora, SELinux may be the cause. See Check SELinux section of Troubleshooting.

Ports used by default

The default configuration uses the following ports, so you need to open it in your firewall settings.

PortPurpose

1935/TCP

RTMP Input

9999/UDP

SRT Input

4000/UDP

MPEG-2 TS Input

9000/TCP

Origin Server (OVT)

3333/TCP 3334/TLS

LLHLS Streaming * Streaming over Non-TLS is not allowed with modern browsers.

3333/TCP 3334/TLS

WebRTC Signaling (both ingest and streaming)

3478/TCP

WebRTC TCP relay (TURN Server, both ingest and streaming)

10000 - 10009/UDP

WebRTC Ice candidate (both ingest and streaming)

To use TLS, you must set up a certificate. See TLS Encryption for more information.

You can open firewall ports as in the following example:

$ sudo firewall-cmd --add-port=3333/tcp
$ sudo firewall-cmd --add-port=3334/tcp
$ sudo firewall-cmd --add-port=1935/tcp
$ sudo firewall-cmd --add-port=9999/udp
$ sudo firewall-cmd --add-port=4000/udp
$ sudo firewall-cmd --add-port=3478/tcp
$ sudo firewall-cmd --add-port=9000/tcp
$ sudo firewall-cmd --add-port=10000-10009/udp

Last updated