ABR and Transcoding Settings
OvenMediaEngine에 Live Transcoder가 내장되어 있어 Live Transcoder로 Ingest되는 Media Source를 Decoding하고, 설정된 코덱으로 다시 Encoding하거나 Transcoder 옵션 (Video Bitrate, Video Framerate, Audio Samplerate 등)을 활용하여 품질이 조정된 여러 개의 Live로 Encoding할 수 있습니다.
Transcoding 옵션 확인하기
ABR and Transcoding Settings 페이지에서 OvenMediaEngine에 내장된 Live Transcoder의 설정 내용을 Application
별로 확인할 수 있습니다.
Transcode Webhook 설정 내용 확인하기

ABR and Transcoding Settings 페이지에서 Transcode Webhook의 활성화 여부 및 설정 내용을 확인할 수 있습니다.
Enabled
: 해당 옵션을 통해TranscodeWebhook
기능을 활성화하거나 비활성화할 수 있습니다.Control Server URL
: OvenMediaEngine으로 부터OutputProfiles
관련 요청을 받고 응답을 해주는 Control Server의 URL을 기입하는 항목이며, HTTP와 HTTPS를 모두 지원합니다.Secret Key
: Control Server 인증을 통과하는데 사용되는 Secret Key입니다. 보안 인증을 통과하기 위해 HTTP Payload의 HMAC-SHA1 암호화된 값이 HTTP Header의X-OME-Signature
에 추가되는데 Secret Key는 이 값을 생성하는데 사용됩니다.Timeout
: Control Server 연결 요청 후 응답을 기다리는 시간 (밀리 초)입니다.
Use Local Profiles On 옵션 확인하기
Failure
: Contorl Server와의 통신 실패 시 Local 설정의OutputProfiles
를 사용할지 여부를 결정하는 옵션입니다. 기본적으로true
로 설정되어 있지만, 사용자가 해당 옵션을false
로 설정한 경우 Control Server와의 통신 실패 시 Output Stream을 만들지 못합니다.Server Disallow
: Control Server와의 연결 시200 OK
로 응답했어도allowed
가false
로 설정된 경우 OvenMediaEngine은UseLocalProfilesOnServerDisallow
정책을 따릅니다.Error Response
: Control Server와의 연결 시400 Bad Request
,404 Not Found
,500 Internal Error
와 같은 오류 상태 코드로 응답하는 경우, OvenMediaEngine은UseLocalProfilesOnErrorResponse
정책을 따릅니다.
GPU Acceleration 설정 내용 확인하기
Server.xml
에서 HardwareAcceleration
옵션이 활성화되면, Stream을 생성할 때 Hardware Codec이 자동으로 사용되고, Hardware 리소스가 부족하여 Hardware Codec을 사용할 수 없는 경우 Software Codec으로 대체됩니다.

ABR and Transcoding Settings 페이지에서 OvenMediaEngine Enterprise가 Enterprise-grade로 지원하는 기능 중 하나인 GPU 기반 Hardware Decoding 및 Encoding (Hardware-Accelerated Video Encoding)의 활성화 여부 및 설정 내용을 확인할 수 있습니다.
Encoder 옵션 확인하기
Enabled
: 해당 옵션을 통해HardwareAcceleration Encoder
를 활성화하거나 비활성화할 수 있습니다.Module
:HardwareAcceleration Encoder
로 사용할 NVIDIA GPU, Xilinx Alveo U30MA, 또는 Intel QuickSync 등과 같은 Module을 지정합니다.
Decoder 옵션 확인하기
Enabled
: 해당 옵션을 통해HardwareAcceleration Decoder
를 활성화하거나 비활성화할 수 있습니다.Module
:HardwareAcceleration Decoder
로 사용할 NVIDIA GPU, Xilinx Alveo U30MA, 또는 Intel QuickSync 등과 같은 Module을 지정합니다.
Output Profile 목록

