비디오 서버 개요
Connect Base 비디오 서버는 동영상 업로드, 트랜스코딩, HLS 스트리밍과 채널/플레이리스트/Shorts/멤버십/슈퍼챗까지 갖춘 동영상 플랫폼 백엔드입니다.
⚠️
cb.videoSDK 와 백엔드 라우트는 현재 정렬이 진행 중입니다 (2026-04 기준). 일부 메서드는 호출 시 404/405 가 반환됩니다. 각 페이지 상단의 동작 여부 표를 반드시 확인하세요.확실히 동작하는 메서드 (요약):
list,get,update,delete,getStreamUrl,waitForReady,getShortsFeed,getTrendingShorts,getShorts,getTrendingVideos,subscribeChannel/unsubscribeChannel,getSuperChats,getComments,deleteComment,likeVideo(토글),addToPlaylist/removeFromPlaylist,storage.listVideos/getVideo/deleteVideo/getStreamUrl/getTranscodeStatus(storage 서브 네임스페이스).현재 동작하지 않는 메서드 (정렬 대기): 최상위
upload(init/chunk 경로 mismatch),storage.upload(chunk 단계 POST vs PUT),getThumbnails,getTranscodeStatus/retryTranscode(최상위),unlikeVideo,postComment(잘못된 경로 — 백엔드는POST /v1/public/comments),createPlaylist/getPlaylists/getPlaylistItems(잘못된 경로),getWatchHistory/clearWatchHistory/reportWatchProgress, 채널 CRUD (createChannel/getChannel/getChannelByHandle/updateChannel), 멤버십 (getMembershipTiers/joinMembership/cancelMembership),sendSuperChat,getRecommendations/getHomeFeed/getRelatedVideos/submitFeedback,storage.create/list/get/update/delete(스토리지 컨테이너 CRUD).정렬 전까지는 raw
fetch로 백엔드 경로를 직접 호출하세요. 각 섹션에 우회 예제가 있습니다.
주요 기능
- 청크 업로드: ⚠️
cb.video.upload와cb.video.storage.upload둘 다 chunk 단계 정렬 대기 — 현재는 raw fetch 만 안전 - 트랜스코딩: FFmpeg 기반 멀티 화질 (
cb.video.waitForReady로 대기) - HLS 스트리밍: 적응형 비트레이트 (
cb.video.getStreamUrl) - DRM: AES-128 암호화 (response의
encryption필드) - Shorts 피드:
cb.video.getShortsFeed,cb.video.getTrendingShorts - 커뮤니티: 댓글 조회(
getComments)·삭제(deleteComment), 좋아요 토글(likeVideo), 구독(subscribeChannel) — 댓글 작성은 raw fetch 필요 - 수익화: 멤버십·슈퍼챗 — 백엔드 라우트는 존재하지만 SDK 메서드와 경로 정렬이 진행 중 (채널 관리 참고)
아키텍처
클라이언트 ──▶ cb.video.upload (청크 업로드) ──▶ 원본 저장 ──▶ 트랜스코딩
│
▼
HLS 플레이어 ◀── CDN ◀── HLS 세그먼트 저장빠른 시작
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 설치
npm install connectbase-client