OvenMediaEngine Enterprise
English
English
  • Introduction
  • OvenMediaEngine Configuration
  • Getting Started
    • Getting Started with Ubuntu
    • Getting Started with RHEL
    • Getting Started with Docker
  • Enterprise-grade Features
    • Web Console
      • Web Console Configuration
      • Sign In
      • Change Password
      • Web Console Home
        • Stream List
      • Stream Monitoring
        • Managed and Instant Streams
        • Scheduled Channels | 0.16.4.0+
        • Multiplex Channels | 0.16.5.0+
      • Monitoring
      • Logs
      • Configuration Files
      • Settings
        • Server
        • Live Sources (Ingress Protocols)
          • RTMP | 0.9.0.0+
          • WebRTC/WHIP | 0.12.0.0+/0.15.1.0+
          • SRT | 0.12.0.0+
          • MPEG-2 TS | 0.10.4.0+
          • Scheduled Channels | 0.16.4.0+
          • Multiplex Channels | 0.16.5.0+
        • ABR and Transcoding
          • Transcoding
          • Output Profiles
          • Adaptive Bitrate Streaming (ABR) | 0.14.3.0+
          • Encodes
          • Conditional Transcoding
        • Streaming (Egress Protocols)
          • WebRTC/WHIP | 0.9.0.0+/0.15.1.0+
          • Low Latency HLS (LLHLS) | 0.14.0.0+
          • Legacy HLS | 0.16.6.0+
        • TLS Encryption | 0.14.0.0+
        • Access Control
          • Signed Policy | 0.12.0.0+
          • Admission Webhooks | 0.12.2.0+
        • Thumbnail | 0.15.7.0+
        • Recording | 0.16.5.0+
        • Push Publishing | 0.15.14.0+
        • REST API | 0.11.0.0+
        • Alert | 0.15.11.0+
      • Restart
    • Record Delivery | 0.16.5.0+
    • Digital Rights Management (DRM)
      • OvenMediaEngine Configuration for DRM | 0.16.0.0+
      • PallyCon DRM Configuration | 0.16.4.0+
    • Hardware-Accelerated Video Encoding | 0.16.4.0+
    • Proxy Protocol Integration | 0.16.6.2+
    • Event Monitoring | 0.18.1.0+
      • Configuration
      • Event Specification
    • Web Console Publishing | 0.18.1.2+
  • Advanced Management Tools
    • API Storage | 0.17.0.0+
    • Restart Application | 0.17.0.0+
    • Publisher Extension
    • RTMP Authentication | 0.17.2.0+
    • Generating Audio PTS | 0.17.2.3+
    • Inserting AMF0 messages in RTMP Push Publisher | 0.17.3.0+
    • Inserting Ad Markers (EXT-X-CUE-OUT/EXT-X-CUE-IN) | v0.17.3.0+
    • Inserting SEI into H.264 (AVC) Streams | v0.18.0.0+
  • Release Notes
    • 0.18.1 (May 9, 2025 update)
    • 0.18.0
    • 0.17.3
    • 0.17.2
    • 0.17.1
    • 0.17.0
    • 0.16.8
    • 0.16.7
    • 0.16.6
    • 0.16.5
    • 0.16.4
Powered by GitBook
On this page
  • Transcoding Settings
  • Check Transcode Webhook Activation
  • Check GPU Acceleration Activation
  • List of Output Profiles
  • Check Adaptive Bitrate Streaming (ABR) Settings | 0.14.3.0+
  • Check Playlist Settings
  • Encodes Settings
  • Check Audio Encoding Profile Settings
  • Check Video Encoding Profile Settings
  • Check Image Encoding Profile Settings
  • Conditional Transcoding Settings
  • Matching Elements in Audio
  • Matching Elements in Video
  1. Enterprise-grade Features
  2. Web Console
  3. Settings

ABR and Transcoding

PreviousLive Sources (Ingress Protocols)NextStreaming (Egress Protocols)

Last updated 6 months ago

OvenMediaEngine has an embedded Live Transcoder that can decode Media Sources ingested from the live transcoder, re-encode them with a configured codec, or encode them Live with adjusted quality by utilizing transcoder options (Video Bitrate, Video Framerate, Audio Samplerate, etc.).

Transcoding Settings

On the ABR and Transcoding Settings page, you can check the settings of the Live Transcoder embedded into OvenMediaEngine for each Application.

Check Transcode Webhook Activation

