Cloud PVR, 셋톱박스 없이 개인 녹화를 서버에 두는 아키텍처

Cloud PVR(nPVR/cDVR)의 유니크·공유 카피 저장 모델, 예약·권한검증 파이프라인, DRM·CDN 연계 구조를 API 예시와 함께 정리한다.

2026-08-13 · 최초 발행 2025-12-03

유료방송·OTT 사업자가 셋톱박스 로컬 저장 대신 클라우드에 녹화 파일을 두려는 이유는 단말 의존을 끊고 녹화 자산을 중앙에서 관리하기 위해서다. Cloud PVR(Cloud Personal Video Recorder)은 네트워크 상에서 개인별 녹화 자산을 생성·보관·재생하는 서비스·플랫폼으로, 라이브 채널을 클라우드에서 인제스트·세그먼트화한 뒤 사용자의 녹화 요청에 따라 오브젝트 스토리지에 개인 라이브러리로 보관하는 모델이다.

nPVR와 cDVR, 유니크 카피와 공유 카피

Network PVR과 Cloud DVR은 일반적으로 혼용되는 용어다. 구현 시에는 법제와 권리조건에 따라 사용자별 개별 파일을 만드는 유니크 카피 모델과 공유 세그먼트를 참조하는 공유 카피 모델 중 하나를 선택해야 하며, 일부 지역은 고유 사본 요건이 있어 최신 정보 확인이 필요하다. 서비스 설계에서는 dVR 버퍼(예: 72시간)로 유지하는 타임시프트 윈도우와 영구(또는 정책 기반) 보관되는 녹화 자산을 구분해, 라이브→버퍼→퍼시스턴트 오브젝트로 승격하는 파이프라인을 갖춰야 한다.

파이프라인을 이루는 구성 요소

인제스트는 TS/SRT/RTMP를 입력받아 HLS/DASH로 세그먼트화하며, 지연을 줄이려면 Low-Latency HLS/DASH 옵션을 선택할 수 있다. 타임시프트 버퍼는 서큘러 버퍼로 N시간을 유지하고, 세그먼트 메타데이터 인덱스로 빠른 참조를 제공한다.

스케줄러는 EPG·프로그램ID, 채널·시간 기반 요청을 받아 Entitlement, 지역 블랙아웃, 동시 녹화 쿼터를 검사한다. 이때 Idempotency 키 기반으로 잡을 생성해 중복 요청을 막고 예약·취소의 원자성을 보장한다.

저장 계층은 S3 호환 같은 오브젝트 스토리지를 쓰며, 세그먼트 단위 불변(immutable) 설계로 일관성을 확보한다. 공유 카피 모델은 세그먼트 재사용·중복제거로 저장 비용을 절감하고, 유니크 카피 모델은 사용자별 네임스페이스를 분리한다.

패키징·DRM 단계는 CENC 공통 암호화 기반의 멀티DRM(Widevine/FairPlay/PlayReady)을 적용하고 키 회전·만료 정책을 관리하며, Manifest 레벨 사용자 접근 제어와 토큰화 URL로 세션 보안을 강화한다.

재생·CDN 전송은 Origin/Edge 계층 캐시를 최적화하고, 규칙 기반 퍼지와 만료시간(TTL) 조절로 핫 콘텐츠에 대응한다. 시작시간·재버퍼링·오류율 같은 QoE 지표를 기반으로 어댑티브 비트레이트(ABR)를 튜닝한다.

예약부터 재생까지의 흐름

TS/HLS 입력세그먼트 생성('ts'/'fmp4')녹화 요청API('채널','시간','프로그램') 확정/멱등키 저장세그먼트 인덱싱세그먼트 참조오브젝트 저장('PUT', 'atomic')패키징/암호화('CENC/DRM')CDN 퍼지/배포재생('HLS'/'DASH')신호 장애권한 실패/쿼터 초과라이브 입력(채널)인제스트/트랜스코더타임시프트 버퍼(서큘러)사용자/단말스케줄러/권한검증('Entitlement')큐('Recording Job')녹화 어셈블러('ManifestBuilder')오브젝트 스토리지패키저/DRM 서버CDN/오리진에러/재시도('지수 백오프')거절 알림

예약이 생성되면 Idempotency-Key 기반 UPSERT로 처리되고 REQUESTED→CONFIRMED→ASSEMBLING→READY→EXPIRED 상태를 거친다. 세그먼트 커밋은 오브젝트 멱등 PUT으로 이뤄지고, manifest를 최종 전환하는 시점에는 원자적 교체(Safe write→rename)를 적용한다. 인제스트가 중단되면 결측 세그먼트를 마킹하고, 재생 시에는 가드레일(스킵/대체 광고)을 적용해 오류를 흡수한다.

STB 로컬 녹화와 클라우드 녹화, 무엇이 갈리는가

