tencent cloud

Video on Demand

릴리스 노트 및 공지 사항
릴리스 노트
제품 소개
제품 개요
Product Features
제품 기능
제품 장점
시나리오
솔루션
구매 가이드
과금 개요
과금 방식
구매 가이드
청구서 조회
연장 안내
연체 안내
환불 안내
시작하기
콘솔 가이드
콘솔 소개
서비스 개요
애플리케이션 관리
미디어 관리
리소스 패키지 관리
License Management
사례 튜토리얼
미디어 업로드
VOD 미디어 파일을 스마트 콜드 스토리지하는 방법
비디오 처리
배포 및 재생
이벤트 알림 수신 방법
원본 서버 마이그레이션 방법
라이브 방송 녹화
사용자 지정 Origin-pull을 수행하는 방법
라이브 방송 하이라이트 클리핑을 VOD에 통합하기 위한 가이드
EdgeOne을 사용하여 VOD 콘텐츠 배포하는 방법
개발 가이드
미디어 업로드
미디어 처리
비디오 AI
이벤트 알림
비디오 재생
미디어 파일 다운로드
서브 애플리케이션 시스템
오류 코드
플레이어 SDK 문서
Overview
Basic Concepts
Features
Free Demo
Free Trial License
Purchase Guide
SDK Download
Licenses
Player Guide
Integration (UI Included)
Integration (No UI)
Advanced Features
API Documentation
Player Adapter
Player SDK Policy
FAQs
모바일 재생
요금
비디오 업로드
비디오 배포
비디오 재생
Web 재생
전체 화면 재생
데이터 통계
액세스 관리
미디어 자산 콜드 스토리지
Agreements
Service Level Agreement
VOD 정책
개인 정보 보호 정책
데이터 처리 및 보안 계약
문의하기
용어집

어댑티브 비트레이트 스트리밍

PDF
포커스 모드
폰트 크기
마지막 업데이트 시간: 2024-02-20 11:59:06
ABS(Adaptive Bitrate Streaming) 트랜스 코딩이란 비디오를 트랜스 코딩 및 패키징하여 ABS 출력 파일로 만드는 과정을 가리킵니다. 특징으로 다양한 비트 레이트의 멀티미디어 파일과 설명 파일(manifest)이 포함되어 있으며, 플레이어는 현재 대역폭에 따라 최적의 비트 레이트를 동적으로 선택하여 재생할 수 있습니다. 현재 가장 널리 사용되는 ABS 포맷은 Master Playlist 포맷의 HLS입니다.
VOD는 비디오를 HLS 및 MPEG-DASH 포맷의 ABS로 전환해주며, 이 기능을 통해 다음과 같은 효과를 얻을 수 있습니다.
플레이어는 현재 대역폭에 따라 적합한 비트 레이트를 동적으로 선택하여 시청자에게 우수한 시청 환경을 제공합니다.
메인 스트림 플레이어는 플레이어를 사용자 정의할 필요없이 기본적으로 HLS ABS를 지원합니다.
VOD는 통합 후 편리하고 신속하게 ABS를 재생할 수 있는 Player SDK를 지원합니다.

ABS 트랜스 코딩 템플릿

ABS 트랜스 코딩 매개변수로 ABS의 각 서브 스트림의 ‘비디오 트랜스 코딩 매개변수’, ‘오디오 트랜스 코딩 매개변수’ 등의 매개변수를 제어할 수 있습니다. VOD는 ABS 트랜스 코딩 템플릿을 사용하여 매개변수 집합을 나타내며, ABS 트랜스 코딩을 통해 다음과 같은 관련 매개변수를 지정할 수 있습니다.
매개변수
설명
먹싱 유형
어댑티브 스트림 형식, 현재 HLS 및 MPEG-DASH 지원
암호화 유형
암호화 유형 현재 HLS 형식만 SimpleAES 암호화를 지원하고 DASH는 암호화는 미지원
서브 스트림 사양
출력되는 서브 스트림 수와 각 서브 스트림의 비디오 트랜스 코딩 매개변수 및 오디오 트랜스 코딩 매개변수:
비디오 트랜스 코딩 매개변수: 해상도, 비트 레이트, 프레임 레이트, 인코딩 포맷 등
오디오 트랜스 코딩 매개변수: 샘플링 레이트, 사운드 채널 수, 인코딩 포맷 등
‘저해상도에서 고해상도로 전환’ 필터링 여부
일반적으로 저해상도의 원본 비디오를 고해상도로 트랜스 코딩하여 화질이나 음질을 향상시키는 것은 불가능합니다. ‘저해상도에서 고해상도로 전환’ 필터링을 활성화하면 불필요한 트랜스 코딩을 방지할 수 있습니다
일반적인 매개변수 조합에 대해 VOD는 사전 설정 ABS 트랜스 코딩 템플릿을 제공하며, 사용자 정의 ABS 트랜스 코딩 템플릿도 지원합니다.

작업 시작

