視聴者がビデオシークを有効にした後、オンデマンドビデオまたはオーディオファイルの特定の位置にシークすると、クライアントはサーバーに URL リクエストを送信します。 このトピックでは、CDN コンソールでビデオシークを有効にする方法について説明します。
ビデオシークが有効になると、最初のバイトまでの時間 (TTFB) が約 30 ミリ秒増加するため、ユーザーエクスペリエンスにわずかな影響を与える可能性があります。
はじめに
ビデオシークが有効になると、視聴者が再生位置を調整するたびに、クライアントはサーバーに URL リクエストを送信します。 CDN は、再生位置の直前のキーフレームを識別して、視聴者が再生したいビデオクリップを読み込み、シームレスな再生エクスペリエンスを提供します。
前提条件
オリジンサーバーが HTTP Range リクエストをサポートしている。
パラメーターを無視する 機能が無効になっている。
サポートされているファイル形式
例: URL リクエスト www.aliyun.com/test.flv?start=10 の FLV ファイルの場合、サーバーは 10 バイト目の前のキーフレームからのデータで応答します。 次の表は、ビデオシークでサポートされているファイル形式とサンプル URL を示しています。
ファイル形式 | メタデータ | 開始パラメーター | 例 |
MP4 | オリジンサーバー上のビデオファイルのメタデータは、ファイルヘッダーに含まれていなければならず、ファイルテールには含まれていてはなりません。 | start パラメーターは秒単位で時間を指定し、値は小数点以下 3 桁まで切り上げることができます。 たとえば、
| URL リクエスト |
FLV | オリジンサーバー上のビデオファイルには、メタデータが含まれている必要があります。 | start パラメーターは、バイト単位の位置を指定します。 小数はサポートされていません。 パラメーターには小数を含めることができますが、シークモジュールは値を最も近い正の整数に切り捨てます。 [時間ベースの FLV シーク] をオンにすると、start パラメーターと end パラメーターの単位は秒になります。 説明 バイト単位のシークは、正確なデータ処理または生のビデオデータ処理に適しています。 秒単位のシークは、リクエストされた正確な秒に直接ジャンプすることで、ユーザーフレンドリーなエクスペリエンスを提供します。
| URL リクエスト |
手順
Alibaba Cloud CDN コンソールにログインします。
左側のナビゲーションウィンドウで、ドメイン名 をクリックします。
ドメイン名 ページで、管理するドメイン名を見つけ、管理 列の 操作 をクリックします。
ドメイン名の左側のナビゲーションツリーで、ビデオ関連 をクリックします。
ビデオシーク セクションで、ビデオシーク スイッチをオンにします。
オプション。 [時間ベースの FLV シーク] をオンにし、[カスタムパラメーター] を変更します。
ビデオシークパラメーターの処理ロジック
時間によるシークを例にとります。 デフォルトの start パラメーターと end パラメーターが使用されます。 次の表は、さまざまなシナリオにおけるパラメーター値の処理ロジックを示しています。
MP4 ファイルのリクエスト
start/end 値 | 例 | 処理ロジック |
|
| ビデオシークパラメーターを無視し、ビデオ全体で応答します。 |
|
|
|
|
|
|
|
|
|
|
| ビデオシークパラメーターを無視し、ビデオ全体で応答します。 |
|
|
|
|
|
|
|
| HTTP ステータスコード |
FLV ファイルのリクエスト
start/end 値 | 例 | 処理ロジック |
|
| ビデオシークパラメーターを無視し、ビデオ全体で応答します。 |
|
|
|
|
|
|
|
|
|
|
| ビデオシークパラメーターを無視し、ビデオ全体で応答します。 |
|
|
|
|
|
|
|
| ビデオ全体を返します。 |