항목 STB PVR(로컬) Cloud PVR(유니크 카피) Cloud PVR(공유 카피)
성능 단말 저장 I/O 의존, 원활하나 디바이스 제한 네트워크 지연 영향, CDN 캐시로 상쇄 세그먼트 재사용으로 캐시 적중률 우수
확장성 단말 수만큼 분산, 중앙 관리 어려움 사용자 수 선형 확장, 스토리지 증가 저장 효율 최대, 대규모 동시 녹화 유리
일관성 단말별 상이, 관리 어려움 서버 주도 일관성, 멱등 처리 용이 세그먼트 공유로 높은 일관성
안정성 단말 고장 시 데이터 유실 멀티 AZ/리전 복제로 내고장성 동일, 추가로 재사용 덕에 복구 용이
운영 편의 현장 지원 필요 중앙화 운영, 자동화 용이 권리/정책 복잡성 있으나 TCO 우수

실무에서는 이렇게 쓰인다

Pay TV/OTT의 타임시프트·스타트오버는 스포츠·뉴스의 즉시 되감기와 프로그램 단위 녹화 자동화에 쓰인다. 대형 스포츠 시즌처럼 이벤트가 몰릴 때는 시즌 전체를 예약 녹화하는 시즌패스 형태로 대량 녹화를 처리한다. TV→모바일→웹으로 이어지는 멀티 디바이스 연속성에서는 이어보기와 북마크·자막 동기화를 지원한다. 권리자 요청에 따른 지역별 접근 제한, 자동 만료·퍼지 정책도 이 구조 위에서 적용된다. 기존 STB PVR 고객을 Cloud PVR로 옮길 때는 로컬→클라우드 업로드 브리지를 두는 하이브리드 전환도 실무에서 쓰인다.

보안·스토리지 전략의 트레이드오프

공유 카피·세그먼트 중복제거를 적용하면 저장 비용을 40~70% 절감할 수 있지만, 지역별 권리조건을 준수해야 한다(최신 정보 확인 필요). DRM 키는 KMS/HSM 기반으로 수명주기를 관리하고 라이선스 서버에는 Rate Limit을 적용한다. 토큰·서명 URL은 짧은 TTL과 디바이스 바인딩으로 재생 세션 재사용을 막는다.

스토리지는 핫(자주 재생)과 콜드(장기 보관)로 계층화하고 라이프사이클 정책으로 자동 이동시킨다. 멀티 리전을 Active-Active로 구성하면 RPO≈0에 가까워지지만 지연·비용 증가라는 트레이드오프가 따른다. 운영에서는 QoE(시작시간, 재버퍼)와 QoS(인코더 CPU, 세그먼트 생성율)를 이원화해 관측해야 한다.

API로 예약·조회·취소하기

전제조건은 REST API v1, ISO 8601 UTC 시간, JWT Bearer 토큰 인증이다. 녹화 모델은 copyModel ∈ {unique, shared}이며 retentionDays로 보관 정책을 지정한다.

녹화 예약 생성:

curl -X POST https://api.example.com/v1/recordings \
  -H "Authorization: Bearer ${TOKEN}" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 7e1c2a2a-9c5a-4c0a-a1f3-1c9e7c0a1234" \
  -d '{
    "userId": "u_12345",
    "channelId": "ch_sports_1",
    "startTime": "2025-12-01T10:00:00Z",
    "endTime": "2025-12-01T12:00:00Z",
    "copyModel": "shared",
    "retentionDays": 30,
    "title": "World Cup Match"
  }'

응답 예:

{
  "recordingId": "rec_9fbc1",
  "status": "CONFIRMED",
  "playback": {
    "manifestUrl": null,
    "drm": ["Widevine", "FairPlay"]
  },
  "quota": { "concurrent": 2, "remaining": 1 }
}

상태 조회:

curl -H "Authorization: Bearer ${TOKEN}" \
  https://api.example.com/v1/recordings/rec_9fbc1

취소:

curl -X DELETE -H "Authorization: Bearer ${TOKEN}" \
  https://api.example.com/v1/recordings/rec_9fbc1

타임시프트에서 시리즈 패스로, 단계적으로 넓힌다

CDN 캐시 적중률이 오르면 재생 시작시간이 수백 ms 수준까지 단축되고 오류율도 준다. 시즌패스·개인화 추천·자동 삭제 같은 기능을 붙일수록 출시 리드타임이 짧아지고, 시청 로그·완주율·즐겨찾기가 쌓이면서 추천 강화의 데이터 자산으로도 쓰인다.

Cloud PVR은 라이브 스트림 파이프라인, 스토리지, DRM, CDN을 하나의 절차로 묶어야 대규모 개인화 녹화 경험을 지탱할 수 있다. 지역 규제와 권리 조건을 지키면서 유니크·공유 카피 모델을 전략적으로 고르고, 멱등·원자성·가시성을 갖춘 파이프라인을 설계한 뒤 타임시프트→프로그램 녹화→시리즈 패스 순서로 단계적으로 넓혀가는 편이 안전하다.

Cloud PVRnPVRcDVRDRM타임시프트