ABS 트랜스 코딩 작업을 시작하는 방법에는 ‘서버 API를 통한 직접 시작’, ‘콘솔을 통한 직접 시작’ 및 ‘업로드 시 실행할 작업 지정’ 세 가지 방법이 있습니다. 자세한 내용은 비디오 처리의 작업 시작을 참조하십시오.
다음은 ABS 트랜스 코딩을 시작하는 다양한 방식에 관한 설명입니다.
서버 API ProcessMedia를 호출하여 작업 시작: 요청의 MediaProcessTask.AdaptiveDynamicStreamingTaskSet 매개변수에 ABS 트랜스 코딩 템플릿의 템플릿 ID를 지정합니다.
콘솔을 통해 비디오에 대한 작업 시작: 서버 API를 호출하여 태스크 플로우를 생성하고, 태스크 플로우에 ABS 트랜스 코딩(MediaProcessTask.AdaptiveDynamicStreamingTaskSet에서 지정) 작업을 구성하고, 콘솔에서 태스크 플로우를 사용하여 비디오 처리 시작을 진행합니다.
서버 업로드 시 작업 지정: 서버 API를 호출하여 태스크 플로우를 생성하고 태스크 플로우에 ABS 트랜스 코딩(MediaProcessTask.AdaptiveDynamicStreamingTaskSet에서 지정) 작업을 구성한 뒤, 업로드 신청procedure 매개변수를 해당 태스크 플로우로 지정합니다.
클라이언트 업로드 시 작업 지정: 서버 API를 호출하여 태스크 플로우를 생성하고 태스크 플로우에 ABS 트랜스 코딩(MediaProcessTask.AdaptiveDynamicStreamingTaskSet에서 지정) 작업을 구성한 뒤, 클라이언트 업로드 서명procedure를 해당 태스크 플로우로 지정합니다.
콘솔 업로드: 서버 API를 호출하여 태스크 플로우를 생성하고, 태스크 플로우에 ABS 트랜스 코딩(MediaProcessTask.AdaptiveDynamicStreamingTaskSet에서 지정) 작업을 구성합니다. 콘솔을 통해 비디오를 업로드한 뒤 [업로드와 동시에 비디오 처리 작업 진행]을 선택하고 비디오 업로드 후 해당 태스크 플로우를 실행하도록 지정합니다.

결과 가져오기

ABS 트랜스 코딩 작업을 시작한 후 결과 알림을 비동기적으로 기다리거나 작업 쿼리를 동기적으로 수행하여 ABS 트랜스 코딩 작업의 실행 결과를 얻을 수 있습니다. 다음은 ABS 트랜스 코딩 작업 시작 후 일반 콜백 방식으로 결과 알림을 받는 예시입니다(값이 null인 필드는 생략됨).
{
"EventType":"ProcedureStateChanged",
"ProcedureStateChangeEvent":{
"TaskId":"1256768367-Procedure-2e1af2456351812be963e309cc133403t0",
"Status":"FINISH",
"FileId":"5285890784246869930",
"FileName":"동물의 세계",
"FileUrl":"http://1256768367.vod2.myqcloud.com/xxx/xxx/AtUCmy6gmIYA.mp4",
"MetaData":{
"AudioDuration":60,
"AudioStreamSet":[
{
"Bitrate":383854,
"Codec":"aac",
"SamplingRate":48000
}
],
"Bitrate":1021028,
"Container":"mov,mp4,m4a,3gp,3g2,mj2",
"Duration":60,
"Height":480,
"Rotate":0,
"Size":7700180,
"VideoDuration":60,
"VideoStreamSet":[
{
"Bitrate":637174,
"Codec":"h264",
"Fps":23,
"Height":480,
"Width":640
}
],
"Width":640
},
"MediaProcessResultSet":[
{
"Type":"AdaptiveDynamicStreaming",
"AdaptiveDynamicStreamingTask":{
"Status":"SUCCESS",
"ErrCode":0,
"Message":"",
"Input":{
"Definition":10
},
"Output":{
"Definition":10,
"Package":"hls",
"DrmType":"",
"Url":"http://1256768367.vod2.myqcloud.com/xxx/xxx/adp.10.m3u8"
}
}
},
{
"Type":"AdaptiveDynamicStreaming",
"AdaptiveDynamicStreamingTask":{
"Status":"SUCCESS",
"ErrCode":0,
"Message":"",
"Input":{
"Definition":20
},
"Output":{
"Definition":20,
"Package":"dash",
"DrmType":"",
"Url":"http://1256768367.vod2.myqcloud.com/xxx/xxx/adp.20.mpd"
}
}
}
],
"TasksPriority":0,
"TasksNotifyMode":""
}
}
콜백 결과 중 ProcedureStateChangeEvent.MediaProcessResultSet에는 TypeAdaptiveDynamicStreaming 유형이고 Definition이 각각 10, 20인 두 개의 ABS 트랜스 코딩 결과가 존재합니다.

도움말 및 지원

문제 해결에 도움이 되었나요?

피드백