ABR and Transcoding Settings 페이지에서 Application
에 설정된 Output Profile
목록을 확인할 수 있습니다.
Name
: 사용자는 Output Profile을 여러 개 생성할 수 있으므로, 각 Output Profile을 구분 짓기 위해 고유의 Pofile 명을 지정할 수 있습니다.Output Stream Name
: Output Profile이 설정되었다면 해당OutputProfile
내Encodes
설정에 따라 Ingress Stream이 Encoding되는데, 이때 생성되는 Egress Stream 명은Output Stream Name
규칙을 따르게 됩니다. 예를 들어, Ingress Stream 명이sports
였다면 위 이미지에 명시된 규칙에 따라sports_bypass
가 됩니다.
Adaptive Bitrate Streaming (ABR) 설정 내용 확인하기 | 0.14.3.0+
ABR and Transcoding Settings 페이지에서 Application
의 Output Profile 별 ABR 설정 내용을 확인할 수 있습니다.

OutputProfiles
에 Playlists
또는 여러 개의 Rendition
이 포함된 Playlist
를 추가하여 ABR을 설정할 수 있습니다. OutputProfile
은 여러 개의 Playlist
가 있을 수 있으며, 각 Playlist
는 FileName
으로 액세스할 수 있습니다.
Playlist 설정 내용 확인하기
Playlists
Name
: 사용자는 여러 개의 Playlist를 구성할 수 있으므로, 각 Playlsit를 구분 짓기 위해 고유의 이름을 지정할 수 있습니다.File Name
: 각 Playlist에 엑세스 할 수 있도록File Name
을 지정할 수 있습니다. 단,File Name
에는Playlist
및Chunklist
가 포함되어서는 안 됩니다.
Options
WebRTC Auto ABR
: WebRTC Stream에 ABR이 적용되어 있는 경우 해당 옵션을 통해 상황에 따라 시스템이Rendition
을 자동으로 전환합니다.HLS Chunklist Path Depth
:Chunklist
는 파일의 전체 경로를 포함하는 절대 URL을 사용하거나, Playlist 기반 상대 URL을 사용할 수 있습니다.HLS Chunklist Path Depth
를 0으로 설정하면, 모든 Chunk 파일 (.ts
)이 Playlist와 같은 디렉토리 레벨에 위치하게 됩니다.
Enable TS Packaging
: Legacy HLS에서 사용되는.ts
File은 사전에 A/V Mux 처리를 해야 하므로EnableTsPackaging
옵션을 설정해야 합니다.
Renditions
Name
: 사용자는 여러 개의 Rendition을 구성할 수 있으므로, 각 Rendition을 구분 짓기 위해 고유의 이름을 지정할 수 있습니다.Video
:OutputProfile
내Video Encode
를 설정했다면,Name
을 지정한 후 해당Video Profile Name
세트를Rendition Video
에 기입하면 자동으로 연결하 사용할 수 있습니다.Audio
:OutputProfile
내Audio Encode
를 설정했다면,Name
을 지정한 후 해당Audio Profile Name
세트를Rendition Audio
에 기입하면 자동으로 연결하여 사용할 수 있습니다.
Streaming Protocol 별 지원하는 Codec
각 Streaming Protocol이 지원하는 Codec이 있습니다. Playlist에 여러 개의 Codec을 설정했다면 OvenMediaEngine은 해당 Protocol에 맞는 Codec을 자동으로 선택하여 Stream을 전송합니다. 그러나 Streaming Protocol에 맞지 않는 Codec으로 설정되어 있다면 Stream을 전송할 수 없습니다.
List of supported codecs by streaming protocol: https://airensoft.gitbook.io/ovenmediaengine/transcoding#supported-codecs-by-streaming-protocol
Encodes 설정 내용 확인하기
Live Transcoder가 지원하는 Codec 목록: https://airensoft.gitbook.io/ovenmediaengine/transcoding#supported-video-audio-and-image-codecs
Audio Encoding Profile 설정 내용 확인하기

Audio Profile은 Ingress Audio를 Encoding 할 때 사용하며, Web Brower 정책이나 규격에 맞춰 Egress 하기 위해 필요합니다.
Name
:Rendition
에서 사용할 Audio Encode Name을 지정합니다.Codec
: Audio Codec은opus
또는aac
로 설정할 수 있습니다.Bitrate
: 1초당 전송할 AudioBit
를 설정합니다.Samplerate
: 1초당 전송할 AudioSample
을 설정합니다.Channel
: Audio를 재생할 Channel의 개수를 지정합니다. 예를 들어Audio Channel
의 값이 2라면 Stereo로 동작하는 것을 의미합니다.
Audio Encoding Profile만 설정하는 경우 Audio-only로 전송할 수 있습니다.
Video Encoding Profile 설정 내용 확인하기

