Clone this wiki locally
Note: This is the Open Broadcast Encoder code wiki. There are a range of OBE sites for different user-groups:
Technical wiki (e.g. STB compatibility)
Open Broadcast Encoder is a fresh implementation of an open source decoder/encoder/transcoder/transmuxer. It is designed from the ground up to be both flexible and scalable enough for use in both 24/7 live streaming and offline operations. Open Broadcast Encoder aims to be compliant with all relevant broadcast industry standards and practices, with a special emphasis on quality and stability.
Open Broadcast Encoder is based on existing high-quality open source projects including x264, FFmpeg and libmpegts.
The project is divided into two subprojects that share core components: OBE-RT for real-time 24/7 operation and OBE-VoD when dealing with file-based workflows.
System Requirements OBE-Video on Demand
- Supported on Windows, Mac OSX and Linux.
Usage scenarios for OBE-VoD
- Existing File -> Demuxer -> Decoder/Filtering -> Encoder -> Muxer -> Save to File
- Ubuntu 12.04 64-bit
- Other Linux configurations may work but are unsupported
- HD/SD-SDI card for SDI input
- DVB card for DVB input
- ASI card for ASI input and/or output
More specific hardware information will be listed as support is added.
Usage scenarios for OBE-RT
- Uncompressed SDI -> Filtering -> Encoder -> Muxer -> IP/ASI output
- Live Stream (IP or ASI) -> Demuxer -> Decoder/Filtering -> Encoder -> Muxer -> IP/ASI output
- SDI and HD-SDI
Embedded audio and correct VANC processing where possible
- IP streams
Raw UDP, RTP/UDP, MXF (multicast and unicast)
Passthrough or transcoding of H.264/MPEG-2 (SPTS and MPTS)
PCM and all non-PCM embedded formats
Support for V4L2-DVB
Passthrough or transcode
- AC-3 Audio
- "E-distribution audio"
Commercially known as "Dolby E" - Contact kierank for more information about licensing.
- MPEG/MP2 Audio
Includes 4x MP2 channels to simulate a 5.1+2.0 mix
- DVD Subtitles (for VoD)
- DVB Subtitles
- DVB-TTX (Teletext)
- x264 - H.264 AVC encoder (includes 10-bit mode for high-quality applications)
- x262 - MPEG-2 encoder (in development)
Statmux pools for both MPEG-2 and H.264 AVC (in development)
Speedcontrol to increase encoding complexity when CPU capacity is available (in development)
- 10-bit to 8-bit dithering
- 4:2:2 to 4:2:0 resampling using libswscale
- Filters via libavfilter
Noise reduction, etc.
- Handling for 3DTV formats
- FFmpeg - AC-3/E-AC3 and AAC/HE-AAC
- Twolame - MP2
- "E-distribution" to AC-3 metadata passthrough
- SMPTE 337M audio passthrough for AC-3 or MPEG audio
- DVB subtitles
- CEA subtitles
- Active Format Description
Insertion and passthrough
- VBI services
- libmpegts - ATSC/CableLabs/DVB/ISDB compatible MPEG-2 Systems multiplexer
- SMPTE 302M
- SMPTE 310M
- SMPTE 2022
- Possibility for software DVB modulation
- UDP/IP & RTP/UDP/IP Multicast
Monitoring and Control
- LCD Display
Likely using LCDproc or similar
- Command line interface
- Web-based interface
- GUI interface
- Integrated system benchmarks for determining viable real-time performance capabilities
- General system information
Kernel version, CPU/memory usage, buffer sizes, etc.