와우자 스트리밍 엔진 트랜스코더의 프리셋 설정

와우자 스트리밍 엔진 트랜스코더의 동작을 정의하는 프리셋의 설정 항목에 대해 알아보고, 권장되는 스트리밍 품질을 위한 포맷을 안내한다.

와우자 스트리밍 엔진(Wowza Streaming Engine, 이하 와우자) 트랜스코더의 프리셋(Preset)은 실제 트랜스코더가 콘텐츠를 어떻게 변환할지 정의하는 부분으로, 템플릿과 함께 트랜스코더의 동작을 정의하는 핵심 구성 요소이다.

와우자 트랜스코더만이 아니더라도, 인코더나 트랜스코더의 설정을 진행하기 위해서는 영상기술에 대한 정확한 이해를 가지고 있어야 한다. 각 장비나 제작사에서 메뉴얼등을 통해 제공하는 내용은 정도의 차이는 있겠지만 결국

“이 기능을 사용하려면 여기로 가서 이거를 누르시면 되요.
근데 이 기능이 뭐하는 건지는 굳이 말 안해도 알죠?”
수준이기 때문이다. 그럴 수 밖에 없는게, 아무 옵션이나 하나 고른다 해도 제대로 설명하려면 두꺼운 책 한권이 나온다.

이 글에서 관련된 모든 것들을 다 다루기에는 현실적으로 불가능 하다. 때문에 본 글에서는 와우자 트랜스코더에서 설정할 수 있는 각종 파라메터들과, 사용시 참고사항 정도만을 정리한다. 각각의 용어와 개념들은 외부 자료들을 참고할 것을 권하는 바이다.

또한, 와우자에서는 스트리밍 서비스 환경에 사용할 수 있는 권장 규격을 제공하고 있다. 인코더 또는 트랜스코더에서 출력할 스트림의 품질이 어느정도가 되어야 하는지 확신이 없는 독자 계시다면, 와우자에서 제공하는 권장 포맷 정보를 참고하시면 도움이 될 것이다.

Video Settings 섹션

Video Codec

출력될 스트림의 비디오 코덱을 지정해 준다. 기본적으로 H.264를 사용하며, 사용하는 환경에 따라 알맞은 코덱을 선택하면 된다.

H.263
출력되는 스트림의 비디오 코덱을 H.263으로 사용한다. 이 경우 하드웨어 가속을 사용할 수 없다.
H.264
출력되는 스트림의 비디오 코덱을 H.264으로 사용한다. 거의 모든 프로토콜에서 공통적으로 사용할 수 있다.
H.265
출력되는 스트림의 비디오 코덱을 H.265으로 사용한다. 거의 모든 프로토콜에서 공통적으로 사용할 수 있다.
VP8
출력되는 스트림의 비디오 코덱을 VP8로 사용한다. 보통 MPEG-DASH에 사용하며, 이 경우 AMD Xilinx U30를 이용한 하드웨어 가속을 사용할 수 없다.
VP9
출력되는 스트림의 비디오 코덱을 VP9로 사용한다. 보통 MPEG-DASH에 사용하며, 이 경우 AMD Xilinx U30를 이용한 하드웨어 가속을 사용할 수 없다.
Passthrough
아무런 트랜스코딩 작업 없이 입력된 비디오 스트림을 그냥 통과시킨다.
Disabled
출력되는 스트림에서 비디오를 제거한다. 즉, 오디오 only 스트림을 만들때 사용된다.

Video Bitrate

비디오 스트림에 사용할 비트레이트를 bps(Bits Per Second)단위로 적어준다. 예를들어 5Mbps라면, 5000000이라고 입력해 주어야 한다. 10000 ~ 24000000 (10Kbps ~ 24Mbps) 범위에서 설정이 가능하다.

Encoding Implementation

하드웨어 가속 트랜스코딩을 위한 보드가 있을 경우 사용하는 옵션으로, 사용할 하드웨어의 타입을 결정한다.

Default
기본 내장된 소프트웨어 인코더를 사용한다. H.264/5 코덱일 경우 MainConcept, VP8/9 코덱일 경우 VPX가 적용된다.
QuickSync
Intel Quick Sync를 사용할 경우 선택한다. 사용가능한 하드웨어가 없다면 소프트웨어 인코더가 동작한다.
NVENC
NVIDIA NVENC를 사용할 경우 선택한다. 사용가능한 하드웨어가 없다면 소프트웨어 인코더가 동작한다.
AMD Xilinx U30
AMD Xilinx U30을 사용할 경우 선택한다. H.264/5 인코딩이 가능하다.

하드웨어 가속 트랜스코딩을 선택할 경우, 아래에 있는 GPU ID항목이 활성화 되는데, 트랜스코딩 작업에 사용할 비디오카드의 ID를 지정 (Use GPU ID)하거나, 가용한 보드를 찾아 사용하도록 (Use first available GPU)할 수 있다.

Profile

MPEG Profile을 선택한다. Profile은 플레이어와의 호환성을 위해 만들어진 것으로, 이 비디오를 재생하기 위해서 MPEG의 어떤 기능을 사용해야 하는지 그룹화 시킨 것이다. 본 필자는 Main 사용을 권하며, High도 많이 사용된다.