Video Profile은 Ingress Video를 Encoding 할 때 사용합니다. Web Brower 정책이나 규격에 맞춰 Egress 하기 위해 필요합니다.
Name
:Rendition
에서 사용할 Video Encode Name을 지정합니다.Codec
: Video Codec은vp8
,h264
, 또는h265
로 설정할 수 있습니다.Bitrate
: 1초당 전송할 VideoBit
를 설정합니다.Width
: Encoding할 Video의 가로 사이즈를 지정할 수 있습니다.Height
: Encoding할 Video의 세로 사이즈를 지정할 수 있습니다.
원본 Video의 종횡비를 유지한 채 전체적으로 해상도를 줄이거나 키우고 싶다면 Width
값만 입력하는 것도 좋은 방법입니다. OvenMediaEngine이 원본 Video 비율에 따라 자동으로 Height
를 계산하여 해상도를 조정할 것입니다.
Framerate
: 1초당 몇 개의 Image로 구성된 Video로 Encdoing 할 것인지 설정합니다.Key Frame Interval
: 두 개의 Key Frame 사이에 몇 개의 Frame이 포함될지 설정합니다 (0~600). 기본값은 Framerate를 따릅니다 (1초).B-Frames
: B-Frame의 개수를 설정합니다 (0~16). 기본값은 0입니다.Profile
:Video Codec
이h264
로 설정되어 있을 때 사용할 수 있는 옵션입니다.baseline
,main
,high
중에 하나를 지정할 수 있습니다.Preset
: 각 Video Codec이 지원하는Preset
를 지정할 수 있습니다.h264
를 사용하는 경우ultrafast
,superfast
,veryfast
,faster
,fast
,medium
,slow
,slower
,veryslow
,placebo
등의Preset
을 사용할 수 있습니다.
Thread Count
: Video Encoding 시, 사용할 Thread 수를 지정할 수 있습니다.
Image Encoding Profile 설정 내용 확인하기

Image Profile은 Stream의 Thumbnail을 추출하는 옵션이며, 원본 그대로 추출하는 Bypass
옵션을 사용할 수 없습니다.
Codec
: Image Codec은jpeg
또는png
로 설정할 수 있습니다.Framerate
: Thumbnail Image를 1초 당 몇 장 추출 할 것인지 설정하는 옵션이며,Image Framerate
가Video Framerate
에 가까울 수록 움직임이 자연스러운 Thumbnail을 추출할 수 있지만 Server 과부하를 불러 일으킬 수 있습니다.Width
: 추출할 Thumbnail Image의 가로 사이즈를 지정할 수 있습니다.Height
: 추출할 Thumbnail Image의 세로 사이즈를 지정할 수 있습니다.
원본 Video의 종횡비를 유지하고 싶다면 Width
값만 입력하는 것도 좋은 방법입니다. OvenMediaEngine이 원본 Video 비율에 따라 자동으로 Height
를 계산하여 Thumbnail Image를 추출할 것입니다.
조건부 Transcoding
Ingress Stream의 Codec 또는 Track 품질이 BypassIfMatch
의 모든 조건과 일치하면 Encoding 없이 Pass-through로 Egress Stream을 전송할 수 있습니다.
Audio Passthrough 조건
Codec
: Audio Codec이 같을 때 Pass-through 됩니다.Samplerate
: 설정에 따라 Audio Samplerate 값이 같거나, 작거나 같거나, 크거나 같을 때 Pass-through 됩니다.Channel
: 설정에 따라 Audio Channel 수가 같거나, 작거나 같거나, 크거나 같을 때 Pass-through 됩니다.
Video Passthrough 조건
Codec
: Video Codec이 같을 때 Pass-through 됩니다.Width
: 설정에 따라 Video의 Width 크기가 같거나, 작거나 같거나, 크거나 같을 때 Pass-through 됩니다.Height
: 설정에 따라 Video의 Height 크기가 같거나, 작거나 같거나, 크거나 같을 때 Pass-through 됩니다.SAR
:BypassIfMatch
에 지정된 조건과 해상도 및 비율이 일치하면 Pass-through 됩니다.