ABR and Transcoding Settings 페이지에서 Transcode Webhook의 활성화 여부 및 설정 내용을 확인할 수 있습니다.

  • Enabled: Sets can enable or disable TranscodeWebhook.

  • Control Server URL: The URL of the Control Server, and supports both HTTP and HTTPS.

  • Secret Key: This is the Secret Key used to pass authentication for the Control Server. To pass security authentication, an HMAC-SHA1 encrypted value of the HTTP Payload is added to the HTTP Header's X-OME-Signature. This Key is used for generating this value.

  • Timeout: Timeout value used when connecting to the Control Server

See the Use Local Profiles On Options:

  • Failure: This determines whether to use the OutputProfiles from Local settings in case of communication failure with the Control Server. By default, it is set to true, but if you sets this option to false, a communication failure with the Control Server will result in a failure to create the Output stream.

  • Server Disallow: When the Control Server responds with a 200 OK, but allowed is set to false, OvenMediaEngine follows UseLocalProfilesOnServerDisallow policy.

  • Error Response: When the Control Server responds with error status codes such as 400 Bad Request, 404 Not Found, or 500 Internal Error, OvenMediaEngine follows UseLocalProfilesOnErrorResponse policy.

Check GPU Acceleration Activation

If you enable HardwareAcceleration option in Server.xml, Hardware Codec will be used automatically when creating a stream, and fall back to Software Codec if Hardware Codec cannot be used due to insufficient hardware resources.

See the Encoder Options:

  • Enabled: Sets can enable or disable HardwareAcceleration Encoder.

  • Module: Sets the module to be used as HardwareAcceleration Encoder, such as NVIDIA GPU, Xilinx Alveo U30MA, or Intel QuickSync.

See the Decoder Options:

  • Enabled: Sets can enable or disable HardwareAcceleration Decoder.

  • Module: Sets the module to be used as HardwareAcceleration Decoder, such as NVIDIA GPU, Xilinx Alveo U30MA, or Intel QuickSync.

List of Output Profiles

On the ABR and Transcoding Settings page, you can see a list of Output Profiles set for your Application.

  • Name: Since you can make multiple output profiles, so you can specify a unique profile name to distinguish each output profile.

  • Output Stream Name: When an Output Profile is set, the Ingress Stream is encoded according to the Encodes setting of the OutputProfile, and the generated egress stream name follows the Output Stream Name rules. For example, if the ingress stream name is sports, it will be sports_bypass according to the rules specified in the image above.

Check Adaptive Bitrate Streaming (ABR) Settings | 0.14.3.0+

You can check the ABR Settings for each Output Profile of the Application on the ABR and Transcoding Settings page.

You can set up ABR by adding Playlists or a Playlist with multiple Renditions to OutputProfiles. An OutputProfile can have multiple playlists, and each playlist can be accessed by FileName.

Check Playlist Settings

Playlists

  • Name: You can configure multiple playlists, each playlist can be given a unique name to distinguish them.

  • File Name: You can specify a File Name to access each playlist. However, the File Name must not contain the Playlist and Chunklist.

Options

  • WebRTC Auto ABR: When ABR is applied to a WebRTC Stream, this option allows the system to automatically switch Rendition as needed.

  • HLS Chunklist Path Depth: Chunklist may use absolute URLs, which include the full path to the file, or relative URLs, which are shorter and rely on the base URL provided by the playlist.

    • If you set HLS Chunklist Path Depth to 0, all Chunk files (.ts) will be located at the same directory level as Playlist (.m3u8).

  • Enable TS Packaging: .ts files used in Legacy HLS require A/V Mux processing in advance, so the EnableTsPackaging option must be set.

Renditions

  • Name: You can configure multiple renditions, and you can specify a unique name to distinguish each Rendition.

  • Video: You set up the Video Encode Name in OutputProfile and enter the corresponding Video Profile Name set for the Rendition Video, OvenMediaEngine can automatically connect and use it.

  • Audio: You set up the Audio Encode Name in OutputProfile and enter the corresponding Audio Profile Name set for the Rendition Audio, OvenMediaEngine can automatically connect and use it.

Supported Codecs by Streaming Protocol

Each streaming protocol has a supported codec. If you set multiple codecs in the Playlist, OvenMediaEngine will automatically select the codec that matches the protocol and transmit the stream. However, if the codec is set to something that does not match the streaming protocol, the stream cannot be transmitted.

Encodes Settings

Check Audio Encoding Profile Settings

Audio Profile is used when encoding ingress audio and is required to egress under policies or standards of web browsers.

  • Name: Enter the encode name for Audio Renditions.

  • Codec: Specifies the opus or aac codec to use.

  • Bitrate: Sets the audio bits transmitted per second.

  • Samplerate: Sets the audio samples transmitted per second.

  • Channel: Sets the number of audio channels.

