Skip to content

CSS (Cloud Streaming Services) ​

공식문서: https://www.tencentcloud.com/document/product/267

CSS는 Tencent Cloud의 라이브 스트리밍 전용 클라우드 서비스입니다. 인코더로부터 스트림을 수신해 클라우드에서 처리한 뒤, CDN으로 시청자에게 배포하는 원스탑 라이브 스트리밍 플랫폼입니다. 트랜스코딩, 녹화, 타임시프트, 워터마크, 미디어 AI, 콘텐츠 모더레이션까지 별도 서비스 없이 CSS 안에서 모두 처리할 수 있습니다.

들어가기 전에 ​

AWS에서 라이브 스트리밍을 구성할 때 선택지는 크게 두 가지입니다. MediaLive + MediaPackage + CloudFront를 조합해 직접 파이프라인을 구성하는 방법과, IVS처럼 인제스트부터 배포까지를 하나의 서비스로 처리하는 방법입니다. Tencent Cloud CSS는 후자에 가깝습니다. 인코더로부터 스트림을 직접 수신해 클라우드에서 처리한 뒤, CDN으로 시청자에게 배포하는 원스탑 라이브 스트리밍 플랫폼입니다.

StreamLive나 StreamPackage 없이도 동작하는 독립적인 서비스이며, 방송급 파이프라인이 필요할 때 Stream 시리즈와 결합하는 형태로 확장됩니다.

입수부터 배포까지의 흐름 ​

CSS의 기본 흐름은 단순합니다.

image.png

인코더는 CSS의 Push Domain으로 스트림을 전송합니다. CSS는 이를 수신해 설정된 처리 기능(트랜스코딩, 녹화, 워터마크 등)을 적용한 뒤, Pull Domain으로 시청자에게 스트림을 제공합니다. 처리 기능은 기본적으로 비활성화 상태이며, 필요한 항목만 선택해 활성화합니다.

지원 입수 프로토콜 ​

프로토콜설명
RTMP가장 보편적인 푸시 프로토콜. OBS, XSplit 등 대부분의 인코더가 지원
SRTTS over SRT. Haivision 장비 및 OBS 최신 버전에서 지원. 불안정 네트워크에 강함
RTMP over SRTRTMP 포맷을 SRT 전송 레이어 위에 올려 네트워크 내성을 높인 방식
WebRTC브라우저 기반 푸시. 별도 소프트웨어 없이 카메라, 화면 공유, 로컬 파일 송출 가능

도메인 구조와 스트림 식별 ​

CSS는 Push Domain과 Pull Domain을 분리해 관리합니다. 최소 2개의 도메인이 필요하며, 같은 2차 도메인 아래 서브도메인으로 구분할 수 있습니다(예: push.example.com, play.example.com).

하나의 스트림은 AppName과 StreamName의 조합으로 식별됩니다.

구성 요소역할기본값
Push Domain인코더가 스트림을 전송하는 도메인-
Pull Domain시청자가 재생에 사용하는 도메인-
AppName스트림 그룹 경로(스토리지 경로)live
StreamName스트림을 유일하게 식별하는 이름-

도메인 제약사항:

  • 최대 45자, 대문자 불가
  • 계정당 기본 100개까지 등록 가능
  • Push/Pull 도메인은 반드시 분리해야 함
  • 도메인 소유권 검증 필수(DNS TXT 레코드 또는 HTML 파일 방식)

푸시 URL과 인증 ​

URL 구조 ​

plaintext
rtmp://{push-domain}/{AppName}/{StreamName}?txSecret=xxx&txTime=xxx

인증 파라미터 ​

파라미터설명
txSecretMd5(key + StreamName + hex(time)) 또는 SHA256으로 생성
txTimeURL 만료 시각의 16진수 Unix 타임스탬프
keyPush Domain 설정에서 관리하는 인증 키

인증은 기본 활성화 상태입니다. 만료 시각이 지난 URL로는 인제스트가 차단되므로, 장시간 방송 시 인코더에서 정기적으로 URL을 갱신해야 합니다.

Tencen에서 제공하는 tx인증이 아닌 타 사의 인증을 커스텀으로 사용할 수 있으므로 필요 시 담당자에게 문의합니다.

URL 생성 방법 ​

  1. 콘솔 Address Generator — Toolkit에서 도메인, AppName, StreamName, 만료시간 입력 후 자동 생성
  2. Domain Management — Push Configuration 탭에서 직접 생성
  3. 서버 측 계산 — Sample Code 참고하여 key + StreamName + time으로 직접 연산

풀 URL과 프로토콜별 지연 ​

재생 URL도 인증 구조는 동일합니다. 프로토콜에 따라 URL 확장자와 스킴이 달라집니다.

프로토콜URL 형식지연특징
RTMPrtmp://pull-domain/live/StreamName1~3초성숙한 생태계, 고동시성에 약함
HTTP-FLVhttps://pull-domain/live/StreamName.flv2~3초고동시성에 강함, 모바일 브라우저 제한적
HLShttps://pull-domain/live/StreamName.m3u810~30초광범위한 호환성, TS 세그먼트 단위 전송
WebRTCwebrtc://pull-domain/live/StreamName< 1초LEB 전용, UDP 기반 초저지연

트랜스코딩 템플릿을 적용한 경우 StreamName 뒤에 템플릿 이름이 붙습니다:

plaintext
https://pull-domain/live/StreamName_hd.flv    ← HD 트랜스코딩 출력
https://pull-domain/live/StreamName_sd.flv    ← SD 트랜스코딩 출력

클라우드 처리 기능 ​

트랜스코딩 ​

원본 스트림을 다른 코덱, 해상도, 비트레이트로 변환합니다. 해상도별 다중 출력을 구성해 어댑티브 비트레이트 스트리밍(ABR)에 활용할 수 있습니다.

지원 코덱:

  • 비디오: H.264, H.265, AV1
  • 오디오: AAC-LC, AAC-HE, AAC-HE v2

주요 파라미터:

항목범위
비트레이트101 Kbps ~ 8,000 Kbps
프레임레이트1~60 fps
해상도최대 3000×3000px
GOP1~10초
비트레이트 제어CBR(고정) / VBR(가변)

기본 프리셋 템플릿:

화질템플릿명해상도비트레이트프레임레이트
Smooth550단변 540p500 Kbps23 fps
SD900단변 720p1,000 Kbps25 fps
HD2000단변 1080p2,000 Kbps25 fps

Top Speed Codec (TSC) ​

TSC는 CSS의 독자적인 지능형 인코딩 기술입니다. 장면 인식, 동적 인코딩, CTU/라인/프레임 3레벨 비트레이트 제어를 결합해 동일 화질 기준으로 비트레이트를 평균 50% 절감합니다.

비용 절감 시뮬레이션 (3Mbps, 4시간, 200명 시청 기준):

  • TSC 미적용: 대역폭 비용 $127
  • TSC 적용(30% 절감): 대역폭 $89 + TSC 트랜스코딩비 $11 = 총 $100 → 약 $27 절약

1080p 이상 고화질 방송에서 TSC 효과가 극대화됩니다.

TSC를 비롯한 인코딩에 관한 내용은 다른 글에서 더 자세히 작성하였습니다.

Remuxing ​

코덱을 변경하지 않고 컨테이너 포맷만 변환합니다. RTMP 입력을 FLV, HLS, DASH, TS로 출력할 수 있으며, DRM 적용도 이 단계에서 처리됩니다.

DRM대상 포맷
FairPlayHLS
WidevineDASH
AES-128HLS

녹화 ​

라이브 스트림을 실시간으로 VOD 서비스에 저장합니다.

포맷타입최대 파일 길이
HLS영상/음성무제한 (기본 TS 60초 단위 분할)
MP4영상/음성1~720분
FLV영상/음성1~720분 (업로드 중 녹화 지원, 최대 12시간)
AAC음성 전용1~120분

녹화 대상 선택:

  • 원본 스트림 — 트랜스코딩 전 원본 그대로 저장
  • 워터마크 스트림 — 워터마크 적용 후 저장
  • 트랜스코딩+워터마크 스트림 — 트랜스코딩과 워터마크 모두 적용 후 저장

녹화 완료 약 5분 후 VOD에서 재생 가능하며, VOD 태스크 플로우와 연동하면 녹화 즉시 후처리(편집, 배포 등)를 자동화할 수 있습니다.

스트림 중단 처리:

  • HLS 포맷만 중단 후 재개(Resumption) 지원
  • Resumption Timeout 내 재연결 시 단일 파일로 이어서 녹화
  • Timeout 초과 시 새 파일 생성

타임시프트 ​

스트림을 TS 세그먼트 단위로 저장해 시청자가 현재 방송 중에 과거 시점으로 되감아 볼 수 있습니다. 최대 6시간 구간을 지원하며, 최대 3만 동시 시청자를 수용합니다.

재생 방식 2가지:

  1. 특정 구간 재생 — 시작/종료 시각 지정
plaintext
https://pull-domain/live/stream.m3u8?txTimeshift=on&tsFormat=unix_s&tsStart=1675302995&tsEnd=1675303025
  1. 지연 재생 — 현재로부터 N초 전 시점 재생
plaintext
https://pull-domain/live/stream.m3u8?txTimeshift=on&tsDelay=30

스포츠 중계(하이라이트 리플레이), 예능(중간 입장 시청자), 콘텐츠 모더레이션 딜레이 등에 유용합니다.

워터마크 ​

스트림에 이미지나 텍스트 워터마크를 실시간으로 삽입합니다. 위치는 비율(%)로 지정하므로 다중 해상도 트랜스코딩 출력에서도 동일한 상대 위치에 표시됩니다.

스크린캡쳐 ​

일정 간격으로 라이브 스트림의 썸네일을 자동 생성합니다. 생성된 이미지는 COS에 저장되며, 콘텐츠 모더레이션 파이프라인의 입력으로 활용됩니다.

Relay ​

외부 소스의 스트림을 CSS로 끌어오는 기능입니다. 외부 RTMP/HLS/FLV URL을 지정하면 CSS가 해당 스트림을 Pull하여 자체 CDN으로 배포합니다. 다중 소스 페일오버, 외부 피드 통합 등에 사용됩니다.

스트림 믹싱 (Stream Mix) ​

여러 스트림을 하나로 합성해 출력합니다. 다중 화면 구성(PiP, 격자 레이아웃), 게스트 화면 합성, 코-앵커링 시나리오에서 사용됩니다.

Standby Stream ​

주 입력 스트림이 끊길 경우 자동으로 대기 스트림(또는 미리 지정한 콘텐츠)으로 전환합니다. 방송 공백 없이 대체 화면을 송출할 수 있어 고가용성이 요구되는 방송 환경에 적합합니다.

미디어 AI 기능 ​

CSS는 별도 서비스 호출 없이 스트림 처리 파이프라인 안에서 AI 기능을 직접 적용할 수 있습니다.

기능설명
하이라이트 자동 생성AI가 방송 중 주요 장면을 감지해 클립을 자동 생성
인텔리전트 요약멀티모달 분석으로 방송 내용을 자동 요약
실시간 자막 / 번역음성을 텍스트로 변환하고 다국어 번역 지원
개인정보 마스킹얼굴, 차량 번호판 등 개인정보를 실시간으로 자동 블러/모자이크 처리
콘텐츠 모더레이션음란물, 불법 콘텐츠, 화질 이상 등을 AI로 실시간 감지하고 콜백 알림

콘텐츠 모더레이션은 스크린캡쳐 기능과 연동되어 동작합니다. 일정 간격으로 캡쳐된 프레임을 AI 모델이 분석하고, 위반 감지 시 콜백 URL로 알림을 전송합니다.

서비스 타입 ​

CSS는 사용 목적에 따라 세 가지 서비스 타입을 제공합니다.

타입프로토콜지연주요 사용 케이스
LVB (Live Video Broadcasting)RTMP, FLV, HLS2~10초대규모 동시 시청, 스포츠 중계, 쇼룸, 게임 방송
LEB (Live Event Broadcasting)WebRTC (UDP)< 1초인터랙티브 방송, 온라인 교육, 라이브 커머스, 경매
LVC (Live Video Caster)--클라우드 스위칭, 멀티스크린 믹싱, 자동화 방송

LVB vs LEB ​

둘 다 CSS 안에서 동작하는 서비스 타입이며, 같은 Push Domain으로 인제스트한 스트림을 Pull 프로토콜만 달리해서 시청자에게 제공하는 구조입니다.

핵심 차이: LEB는 WebRTC 프로토콜 기반의 초저지연 단방향 스트리밍입니다.

WebRTC라는 이름 때문에 양방향 통화(RTC)를 떠올리기 쉽지만, LEB는 호스트 → 시청자로의 단방향 배포이며, 시청자 간 또는 시청자-호스트 간 음성/영상 양방향 통신은 포함하지 않습니다. 양방향 실시간 통화가 필요하면 TRTC를 별도로 사용해야 합니다.

비교 항목LVBLEB
정체전통적인 라이브 스트리밍WebRTC 기반 초저지연 단방향 스트리밍
재생 프로토콜RTMP, HTTP-FLV, HLSWebRTC (UDP)
전송 계층TCPUDP
End-to-End 지연2~10초 (HLS는 수십 초)300ms ~ 1초
방향성단방향 (호스트 → 시청자)단방향 (호스트 → 시청자)
약한 네트워크 내성TCP 재전송으로 지연 누적패킷 손실/지연 환경에서도 안정적 재생 유지
적응형 비트레이트수동 전환 (클라이언트가 URL 변경)네트워크 상태에 따라 자동 전환
브라우저 재생FLV는 SDK 필요, HLS는 네이티브Chrome, Safari 네이티브 지원 (플러그인 불필요)
동시 시청 규모수십만~수백만수십만~수백만 (CDN 동일 활용)
과금 단가기본 단가LVB 대비 높음

LEB****를 선택하는 기준:

  • 시청자의 반응 속도가 비즈니스에 직접 영향을 미칠 때 (라이브 커머스 실시간 문의, 스포츠 베팅, 경매)
  • 호스트와 시청자 간 채팅/이모지 등 텍스트 인터랙션의 동기화가 중요할 때
  • 불안정한 네트워크 환경(모바일, 해외)에서도 끊김 없는 재생이 필요할 때

LVB****를 선택하는 기준:

  • 2~3초 지연이 허용되는 일반 방송 (스포츠 중계, 쇼룸, 게임 스트리밍)
  • 비용 최적화가 우선일 때 (LVB 트래픽 단가가 더 낮음)
  • HLS 호환성이 중요한 환경 (Smart TV, 레거시 셋톱박스)

참고: LEB는 "초저지연 단방향 배포"이고, TRTC는 "양방향 실시간 통화"입니다. 라이브 방송 중 시청자와 호스트가 음성/영상으로 직접 대화해야 하는 시나리오(코-앵커링, 1:1 화상 상담 등)는 TRTC 영역이며, CSS/LEB와 TRTC를 조합해 구현합니다.

Stream 시리즈와의 연동 ​

CSS는 단독으로도 완결된 서비스지만, 방송급 대형 파이프라인이 필요한 경우 Stream 시리즈와 결합합니다. (Stream 시리즈는 Tencent cloud의 미디어 파이프라인 서비스입니다. AWS의 Elemental 시리즈와 매칭된다고 보면 됩니다.) 주로 CSS가 Streampackage에서 패키징된 스트림을 CDN으로 배포하는 역할을 합니다.

plaintext
인코더 → StreamLink → StreamLive → StreamPackage → CSS → 시청자

이 구성에서 각 서비스의 역할은 명확하게 나뉩니다.

서비스역할
StreamLink크로스 리전 안정적 스트림 전송 (전용 네트워크)
StreamLive방송급 트랜스코딩, 다중 출력, SCTE-35 광고 신호 처리
StreamPackage패키징, DRM 적용, 오리진 이중화
CSSCDN 배포

StreamPackage가 오리진 역할을 하고 CSS가 CDN으로 스트림을 Pull하는 구조입니다.

언제 Stream 시리즈가 필요한가:

  • 크로스 리전 전송 안정성이 중요할 때 (StreamLink)
  • SCTE-35 기반 광고 삽입이 필요할 때 (StreamLive)
  • FairPlay/Widevine DRM + 오리진 이중화가 필요할 때 (StreamPackage)
  • 위 요구사항이 없다면 CSS 단독으로 충분합니다

주요 사용 케이스 ​

산업시나리오핵심 기능
이커머스라이브 쇼핑LEB 초저지연, 실시간 인터랙션, 워터마크
엔터테인먼트쇼룸, BJ 방송스트림 믹싱(코-앵커링), 뷰티 필터, 녹화
스포츠경기 중계타임시프트, 하이라이트 자동 생성, ABR
교육온라인 강의LEB 양방향 소통, 스크린 공유, DRM
미디어TV/라디오 방송Standby Stream 고가용성, 릴레이, 콘텐츠 모더레이션
게임게임 스트리밍저지연 FLV, TSC 대역폭 절감, 스트림 믹싱

마치며 ​

CSS는 단순한 CDN 서비스라기보다, 라이브 스트리밍에 필요한 인제스트(Ingest), 트랜스코딩 및 패키징과 같은 미디어 처리, 그리고 글로벌 CDN 배포까지 하나의 플랫폼 안에서 제공하는 원스탑 라이브 스트리밍 서비스에 가깝습니다. RTMP, SRT 등의 다양한 입력 프로토콜을 받아 HLS, FLV, WebRTC(LEB) 등 여러 재생 포맷으로 배포할 수 있으며, 필요에 따라 트랜스코딩, 타임시프트, DRM, SSAI와 같은 기능도 함께 구성할 수 있습니다.

소규모 1인 방송부터 수백만 단위 동시 접속이 발생하는 스포츠와 대형 이벤트 중계까지 CSS만으로 커버할 수 있고, 보다 복잡한 워크플로우가 필요한 경우에는 StreamLive, StreamPackage, StreamLink 등의 Stream 시리즈와 결합하여 방송국 수준의 미디어 파이프라인으로 확장하는 것도 가능합니다.

전체적인 방향성으로 보면 AWS IVS와 유사한 포지션으로 볼 수 있지만, 보다 CDN 및 미디어 처리 계열 기능과의 결합성이 강하다는 점이 특징이라고 할 수 있겠습니다.

基于 VitePress 构建 · 部署于腾讯云 EdgeOne Pages