Publish via WebRTC/WHIP

본 Guide가 포함된 Section에서는 AWS Marketplace에서 구독할 수 있는 OvenMediaEngine Enterprise의 기능을 설명합니다.

WebRTC 전송을 지원하는 Live Encoder 또는 Web Browser에서, 별도의 플러그인 없이 Media Source를 WebRTC/WHIP Protocol을 이용하여 OvenMediaEngine Enterprise on AWS에 Publish할 수 있습니다.

또한, WebRTC Simulcast를 활용하면 하나의 송출 세션에서 여러 화질 트랙을 함께 전송할 수 있어, 시청자 네트워크 상태에 맞춰 더 안정적으로 초저지연 Live Streaming을 제공하고 트랜스코딩 부담을 줄이는 구성도 가능합니다.

본 Guide에서는 WebRTC/WHIP로 Stream을 Publish하는 절차와, 송출 이후 기본 재생 및 상태 확인 방법을 순서대로 안내합니다.

Item
Supported

Container

RTP / RTCP

Security

DTLS, SRTP

Transport

ICE

Error Correction

ULPFEC (VP8, H.264), In-band FEC (Opus)

Codec

VP8, H.264, H.265, Opus

Signaling

Self-Defined Signaling Protocol, Embedded WebSocket-based Server / WHIP

WebRTC/WHIP Publish 시작하기

본 예제에서는 가장 보편적으로 사용되는 Live Encoder Software인 OBS Studio (Option A)와 AirenSoft에서 제공하는 OvenPlayer Demo (Option B)를 사용했습니다.

1

[Option A] Live Encoder로 송출 (OBS Studio)

  1. Open Broadcaster Software (OBS) Studio를 실행합니다.

  2. 송출할 Media Source (또는 Camera, Screen Capture 등)를 추가합니다.

  3. 이후 OBS 우측 하단의 [Settings]를 클릭합니다.

  1. Settings 화면 좌측에서, [Stream] 탭을 선택합니다.

  2. 그리고 [Service]에서 [WHIP]을 선택한 뒤, Server 입력란에 아래 WebRTC/WHIP Ingress URL 패턴 중 하나를 입력하십시오.

    1. Non-TLS:

      • WebRTC Input URL 형식: ws://{Public IPv4 or Domain}:80/{app}/{stream}?direction=send

      • WHIP URL 형식: http://{Public IPv4 or Domain}:80/{app}/{stream}?direction=whip

    2. TLS:

      • WebRTC (TLS) Input URL 형식: wss://{Public IPv4 or Domain}:443/{app}/{stream}?direction=send

      • WHIP (TLS) URL 형식: https://{Public IPv4 or Domain}:443/{app}/{stream}?direction=whip

circle-info

WebRTC Input 또는 WHIP URL의 패턴을 모르는 경우, Web Conosle에서 [Managed Stream]을 만든 후 [URLs] 탭에서 확인할 수 있습니다.

  1. 이후 [Output] 탭에서 원활한 초저지연 및 저지연 스트리밍을 위해 Keyframe Interval1초로, B-frames0으로 설정할 것을 권장합니다.

circle-check
  1. 필요에 따라 [Audio], [Video] 등 각 탭에서 세부 설정을 조정한 뒤, [OK]를 클릭하여 OBS 메인 화면으로 돌아갑니다.

  2. 모든 설정이 완료되었다면, [Start Streaming]을 클릭하여 송출을 시작합니다.

2

[Option B] OvenPlayer Demo로 송출

  1. [WebRTC Ingress URL] 필드에 Non-TLS, TLS 구분하여, 아래 WebRTC/WHIP Ingress URL 패턴 중 하나를 입력하십시오.

    1. Non-TLS:

      • WebRTC Input URL 형식: ws://{Public IPv4 or Domain}:80/{app}/{stream}?direction=send

      • WHIP URL 형식: http://{Public IPv4 or Domain}:80/{app}/{stream}?direction=whip

    2. TLS:

      • WebRTC (TLS) Input URL 형식: wss://{Public IPv4 or Domain}:443/{app}/{stream}?direction=send

      • WHIP (TLS) URL 형식: https://{Public IPv4 or Domain}:443/{app}/{stream}?direction=whip

  2. 우측 [START] 버튼을 클릭하여, Publishing이 정상적인지 체크합니다.

circle-info

WebRTC Input 또는 WHIP URL의 패턴을 모르는 경우, Web Conosle에서 [Managed Stream]을 만든 후 [URLs] 탭에서 확인할 수 있습니다.

3

Web Console에서 스트림 상태 및 재생 확인

  • Web Console에 OBS 또는 OvenPlayer Demo에서 송출한 Stream이 목록에 표시되는지 확인합니다.

Last updated