프로파일에 대한 자세한 내용은 위키백과 관련항목이나 표준문서등을 참고하기 바란다.

Baseline
낮은 복잡도를 가진 형식
Main
중간 복잡도를 가진 기본 형식으로, 본 필자가 권장하는 옵션이다.
High
높은 복잡도를 가진 형식.

만약 출력 코덱이 H.265를 사용할 경우, Main Profile 만을 사용할 수 있다.

Key Frame Interval

GOP(Group of Pictures) 설정으로, 키 프레임(I-Frame)을 삽입하는 간격을 선택해 준다. 원본 소스와 동일한 간격으로 삽입할지(Same as source) 또는 새롭게 키 프레임을 삽입할지 선택할 수 있다. 만약, 프리셋이 트랜스레이팅을 위한 것이라면 반드시 원본과 동일 옵션을 선택해야 한다.

이와 다르게, 트랜스코드를 위한 프리셋일 경우 1에서 10000까지의 범위에서 프레임 간격을 설정할 수 있다.

참고로, 와우자 트랜스코더의 GOP 구조 기본값은 ‘IP’(I Frame – Predicted Frame) 구조이다.

Frame Size 섹션

출력되는 해상도(화면의 크기)와 관련된 옵션을 지정하는 부분이다. 사실 정확하게 말해자면, 프레임 사이즈와 해상도는 서로 다른 개념이긴 하지만, 여기서는 같은 개념으로 생각해도 무방하다.

Fit Mode

출력 스트림의 화면 크기를 조정할 때 사용할 스케일링 방법을 결정한다. 아래의 6가지 옵션 중 하나를 선택한다.

match-source
원본의 크기를 그대로 사용한다.
letterbox
영상 스케일링 방식(레터박스) 참고
fit-width
원본 비율을 유지하면서 가로 폭을 기준으로 화면 크기를 조정
fit-height
원본 비율을 유지하면서 세로 길이을 기준으로 화면 크기를 조정
crop
원본 비율을 유지하면서 가로와 세로크기에 맞춰 원본의 남는 부분을 잘라낸다. 영상 스케일링 방식(크롭) 참고
stretch
영상 스케일링 방식(아나몰픽) 참고

Width / Height

출력할 스트림의 해상도 크기를 설정한다. 가로픽셀 수와 세로픽셀 수를 입력해 준다. 각각의 최소값은 16 픽셀이다.

Crop

와우자 스트리밍 엔진 트랜스코더 프리셋 설정의 크롭 파라메터

입력 스트림에서 잘라낼 크롭 영역을 지정한다. 화면 상하좌우 영역을 픽셀단위로 입력한다.

Audio Settings 섹션

Audio Codec

출력 스트림에 사용할 오디오 코덱을 선택해 준다.

AAC
출력 오디오에 AAC-LC 코덱을 적용한다. 기본 권장값
Vorbis
출력 오디오에 Vorbis 코덱을 적용한다. MPEG-DASH에 자주 사용.
Opus
출력 오디오에 Opus 코덱을 적용한다. MPEG-DASH에 자주 사용.
Passthrough
입력 스트림의 오디오 트랙을 그대로 출력한다.
Disabled
출력 스트림에서 오디오 트랙을 제거한다.

Audio Bitrate

오디오 비트레이트 bps단위로 입력해 준다. 3000 ~ 1000000 (3Kbps ~ 1Mbps) 의 범위로 지정이 가능하다.

Overlay Images 섹션

출력 스트림에 삽입할 이미지 파일을 선택 및 추가하고 (단, 업로드는 FTP등을 이용해 진행해 주어야 한다.), 표시 위치등을 설정할 수 있다. RGB모드의 gif, jpeg, png, bmp 파일등을 사용할 수 있으며 채널로고 또는 워터마크등을 표시하기 위해서 사용된다.

글의 마무리

이 글에서 정리한 트랜스코더 프리셋 설정 항목들은 모두 웹 UI 에서 보이는 항목들이다. 여기에 보이지 않는 세부적인 옵션들도 있으며, 해당 항목들은 트랜스코더의 XML 설정 파일을 수정해 적용이 가능하다.

본 글 서두에 말한바와 같이, 본 글은 와우자 스트리밍 엔진의 트랜스코더를 설정하는 방법 (그 중에서도 웹 UI에서 보이는 부분)만을 다루고 있다. 어떤 값을 집어넣어야 하는지, 왜 이 값을 선택해야 하는지에 대한 내용은 본 필자의 다른 글들이나 관련한 다른 글들을 통해 확인해 주기 바라는 바이다.

1998년 라이브 음향 엔지니어로 시작해 2005년부터 방송 송출 및 미디어 전송 엔지니어의 삶을 살아가고 있습니다. 아날로그 제작 시스템부터 최신 IP 미디어 라스트마일 환경까지, 미디어 기술과 정보 통신 기술(ICT)의 융합을 통해 새로운 솔루션을 제안하고 실현시켜 왔습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Post comment