If you only set the Audio Encoding Profile, you can transmit it as Audio-only.

Check Video Encoding Profile Settings

Video Profile is used when encoding ingress video and is required to egress under policies or standards of web browsers.

  • Name: Enter the encode name for Video Renditions.

  • Codec: Specifies the vp8, h264, or h265 codec to use.

  • Bitrate: Sets the video bits transmitted per second.

  • Width: Sets the width of the resolution.

  • Height: Sets the height of the resolution.

If you want to reduce or increase the overall resolution while maintaining the aspect ratio of the original video, simply enter the Width. OvenMediaEngine will automatically calculate the Height according to the aspect ratio of the original video and adjust the resolution.

  • Framerate: Sets the video frame per second.

  • Key Frame Interval: Sets the number of frames between two keyframes (0~600). The default is framerate (i.e. 1 second).

  • B-Frames: Sets the number of B-frames (0~16). The default is 0.

  • Profile: This option is available when the video codec is set to h264. You can specify one of the baseline, main, and high.

  • Preset: Uses preset for encoding quality and performance.

    • If you use h264, you can use Preset such as ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow, placebo.

  • Thread Count: Sets the number of threads in encoding.

Check Image Encoding Profile Settings

Image Profile is an option to generate a thumbnail of the stream and the Bypass option, which extracts the original as is, cannot be used.

  • Codec: Specifies the jpeg or png codec to use.

  • Framerate: This option sets the number of thumbnail images to be extracted per second. The closer the Image Framerate is to the Video Framerate, the smoother the thumbnail movement will be but may overload the server.

  • Width: Sets the width of the thumbnail.

  • Height: Sets the height of the thumbnail.

If you want to generate a thumbnail image while maintaining the aspect ratio of the original video, just enter the Width. OvenMediaEngine will automatically calculate the Height and extract a thumbnail image according to the aspect ratio of the original video.

Conditional Transcoding Settings

If the codec or track quality of the ingress stream matches all of the conditions of BypassIfMatch, the egress stream can be transmitted as a Pass-through without encoding.

Matching Elements in Audio

  • Codec: When the Audio Codec is equal to the conditions of BypassIfMatch.

  • Samplerate: When the Audio Samplerate value is equal to, less than or equal to, or greater than or equal to the set BypassIfMatch conditions.

  • Channel: When the number of Audio Channels is equal to, less than or equal to, or greater than or equal to the set BypassIfMatch conditions.

Matching Elements in Video

  • Codec: When the Video Codec is equal to the conditions of BypassIfMatch.

  • Width: When the Width of the resolution is equal to, less than or equal to, or greater than or equal to the set BypassIfMatch conditions.

  • Height: When the Height of the resolution is equal to, less than or equal to, or greater than or equal to the set BypassIfMatch conditions.

  • SAR: When the conditions specified in BypassIfMatch match the Resolution and Aspect Ratio.

Detailed Guide:

On the ABR and Transcoding Settings page, you can verify that GPU-based hardware decoding and encoding (), one of the features supported by OvenMediaEngine Enterprise at the Enterprise-grade, is enabled and its settings are checked.

Detailed Guide:

Detailed Guide:

Detailed Guide:

List of supported codecs by streaming protocol:

List of codecs supported by Live Transcoder:

Detailed Guide:

Detailed Guide:

Detailed Guide:

Detailed Guide:

https://airensoft.gitbook.io/ovenmediaengine/transcoding/transcodewebhook
Hardware-Accelerated Video Encoding
https://airensoft.gitbook.io/ovenmediaengine/transcoding/gpu-usage
https://airensoft.gitbook.io/ovenmediaengine/transcoding#outputprofiles
https://airensoft.gitbook.io/ovenmediaengine/transcoding#adaptive-bitrate-streaming-abr
https://airensoft.gitbook.io/ovenmediaengine/transcoding#supported-codecs-by-streaming-protocol
https://airensoft.gitbook.io/ovenmediaengine/transcoding#supported-video-audio-and-image-codecs
https://airensoft.gitbook.io/ovenmediaengine/transcoding#audio
https://airensoft.gitbook.io/ovenmediaengine/transcoding#video
https://airensoft.gitbook.io/ovenmediaengine/transcoding#image
https://airensoft.gitbook.io/ovenmediaengine/transcoding#conditional-transcoding
In the Transcode Webhook of the ABR and Transcoding Settings
In the GPU Acceleration of the ABR and Transcoding Settings
In the Output Profiles of the ABR and Transcoding Settings
In the Audio Encodes of the ABR and Transcoding Settings
In the Video Encodes of the ABR and Transcoding Settings
In the Image Encodes of the ABR and Transcoding Settings