OvenMediaEngine (OME) is Open-Source Streaming Server with Sub-Second Latency. OME receives RTMP, MPEG-TS (Beta), and RTSP (Beta) from encoders and cameras such as OvenStreamEncoder, OBS, XSplit, and more. Then, it transmits media sources using WebRTC, Low Latency MPEG-DASH, MPEG-DASH, and HLS. We also provide OvenPlayer, Open-Source HTML5 Player.
Our goal is to make it easier for you to build a stable broadcasting/streaming service with Sub-Second Latency. So, our projects have the most optimized tools from Encoder to Player for smooth streaming.
Please click on each banner below for details.
- RTMP Push, MPEG-2 TS Push (Beta), RTSP Pull (Beta) Input
- WebRTC sub-second streaming
- ICE (Interactive Connectivity Establishment)
- DTLS (Datagram Transport Layer Security)
- SRTP (Secure Real-time Transport Protocol)
- ULPFEC (Forward Error Correction) with VP8, H.264
- In-band FEC (Forward Error Correction) with Opus
- Low latency MPEG-DASH(Chunked CAMF) streaming
- Legacy HLS/MPEG-DASH Streaming
- Embedded Live Transcoder (VP8, H.264, Opus, AAC, Bypass)
- Embedded WebRTC Signalling Server (WebSocket based)
- Origin-Edge structure
- Monitoring
- Beta
- File Recording
- RTMP Push Publishing(re-streaming)
- Thumbnail
- REST API
- Experiment
- P2P Traffic Distribution (Only WebRTC)
We have tested OME on the platforms listed below. However, we think it can work with other Linux packages as well:
- Docker (https://hub.docker.com/r/airensoft/ovenmediaengine)
- Ubuntu 18
- CentOS 7
- Fedora 28
docker run -d \
-p 1935:1935 \
-p 3333:3333 \
-p 8080:8080 \
-p 9000:9000 \
-p 4000-4005:4000-4005/udp \
-p 10006-10010:10006-10010/udp \
--name ovenmediaengine \
airensoft/ovenmediaengine:latest
You can also store the configuration files on your host:
docker run -d \
-p 1935:1935 \
-p 3333:3333 \
-p 8080:8080 \
-p 9000:9000 \
-p 4000-4005:4000-4005/udp \
-p 10006-10010:10006-10010/udp \
-v ome-origin-conf:/opt/ovenmediaengine/bin/origin_conf \
-v ome-edge-conf:/opt/ovenmediaengine/bin/edge_conf \
--name ovenmediaengine \
airensoft/ovenmediaengine:latest
The configuration files are now accessible under /var/lib/docker/volumes/<volume_name>/_data
.
Following the above example, you will find them under /var/lib/docker/volumes/ome-origin-conf/_data
and /var/lib/docker/volumes/ome-edge-conf/_data
.
If you want them on a different location, the easiest way is to create links:
ln -s /var/lib/docker/volumes/ome-origin-conf/_data/ /my/new/path/to/ome-origin-conf \
&& ln -s /var/lib/docker/volumes/ome-edge-conf/_data/ /my/new/path/to/ome-edge-conf
Please read Getting Started chapter in tutorials.
Please see our Guidelines and Rules.
And we are love to hear use cases. Please tell your story to contact@airensoft.com. The voices of real-contributors are of great help to our project.
- OvenMediaEngine Website
- Basic Information, FAQ, and Benchmark
- OvenMediaEngine Tutorials
- Getting Started, Install, and Configuration
- OvenMediaEngine Tutorials Source
- Please make a pull request for the manual in this project. Thanks for your contribution.
- Test Player
Without TLS
: http://demo.ovenplayer.comBased on TLS
: https://demo.ovenplayer.com
- OvenPlayer Github
- OvenPlayer Website
- AirenSoft Website
OvenMediaEngine is licensed under the GPLv2 or later.