Livepack V4 이슈 — 결정 완료

작성 요령


1. 녹화 기능

Provider별 녹화/다운로드 지원

MediaLive IVS CF Stream
녹화 S3 HLS .ts S3 HLS .ts CF 내부 HLS
MP4 다운로드 별도 변환 필요 미지원 (HLS만, MP4 변환 파이프라인 필요) /downloads API (자동, 무료)
녹화 비용 S3 비용 S3 비용 $5/1,000분

결정


2. 정적 리소스 CDN (썸네일/플레이어 에셋)

결정

대상 리소스


3. Couscous API V4 용 작업

V3 아키텍처 분석

플레이어 → couscous-api (API Gateway /api/liveWatches)
    → Kinesis Data Stream (wcdAnalytics-Livepack-PlayLive-Play-V3)
        ├→ Flink (analytics-liveplay-flink) : 10초 윈도우 집계 → DynamoDB upsert
        ├→ couscousRealtimeLiveWatches2 (Firehose Transform Lambda) : DynamoDB put_item + peak(mvc/muvc) 추적
        └→ Firehose → S3 (Parquet, Athena 배치 분석용)

DynamoDB LiveWatchesManager 컬럼:

컬럼 설명 갱신 주체
key beid (PK) Flink / Lambda
chid 채널 ID Flink / Lambda
cvc 동시 시청자 (세션 기준) Flink (upsert) + Lambda (put_item)
cuvc 고유 시청자 (유저 기준) Flink (upsert) + Lambda (put_item)
mvc 최대 동시 시청자 Lambda (기존값과 비교, max 유지)
muvc 최대 고유 시청자 Lambda (기존값과 비교, max 유지)
ttl TTL (만료 시각) Lambda
e 이벤트 타입 Flink ('I')

조회 API:

V4 구현 완료

1. 파이프라인 인프라 (analytics-kinesis-livepack-v4)

플레이어 → API Gateway (/api/liveWatches)
    → Kinesis Data Stream (wcdAnalytics-Livepack-PlayLive-Play-V4) [신규]
        ├→ Flink (analytics-liveplay-flink-v4) : 10초 윈도우 집계 → DynamoDB (LiveWatchesManager-V4) upsert
        └→ Firehose (wcdAnalytics-Livepack-PlayLive-Firehose-V4) → Lambda Parser → S3 (Parquet)

변경사항:

2. Flink 앱 (analytics-liveplay-flink-v4)

3. 실시간 시청자 조회 API (livepack-api)

4. CMS 연동 (livepack-cms)

미완료 / 추가 필요

항목 설명 비고
peak (mvc/muvc) 추적 V3는 couscousRealtimeLiveWatches2 Lambda가 DynamoDB put_item 시 max 비교로 추적. V4는 아직 미구현 Firehose Transform Lambda(AnalyticsParser)에 peak 로직 추가 또는 별도 Lambda 필요
TTL 관리 V3는 Lambda가 ttl 설정 (CONSTANT_SECONDS=40초). V4 Flink는 TTL 미설정 cvc/cuvc 유효성 판단에 필요
CMS 4카드 표시 V3는 동시시청자/최대동시시청자/순시청자/최대순시청자 4개. V4는 현재 2개(cvc/cuvc)만 표시 peak 구현 후 4카드로 확장
v3 DB live_couscous_call_history 호출 이력 관리 테이블. V4 미구현 필요 여부 검토

4. 라이브 재생 도메인 커스터마이징

결론

Provider별 비용 비교 (월 30시간 방송, HD 5Mbps)

Provider 월 비용 공식
CF Stream $1.68N
IVS Advanced HD $23.70 + $3.48N
IVS Standard $55.80 + $6.975N
MediaLive+CF $180.27 + $1.50N

5. CF Stream 웹훅 제한 + 방송 상태 감지 지연

결론


6. 트래픽 수집 제약 (IVS/CF Stream)

결론


7. 재생 통계 딜레이 (계정 전체 조회)

결론