Other names | OME |
---|---|
Developer(s) | AirenSoft |
Initial release | v0.9.0 / 23 May 2019 |
Stable release | v0.17.1 / 7 October 2024 |
Repository | https://github.com/AirenSoft/OvenMediaEngine |
Written in | C++ |
Operating system | Ubuntu 18+, Rocky Linux 9+, AlmaLinux 9+, Fedora 28+ |
Platform | Docker |
Type | Open-Source Low-Latency Streaming Server/Solution/Software |
License | AGPL v3.0 |
Website | https://airensoft.com/ome.html |
OvenMediaEngine (OME) is a low-latency streaming server with large-scale and high-definition that AirenSoft Co., Ltd. released as open-source software via GitHub in December 2018. The main programming language used was C++, and the first update was on May 23, 2019.
OvenMediaEngine became a member of the SRT Alliance in October 2018, [1] was certified as Good Software Level 1 (ISO/IEC 25023, 25041, and 25051) in 2022, and received the South Korean Prime Minister's Award and the Minister of Science and ICT Award in 2022.
OvenMediaEngine uses WebRTC for sub-second latency streaming and Low Latency HLS (HLS version 7+ based on fragmented MP4 containers, LL-HLS) [2] [3] for low-latency streaming depending on the system, network, and browser environment. If you use OvenMediaEngine and your environment cannot transmit low-latency streaming, it also supports general streaming using the legacy protocol as HTTP Live Streaming (HLS). [3]
OvenMediaEngine can ingest media sources over WebRTC, SRT, RTMP, RTSP, and MPEG2-TS protocols through commonly used stream tools such as Open Broadcaster Software (OBS), [4] Video camera, and Web browser with Webcam, encode them to Adaptive Bitrate Streaming (ABR) with the embedded live transcoder, and stream them to viewers over WebRTC and Low-Latency HLS. [2] [3] It is also possible to stream using legacy HLS [3] for wider compatibility.
OvenMediaEngine is licensed under the GNU Affero General Public License version 3 (AGPLv3) starting from February 16, 2022.
On July 18, 2022, OvenMediaEngine was certified as Good Software Level 1 by the South Korea Telecommunications Technology Association after being tested on international standards (ISO/IEC 25023, 25041, and 25051). [6] [7]
Vorbis is a free and open-source software project headed by the Xiph.Org Foundation. The project produces an audio coding format and software reference encoder/decoder (codec) for lossy audio compression, libvorbis. Vorbis is most commonly used in conjunction with the Ogg container format and it is therefore often referred to as Ogg Vorbis.
HTTP Live Streaming is an HTTP-based adaptive bitrate streaming communications protocol developed by Apple Inc. and released in 2009. Support for the protocol is widespread in media players, web browsers, mobile devices, and streaming media servers. As of 2022, an annual video industry survey has consistently found it to be the most popular streaming format.
Adaptive bitrate streaming is a technique used in streaming multimedia over computer networks.
Wowza Streaming Engine is a unified streaming media server software developed by Wowza. The server is used for streaming of live and on-demand video, audio, and rich Internet applications over IP networks to desktop, laptop, and tablet computers, mobile devices, IPTV set-top boxes, internet-connected TV sets, game consoles, and other network-connected devices. The server is a Java application deployable on most operating systems.
WebRTC is a free and open-source project providing web browsers and mobile applications with real-time communication (RTC) via application programming interfaces (APIs). It allows audio and video communication and streaming to work inside web pages by allowing direct peer-to-peer communication, eliminating the need to install plugins or download native apps.
Opus is a lossy audio coding format developed by the Xiph.Org Foundation and standardized by the Internet Engineering Task Force, designed to efficiently code speech and general audio in a single format, while remaining low-latency enough for real-time interactive communication and low-complexity enough for low-end embedded processors. Opus replaces both Vorbis and Speex for new applications, and several blind listening tests have ranked it higher-quality than any other standard audio format at any given bitrate until transparency is reached, including MP3, AAC, and HE-AAC.
Unified Speech and Audio Coding (USAC) is an audio compression format and codec for both music and speech or any mix of speech and audio using very low bit rates between 12 and 64 kbit/s. It was developed by Moving Picture Experts Group (MPEG) and was published as an international standard ISO/IEC 23003-3 and also as an MPEG-4 Audio Object Type in ISO/IEC 14496-3:2009/Amd 3 in 2012.
Dynamic Adaptive Streaming over HTTP (DASH), also known as MPEG-DASH, is an adaptive bitrate streaming technique that enables high quality streaming of media content over the Internet delivered from conventional HTTP web servers. Similar to Apple's HTTP Live Streaming (HLS) solution, MPEG-DASH works by breaking the content into a sequence of small segments, which are served over HTTP. An early HTTP web server based streaming system called SProxy was developed and deployed in the Hewlett Packard Laboratories in 2006. It showed how to use HTTP range requests to break the content into small segments. SProxy shows the effectiveness of segment based streaming, gaining best Internet penetration due to the wide deployment of firewalls, and reducing the unnecessary traffic transmission if a user chooses to terminate the streaming session earlier before reaching the end. Each segment contains a short interval of playback time of content that is potentially many hours in duration, such as a movie or the live broadcast of a sport event. The content is made available at a variety of different bit rates, i.e., alternative segments encoded at different bit rates covering aligned short intervals of playback time. While the content is being played back by an MPEG-DASH client, the client uses a bit rate adaptation (ABR) algorithm to automatically select the segment with the highest bit rate possible that can be downloaded in time for playback without causing stalls or re-buffering events in the playback. The current MPEG-DASH reference client dash.js offers both buffer-based (BOLA) and hybrid (DYNAMIC) bit rate adaptation algorithms. Thus, an MPEG-DASH client can seamlessly adapt to changing network conditions and provide high quality playback with few stalls or re-buffering events.
Unreal Media Server is a streaming server software created by Unreal Streaming Technologies.
OBS Studio is a free and open-source, cross-platform screencasting and streaming app. It is available for Windows, macOS, Linux distributions, and BSD. The OBS Project raises funds on Open Collective and Patreon.
Media Source Extensions (MSE) is a W3C specification that allows JavaScript to send byte streams to media codecs within web browsers that support HTML video and audio. Among other possible uses, this allows the implementation of client-side prefetching and buffering code for streaming media entirely in JavaScript. It is compatible with, but should not be confused with, the Encrypted Media Extensions (EME) specification, and neither requires the use of the other, although many EME implementations are only capable of decrypting media data provided via MSE.
Nimble Streamer is a software media server developed by Softvelum. The server is used for streaming of live and on-demand video and audio to desktop computers, mobile devices, internet-connected TV sets, IPTV set-top boxes and other network-connected devices. Its first stable version 1.0.0-1 was released on October, 21st, 2013, with a number of preliminary versions done before that. The release cycle is intensive and introduces a new version every week or less. Nimble Streamer was the finalist in Streaming Media European Readers' Choice Awards for 2016 as the Best Streaming Innovation and for 2021 as Hardware/software Server.
vMix is a software vision mixer available for the Windows operating system. The software is developed by StudioCoast PTY LTD. Like most vision mixing software, it allows users to switch inputs, mix audio, record outputs, and live stream cameras, videos files, audio, and more, in resolutions of up to 4K. The software is also capable of serving image magnification (IMAG) and projection needs in many instances, with various configurable external output and display options.
Parsec is a proprietary remote desktop application primarily used for playing games through video streaming. Using Parsec, a user can stream video game footage through an Internet connection, allowing one to run a game on one computer but play it remotely through another device. Although its main focus is gaming, Parsec can also be used as low-latency desktop sharing software. The Parsec client is available on most modern operating systems including Windows, macOS, Android, Raspberry Pi 3 and Linux.
Secure Reliable Transport (SRT) is an open source video transport protocol that utilises the UDP transport protocol. The SRT Protocol specification is available as an Internet Draft from the IETF.
Lyra is a lossy audio codec developed by Google that is designed for compressing speech at very low bitrates. Unlike most other audio formats, it compresses data using a machine learning-based algorithm.