tencent cloud

Video on Demand

動向とお知らせ
製品アップデート情報
製品紹介
製品概要
Product Features
製品の機能
製品の強み
ユースケース
ソリューション
購入ガイド
課金概要
課金方式
購入ガイドライン
請求書の照会
支払い更新の説明
支払い延滞の説明
返金説明
クイックスタート
コンソールガイド
コンソールの説明
サービスの概要
アプリケーション管理
メディア管理
リソースパック管理
License Management
プラクティスチュートリアル
メディアのアップロード
オンデマンドメディアファイルのインテリジェントコールド化方法
ビデオ処理
配信と再生
イベント通知の受信方法
オリジンサーバーのマイグレーションツール
Live Recording
カスタムオリジンサーバーback-to-originの方法
ライブストリーミングハイライトクリップを VOD に永続化するためのガイド
EdgeOne を使用して VOD コンテンツを配信する方法
開発ガイド
メディアアップロード
メディア加工処理
ビデオAI
イベント通知
ビデオ再生
メディアファイルのダウンロード
サブアプリケーションシステム
エラーコード
Player+ドキュメント
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
よくあるご質問
モバイル端末再生に関するご質問
料金
ビデオのアップロード
ビデオの公開
ビデオの再生
Web側の再生
全画面表示再生
データ統計
CAM関連
メディア資産冷却に関する質問
Agreements
Service Level Agreement
VOD ポリシー
プライバシーポリシー
データ処理とセキュリティ契約
お問い合わせ
用語集

アダプティブビットレートストリーミング変換

PDF
フォーカスモード
フォントサイズ
最終更新日: 2024-02-20 11:59:21
ABSへのトランスコードとは、ビデオをトランスコードしてパッケージングし、ABSの出力ファイルを生成するプロセスを指します。その特徴は、複数のビットレートの音声ビデオファイルと1つのマニフェストファイル(manifest)が含まれていることで、プレーヤーは現在の帯域幅に応じて、最適なビットレートを動的に選択して再生することができます。現在最も幅広く活用されているABSの形式は、 Master Playlist 形式でのHLSです。
VODは、ビデオのHLSおよびMPEG-DASH形式のABSへの変換機能をサポートしています。この機能を使用すると、次の事項が可能になります。
プレーヤーが現在の帯域幅に応じて最適なビットレートを動的に選択して再生し、視聴者に素晴らしい体験をもたらします。
メインストリームのプレーヤーそのものがHLSアダプティブビットレートストリーミングをサポートしているため、プレーヤーをカスタマイズする必要がありません。
VODでは Player SDKを提供し、統合した後、ABSを素早く、簡単に再生できるようにしています。

ABSへのトランスコードテンプレート

ABSへのトランスコードのパラメータによって、ABSの中の各サブストリームの「ビデオトランスコーディングパラメータ」、「オーディオトランスコーディングパラメータ」などのパラメータを制御できます。VODではABSテンプレートを使用してパラメータグループを表します。ABSテンプレートによって、以下の関連パラメータを指定することができます。
パラメータ
説明
パッケージングタイプ
ABSの形式。現在HLSとMPEG-DASHをサポートしています。
暗号化タイプ
HLS形式のみがSimpleAES暗号化をサポートしており、DASHは暗号化をサポートしていません
サブストリーム仕様
幾つのサブストリームを出力するか、および各サブストリームのビデオトランスコーディングパラメータならびにオーディオトランスコーディングパラメータを制御します。
ビデオトランスコーディングパラメータ:解像度、ビットレート、フレームレート、エンコード形式など
オーディオトランスコーディングパラメータ:サンプリングレート、サウンドチャンネル数、エンコード形式など
「低解像度から高解像度への変換」のフィルタリングの有無
通常は、低解像度のオリジナルビデオを高解像度に変換しても画質と音質の向上は得られません。「低解像度から高解像度への変換」のフィルタリングを有効にすると、不要なトランスコードを回避することができます
一般的なパラメータグループを対象に、VODではプリセットのABSテンプレートを提供しています。同時に、ABSへのトランスコードテンプレートのカスタマイズもサポートしています。

タスクの開始

ABSへのトランスコードタスクの開始には、「サーバーAPIからの直接の開始」、「コンソールからの直接の開始」、「アップロード時に実行したいタスクを指定」の3種類の方法があります。具体的な内容は、ビデオ処理の タスクの開始をご参照ください。
以下は、各種方式のABSタスク開始についての説明です。
サーバーAPIProcessMedia の呼び出しによるタスク開始:リクエストの中のMediaProcessTask.AdaptiveDynamicStreamingTaskSetパラメータで ABSへのトランスコードテンプレート のテンプレートIDを指定します。
コンソールでのビデオに対するタスク開始: サーバーAPI を呼び出してタスクフローを作成し、タスクフローの中でABSへのトランスコードタスクを設定します(MediaProcessTask.AdaptiveDynamicStreamingTaskSetの中で指定)。コンソールでこのタスクフローを使用して ビデオ処理を開始します。
サーバーからのアップロード時にタスクを指定:サーバーAPIを呼び出してタスクフローを作成し、タスクフローの中でABSへのトランスコードタスクを設定します(MediaProcessTask.AdaptiveDynamicStreamingTaskSetの中で指定)。アップロードの申請の中のprocedureパラメータでこのタスクフローを指定します。
クライアントからのアップロード時にタスクを指定: サーバーAPI を呼び出してタスクフローを作成し、タスクフローの中でABSへのトランスコードタスクを設定します(MediaProcessTask.AdaptiveDynamicStreamingTaskSetの中で指定)。クライアントからのアップロード署名 の中のprocedureでこのタスクフローを指定します。
コンソールからのアップロード: サーバーAPI を呼び出してタスクフローを作成し、タスクフローの中でABSへのトランスコードタスクを設定します(MediaProcessTask.AdaptiveDynamicStreamingTaskSetの中で指定)。コンソールを介してビデオをアップロードし、 【アップロードと同時にビデオに対する処理操作を実行】 を選択して、ビデオアップロード後にこのタスクフローの実行を指定します。

結果の取得

ABSへのトランスコードタスクの開始後、非同期の 結果通知 待ちおよび同期の タスクの確認 の2種類の方式で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.MediaProcessResultSetTypeAdaptiveDynamicStreamingとなる結果が2つあり、Definitionがそれぞれ10と20になっています。

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック