비디오 서버 개요
Connect Base 비디오 서버는 동영상 업로드, 트랜스코딩, HLS 스트리밍과 채널/플레이리스트/Shorts/멤버십/슈퍼챗까지 갖춘 동영상 플랫폼 백엔드입니다.
✅
cb.videoSDK 의 모든 메서드가 백엔드와 정렬되어 동작합니다. 업로드·트랜스코딩·스트리밍·썸네일·채널 CRUD·플레이리스트·댓글·좋아요/취소·시청 기록·멤버십·슈퍼챗·추천 피드·스토리지 컨테이너 CRUD 모두 SDK 메서드를 그대로 사용하면 됩니다.참고:
- 슈퍼챗 전송(
sendSuperChat)은 결제가 필요한 2단계 흐름입니다 — 응답의client_secret으로 결제(Stripe)를 확정해야 노출됩니다.- 채널·스토리지 컨테이너는 SDK 로 생성/관리할 수 있고, 콘솔에서도 동일하게 관리됩니다.
- 인증: 생성·수정·시청기록·좋아요·댓글·멤버십·슈퍼챗 등 쓰기 작업은 앱 멤버 JWT(
cb.auth.signInMember)가 필요합니다.
주요 기능
- 청크 업로드:
cb.video.upload/cb.video.storage.upload가 init → chunk → complete 를 자동 처리 (onProgress콜백 지원) - 트랜스코딩: FFmpeg 기반 멀티 화질 (
cb.video.waitForReady로 대기,getTranscodeStatus로 상태 직접 조회) - HLS 스트리밍: 적응형 비트레이트 (
cb.video.getStreamUrl) - DRM: AES-128 암호화 (response의
encryption필드) - Shorts 피드:
cb.video.getShortsFeed,cb.video.getTrendingShorts - 커뮤니티: 댓글 작성(
postComment)·조회(getComments)·삭제(deleteComment), 좋아요 토글(likeVideo), 구독(subscribeChannel) - 추천: 홈 피드(
getHomeFeed)·추천(getRecommendations)·관련 영상(getRelatedVideos)·트렌딩(getTrendingVideos) - 채널: 생성·조회·수정(
createChannel/getChannel/getChannelByHandle/updateChannel)·구독(subscribeChannel) - 수익화: 멤버십 가입(
joinMembership)·등급 조회(getMembershipTiers)·슈퍼챗(sendSuperChat/getSuperChats) - 시청 기록: 진행 보고(
reportWatchProgress)·기록 조회/삭제(getWatchHistory/clearWatchHistory)
아키텍처
클라이언트 ──▶ cb.video.upload (청크 업로드) ──▶ 원본 저장 ──▶ 트랜스코딩
│
▼
HLS 플레이어 ◀── CDN ◀── HLS 세그먼트 저장빠른 시작
typescript
import ConnectBase from 'connectbase-client'
const cb = new ConnectBase({ publicKey: 'cb_pk_...' })
// 비디오 목록 조회 (기본 스토리지)
const list = await cb.video.list({
status: 'ready',
visibility: 'public',
limit: 20
})
console.log(list.videos)
// 스트림 URL 가져오기
const streamInfo = await cb.video.getStreamUrl('video-id')
console.log(streamInfo.stream_url)SDK 설치
bash
npm install connectbase-client