- 라이브 스트리밍 인프라는 Amazon IVS(Interactive Video Service) 와 Cloudflare Stream 을 함께 쓴다. 둘 중 무엇으로 만들지는 사용자가 고른 조건에서 서비스가 판단한다(§2.2).
- 사용자가 인프라를 선택하는 기능은 제공하지 않는다. 콘솔에는 인프라 이름도, "자동으로 선택된다"는 안내도 두지 않는다.
- 인프라 사업자와 세부 기술 구성은 서비스 내부에서 관리하며, 사용자는 채널 화질과 서비스 기능만 선택한다.
2.1 채널 운영방식 — 표준 / 전문#
채널은 앞으로 운영방식 을 갖는다. 지금 콘솔이 다루는 것은 표준 운영방식 하나뿐이고, 전문 운영방식은 Phase 2(§20) 이후다. 운영방식 선택 UI 도 아직 콘솔에 없다.
| 표준 운영방식 | 전문 운영방식 | |
|---|---|---|
| 인프라 | Amazon IVS 또는 Cloudflare Stream (조건에 따라 §2.2) | AWS Elemental MediaLive |
| 성격 | 송출하면 자동으로 시작되는 간편 설정 라이브(§6) | 운영자가 채널을 제어하는 방송 |
| 시점 | 현재 구현 범위 | Phase 2 이후 (§20) |
전문 운영방식에서만 제공할 것 — 아래는 IVS 로 만들 수 없거나 표준 운영방식의 성격과 맞지 않아 현재 콘솔에서 제외한다. 화면에도 두지 않는다.
- 프리롤(광고) — 소재를 올려 본 방송 앞에 재생. IVS 는 서버측 광고 삽입(SSAI)을 제공하지 않는다
(
adConfigurationArn은 광고 마커 전달일 뿐 삽입이 아니다). - 채널 중지 / 비활성 — IVS 채널에는 활성·비활성 상태가 없다. 만들면 항상 송출 대기다. MediaLive 는 채널을 START/STOP 하므로 전문 운영방식에서 성립한다.
- 대체 이미지(입력 끊김 시 정지 이미지) — MediaLive 의 Input Loss 슬레이트다. IVS 는 입력이 끊기면 스트림이 종료될 뿐 대신 내보낼 화면이 없다.
2.2 인프라는 서비스가 고른다 (IVS / Cloudflare Stream)#
V4 는 Amazon IVS 와 Cloudflare Stream 을 함께 쓴다. 그러나 콘솔에는 어느 쪽인지 드러내지 않는다. 사용자는 원하는 조건만 고르고, 그 조건을 만족하는 인프라를 서비스가 판단해서 채널을 만든다 — AWS 내부 명칭을 감추는 §3 과 같은 결이다. 화면에는 인프라 이름도, "자동으로 선택된다"는 안내도 두지 않는다.
Cloudflare Stream 으로는 만들 수 없는 것
| 항목 | 제약 |
|---|---|
| 녹화 · 라이브 채팅 | 제공하지 않음 |
| 화질 | 자동 프로파일(720/480/360/240) 고정 — 1080p 불가 |
| 송출 프로토콜 | RTMPS 만 (RTMP 불가) |
| 라이브 썸네일 | 제공하지 않음 |
| 입력 품질 모니터링 | 제공하지 않음 |
| 지연 | 초저지연 불가 |
판정 규칙 — 채팅 || 녹화 || FHD || 저지연 || 라이브 썸네일 중 하나라도 필요하면 IVS,
전부 필요 없으면 Cloudflare. 규칙은 channelSpec.ts resolveInfra() 한 곳에만 둔다 —
생성 경로와 수정 경로가 따로 판단하면 어긋난다.
생성 후 변경 — 이 조건들은 바꿀 수 있다. 다만 인프라가 달라지는 변경은 채널을 새로 만드는 것과 같아 송출 URL · 스트림 키 · 재생 URL 이 새로 발급되고, 인코더가 낼 수 있는 해상도도 달라질 수 있다. 저장 전에 이 사실을 확인받는다. 확인 문구에도 인프라 이름은 쓰지 않는다 — 사용자가 알아야 할 것은 "무엇이 바뀌는가"뿐이다. 방송 중에는 막는다(§19-6 과 같다).
라이브 썸네일 기본값은 꺼짐이다(§9). 켜면 만들 수 있는 인프라가 좁아지므로, 켜 두고 시작할 값이 아니라 필요할 때 켜는 값이다.