In short, OvenMediaEngine (OME) is Open-Source Streaming Server with Sub-Second Latency.
OME receives a video/audio source from encoders and cameras such as OvenStreamEncoder, OBS, XSplit, and more to WebRTC, RTMP, SRT, MPEG-2 TS Beta, or RTSP Beta. Then, OME transmits it using WebRTC, Low Latency MPEG-DASH (LLDASH), MPEG-DASH, and HLS.
We also provide OvenPlayer, Open-Source HTML5 Player that is very synergistic with OME.
AirenSoft aims to make it easier for you to build a stable broadcasting/streaming service with Sub-Second Latency. Therefore, we will continue developing and providing the most optimized tools for smooth Sub-Second Latency Streaming.
Would you please click on each link below for details:
- "Live Streaming Encoder for Mobile" OvenLiveKit SDK
- "Sub-Second Latency Streaming Server" OvenMediaEngine
- "HTML5 Player" OvenPlayer
- Ingest
- Push: WebRTC, RTMP, SRT, MPEG-2 TS
- Pull: RTSP
- Sub-Second Streaming with WebRTC
- WebRTC over TCP (with Embedded TURN Server)
- ICE (Interactive Connectivity Establishment)
- DTLS (Datagram Transport Layer Security)
- SRTP (Secure Real-time Transport Protocol)
- ULPFEC (Uneven Level Protection Forward Error Correction)
- VP8, H.264
- In-band FEC (Forward Error Correction)
- Opus
- Embedded WebRTC Signalling Server (WebSocket based)
- Low Latency Streaming with MPEG-DASH (Chunked CAMF)
- Legacy Streaming with MPEG-DASH/HLS
- Embedded Live Transcoder
- VP8, H.264, Opus, AAC, Bypass
- 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
- Ubuntu 18+
- CentOS 7+
- Fedora 28+
docker run -d \
-p 1935:1935 \
-p 3333:3333 \
-p 3478:3478 \
-p 8080:8080 \
-p 9000:9000 \
-p 9999:9999/udp \
-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 3478:3478 \
-p 8080:8080 \
-p 9000:9000 \
-p 9999:9999/udp \
-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 to put them in a different location, the easiest way is to create a link:
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 the Getting Started.
Thank you so much for being so interested in OvenMediaEngine.
We need your help to keep and develop our open-source project, and we want to tell you that you can contribute in many ways. Please see our Guidelines, Rules, and Contribute.
- Finding Bugs
- Reviewing Code
- Sharing Ideas
- Testing
- Improving Documentation
- Spreading & Use Cases
- Recurring Donations
We always hope that OvenMediaEngine will give you good inspiration.
- OvenMediaEngine Website
- Basic Information, FAQ, and Benchmark about OvenMediaEngine
- OvenMediaEngine Tutorial
- Getting Started, Install, and Configuration
- OvenMediaEngine Tutorial Source
- Please make a pull request for the manual of this project. Thanks in advance for your contribution.
- Test Player
Without TLS
: http://demo.ovenplayer.comWith TLS
: https://demo.ovenplayer.com
- OvenPlayer Github
- Open-Source HTML5 Player
- AirenSoft Website
- AirenSoft's Solutions/Services, and Blog (Tech Journal)
OvenMediaEngine is licensed under the GPLv3 or later.