このトピックでは、ビデオフォーマット、コーデック、トランスコーディングなど、ApsaraVideo VODで一般的に使用される用語について説明します。
ファイル形式
オペレーティングシステムのファイル名には、.doc、 .jpg、および.aviなどのファイル名拡張子であるサフィックスがあります。 ファイル名拡張子を使用すると、オペレーティングシステムは各ファイルを開くために使用するアプリケーションを決定できます。 このようにして、対応するアプリケーションによってファイルを認識して開くことができます。 ビデオの一般的なファイル名拡張子が含まれます。avi、。mpg、および。mp4。 ビデオファイルは、PCにインストールされているビデオプレーヤーに関連付けて再生できます。
コンテナー形式
コンテナ形式は、圧縮されたビデオストリーム、オーディオストリーム、およびメタデータを特定の仕様に基づいて単一のファイルにパッケージ化できるファイル形式です。 メタデータは、タイトルや字幕などのビデオに関する基本情報を含みます。
コンテナ形式は、ビデオの保存またはストリーミングに使用されます。
ビデオの保存には、AVI、ASF (WMAまたはWMV) 、MP4、MKV、およびRMVB (RMまたはRA) のコンテナ形式が使用されます。
ストリーミングビデオには、フラッシュビデオ (FLV) 、トランスポートストリーム (TS) 、MP4のコンテナ形式が使用されます。 TS形式は、HTTP Live streaming (HLS) やReal-Time Messaging Protocol (RTMP) などのストリーミングプロトコルで使用する必要があります。 HTTPプロトコルでMP4形式を使用する必要があります。
次のセクションでは、ストリーミングプロトコルに基づくビデオストリーミングに使用されるコンテナ形式について説明します。
MP4: モバイルデバイス (iOSおよびAndroid) やPC上のwebブラウザなど、複数のクライアントでサポートされている従来のビデオコンテナ形式。 しかし、MP4ファイルのファイルヘッダは、サイズが大きく、構造が複雑である。 MP4ファイルの長さが数時間などの長い場合、ファイルヘッダが大きいため、ビデオをロードするのに必要な時間が長くなります。 したがって、MP4形式は短いビデオに適しています。
MP4ファイルは、メディアの配置や時間情報など、すべてのメディアメタデータを含むボックス (以前はアトムと呼ばれていました) で構成されています。 メタデータは、ビデオフレームなどのメディアデータへの参照を提供し、ボックス内のメディアデータの配置は、第1のプライマリファイルのメタデータに記述されます。 より長いビデオ期間は、より大きなファイルヘッダを示し、これは、ビデオをロードするために必要とされる時間を増加させます。
HLS: Apple Inc. によって開発されたメディアストリーミング用のHTTPベースのネットワーク伝送プロトコル。 デフォルトでは、このプロトコルはTSコンテナ形式を使用してストリームを複数のTSフラグメントに分割します。 このプロトコルはまた、再生を制御するM3U8インデックスファイル (テキストファイル) を定義します。 HLSは、ヘッダーデータをバッファリングするのに必要な時間が短く、オンデマンドビデオの再生に適しています。 HLSはモバイルデバイス (iOSおよびAndroid) でサポートされていますが、PC上のInternet Explorerとは互換性がありません。 したがって、HLSにはPC用に開発されたカスタムプレーヤーが必要です。 ApsaraVideo Player for Webの使用を推奨します。
FLV: アドビによって開発された標準フォーマット。 この形式はPCのFlash Playerでサポートされていますが、playerアプリがインストールされていない限り、モバイルデバイスではサポートされません。 iPhoneなどのほとんどの携帯電話のブラウザはFLVをサポートしていません。 ApsaraVideo Playerの使用を推奨します。
Dynamic Adaptive Streaming over HTTP (DASH): フラグメント化されたMP4 (fMP4) フォーマットを使用して、MP4ビデオを複数のフラグメントに分割するストリーミング規格。 フラグメントには、解像度やビットレートなど、さまざまなコーデック設定があります。 さまざまなフラグメントを再生して、適応型ビットレートストリーミングを実装し、さまざまな解像度をシームレスに切り替えることができます。 これは、より良い再生経験を提供します。 DASHでは、メディアプレゼンテーション記述 (MPD) ファイルは、HLS M3U8ファイルに類似しています。 YouTubeやNetflixなどの多くのビデオウェブサイトは、DASHを使用してビデオコンテンツをストリーミングします。
fMP4を伴うHLS: 本質的にHLSプロトコル。 2016で開催されたAppleWorldwide Developers Conference (WWDC) で、AppleInc。 新しいHLS規格は、TSフォーマットと同様にfMP4フォーマットをサポートすると発表した。 これにより、ビデオファイルをDASH形式とHLS形式で同時にトランスコードおよびパッケージ化できます。
fMP4およびDASHを伴うHLSを含むHLSは、最も一般的に使用されるアダプティブストリーミング技術である。 HLSとDASHを使用することを推奨します。
Codec
コーデックは、デジタルビデオを圧縮または解凍 (またはデコード) できるプログラムまたはデバイスです。 ほとんどの場合、そのような圧縮は不可逆圧縮です。 コーデックは、ビデオをあるフォーマットから別のフォーマットに変換するために使用される圧縮技術も指します。 以下のセクションでは、一般的なコーデックについて説明します。
H.26X: 国際電気通信連合 (ITU) によって開発されました。 このファミリは、H.261、H.262、H.263、H.264、およびH.265を含みます。
H.261: 以前のビデオ会議やビデオ通話で使用されます。
H.262: 標準解像度 (SD) ビデオのエンコードと伝送をサポートし、主に放送、DVD、デジタルテレビなどの分野で使用されます。
H.263: ビデオ会議、ビデオ通話、オンラインビデオで使用されます。
H.264: MPEG-4パート10、またはMPEG-4高度ビデオコーディング (MPEG-4 AVC) とも呼ばれます。 これは、ビデオ圧縮規格であり、高精度ビデオの記録、圧縮、および公開に広く使用されているフォーマットです。
H.265: 高効率ビデオコーディング (HEVC) としても知られます。 H.265は、H.264の後継であるビデオ圧縮規格です。 H.264と比較して、H.265は圧縮率を2倍にすることでビデオ品質を向上させます。 これにより、ビデオ品質を損なうことなくビットレートが50% 削減されます。 H.265は最大8192 × 4320の解像度をサポートします。これはトレンドの定義です。
MPEG: 国際標準化機構 (ISO) と国際電気標準化委員会 (IEC) によって設立されたワーキンググループの同盟であるMoving Picture Experts Group (MPEG) によって開発されました。 MPEGには、次のビデオ圧縮規格が含まれます。
MPEG-1パート2: VCDといくつかのオンラインビデオで使用されます。 この規格によって提供されるビデオ品質は、VHSのものと同様です。
MPEG-2パート2: H.262に相当し、DVD、SVCD、およびほとんどのデジタルビデオ放送システムおよびケーブル配信システムで使用されます。
MPEG-4パート2: ネットワーク伝送、放送、およびメディアストレージで使用されます。 この規格は、MPEG-2およびH.263 V1よりも優れた圧縮性能を提供します。
MPEG-4パート10: ITU-TのH.264と同じ技術的な内容を提供します。 ITU-TおよびMPEGは、H.264またはMPEG-4 AVC規格を開発するために協働する。 ITU-Tはこの規格をH.264と名付け、ISOとIECはMPEG-4 AVCと名付けました。
Audio Video Coding Standard (AVS): 中国のaudio video coding standards Workgroupによって策定された一連のデジタルオーディオおよびビデオコーディング標準。 2世代のAVS標準が策定されています。
第1世代のAVS規格には、「情報技術: オーディオとビデオの高度なコーディング、パート2: ビデオ」 (AVS1) と「情報技術: オーディオとビデオの高度なコーディング、パート16: ラジオテレビビデオ」 (AVS) が含まれます。 AVS + は、H.264またはAVC High Profileと同じ圧縮効率を提供MPEG-4。
第2世代AVS (AVS2) 規格は、UHD (4K以上) および高ダイナミックレンジ (HDR) ビデオの効率的な圧縮のために設計されています。 AVS2の圧縮効率は、AVS + およびH.264またはMPEG-4 AVCの2倍であり、H.265またはHEVCの圧縮効率を上回ります。
Googleが開発したVP8やVP9、RealNetworksが立ち上げたRealVideoなどの他のコーデックは、オンラインビデオに使用されることはめったにありません。
コーデックを選択する前に、コーデックとアプリやwebブラウザなどの再生クライアントとの互換性を考慮してください。 最も一般的で広くサポートされているコーデックを使用することを推奨します。 ApsaraVideo VODは、H.264またはMPEG-4 AVC、H.265またはHEVCのビデオコーデックをサポートしています。 H.264またはMPEG-4 AVCは、デフォルトビデオコーデックとして使用されます。 ApsaraVideo VODは、MP3、AAC、VORBIS、およびFLACのオーディオコーデックもサポートしています。 デフォルトのオーディオコーデックとしてMP3が使用されます。
トランスコード
ビデオトランスコーディングとは、圧縮されたビデオストリームを別のビデオストリームに変換して、異なるネットワーク帯域幅、端末処理能力、およびユーザー要件に適応させるプロセスを指します。 トランスコーディングは、復号および符号化が実行されるプロセスです。 トランスコーディング前後のストリームは、同じまたは異なるビデオコーデックを使用することができます。
コンテナ形式の変換
コンテナフォーマット変換は、圧縮されたオーディオまたはビデオストリームを、エンコードまたはデコードすることなく、あるコンテナフォーマットから別のコンテナフォーマットに変換するプロセスを指します。 たとえば、AVIビデオをMP4に変換します。 圧縮されたビデオおよびオーディオストリームは、1つのコンテナフォーマットのファイルから得られ、次いで、別のコンテナフォーマットのファイルにパッケージ化されます。 コンテナ形式の変換には、次の機能があります。
高速処理。 オーディオファイルとビデオファイルのデコードとエンコードは複雑で、トランスコード時間の大部分を占めます。 コンテナ形式の変換にはエンコードやデコードは必要ありません。 これにより、処理時間が短縮されます。
ロスレスのオーディオまたはビデオ品質。 エンコードとデコードが含まれていないため、コンテナ形式の変換はオーディオまたはビデオファイルを圧縮しません。
変換されたファイルの解像度とビットレートは、元のファイルとほぼ同じです。 したがって、変換されたファイルは、元の品質で再生されたとみなされます。
ビットレート
ビットレートは、ビデオファイルが単位時間あたりに使用するデータトラフィックを指します。 これは、ビデオエンコーディングにおける画質制御にとって最も重要な項目です。 ビットレートはビット /秒 (bit/s) で測定され、Kbit/sおよびMbit/sの単位でよく使用されます。 同じ解像度を有するビデオの場合、より高いビットレートは、より小さい圧縮比およびより高いビデオ品質を示します。 より高いビットレートは、単位時間当たりのより高いサンプリングレートおよびより高いデータストリーム精度を示します。 したがって、処理されたビデオファイルの品質および定義は、元のファイルの品質および定義に近い。 処理されたファイルには、再生デバイスからの優れたデコード機能が必要です。
ビットレートが高いほど、ファイルは大きくなります。 次の式に基づいてファイルサイズを計算できます。ファイルサイズ=時間 × ビットレート /8。 たとえば、60分720pのオンラインビデオファイルのビットレートが1 Mbit/sの場合、ファイルのサイズは次の式に基づいて計算されます。3,600秒 × 1 Mbit/s/8 = 450 MB。
解像度
解像度は、各次元に含まれるピクセルの数です。 例えば、1,280 × 720のビデオは、ビデオの幅が1,280ピクセルであり、高さが720ピクセルであることを示します。 ビデオの解像度は、ビデオの詳細の量を決定します。 ビデオの解像度は、ビデオのリアルさとクリアさを決定します。 より高い解像度を有するビデオは、より多くのピクセルを含み、より鮮明な画像を有します。
解像度は、ビットレートを決定する重要な要素です。 異なる解像度を有するビデオは、異なるビットレートを使用します。 ほとんどの場合、高い解像度は高いビットレートを必要とします。 各解像度は、ビットレートの推奨範囲に対応します。 推奨範囲の下限よりも低い解像度とビットレートを指定すると、ビデオの品質が低下します。 推奨範囲の上限よりも高い解像度とビットレートを指定した場合、ビデオはより多くのストレージスペースを占有し、ロードするためにより多くのトラフィックを必要としますが、ビデオの品質は大幅に改善されません。
フレームレート
フレームレートは、ビデオの単位時間あたりに表示されるフレーム数、または画像の1秒あたりにリフレッシュされるフレーム数を測定するために使用されます。 フレームレートの単位は、フレーム毎秒 (FPS) またはHzです。
フレームレートが高いほど、ビデオはより滑らかでリアルに表示されます。 ほとんどの場合、25〜30 fpsで十分です。 60 fpsは、没入感とリアルな再生体験を提供できます。 フレームレートを75 fps以上に上げると、再生エクスペリエンスの向上はそれほど重要ではありません。 モニターのリフレッシュレートよりも高いフレームレートを指定すると、モニターにフレームが正しく表示されず、グラフィックカードの処理能力が無駄になります。 同じ解像度でより高いフレームレートは、グラフィックスカードからのより大きな処理能力を必要とします。
GOP
GOP (Group of Pictures) は、MPEG符号化されたビデオ又はビデオストリームにおける連続画像のグループです。 GOPは、Iフレームで始まり、次のIフレームで終わります。 GOPには、次のイメージタイプが含まれます。
Iフレーム (イントラ符号化ピクチャ): キーフレーム。 Iフレームは、そのフレームの画像を生成するのに必要な全ての情報を含みます。 それは独立してデコードされ、静止画像とみなすことができます。 ビデオシーケンスの最初のフレームは常にIフレームであり、各GOPはIフレームで始まります。
Pフレーム (予測符号化ピクチャ): Pフレームは、先行するIフレームに基づいて符号化されなければならない。 Pフレームは、前のIフレームまたはPフレームに対する動き補償された差分情報を含みます。 復号化の間、現在のPフレームによって定義される差分は、最終画像を生成するために、以前にキャッシュされた画像と重ね合わされます。 Pフレームは、Iフレームと比較してより少ないデータビットを占めます。 しかし、Pフレームは、前のIフレームまたはPフレームに対する複雑な依存性のために、伝送エラーに敏感です。
Bフレーム (双方向予測符号化ピクチャ): Bフレームは、前のフレームおよび後のフレームに対する動き補償された差分情報を含みます。 復号化の間、現在のBフレームのデータは、最終画像を生成するために、以前にキャッシュされた画像および復号化された後続の画像と重ね合わされます。 Bフレームは、高い圧縮率を提供し、高い復号性能を必要とします。
GOP値は、キーフレームの間隔を示します。これは、2つのIDR (Instantaneous Decoding Refresh) フレーム間の距離、またはフレームグループ内の最大フレーム数です。 ビデオの1秒ごとに少なくとも1つのキーフレームが必要です。 キーフレームを増やすと、ビデオ品質は向上しますが、帯域幅の消費とネットワーク負荷が増加します。 間隔は、GOP値 (フレーム数) をフレームレートで除算することにより算出されます。 たとえば、ApsaraVideo VODのデフォルトのGOP値は250フレームで、フレームレートは25 FPSです。 時間間隔は、次の式に基づいて計算されます。250/25 = 10秒。
GOP値は、映像品質、ファイルサイズ (消費帯域幅) 、およびシーク効果 (ドラッグおよび早送り動作に対する応答速度) のバランスをとるために、適切な範囲内でなければならない。
GOP値を大きくすると、ファイルのサイズが小さくなります。 しかし、GOP値が大きすぎると、GOPの最後のフレームが歪められ、ビデオ品質が低下します。
GOP値は、ビデオにおけるシークに対する応答速度を決定する際の重要な要素でもあります。 シーク中、プレーヤーは指定された位置の前に最も近いキーフレームを見つけます。 より大きいGOP値は、指定された位置と最も近いキーフレームとの間のより長い距離を示し、これは、復号される必要があるより多くの予測フレームをもたらします。 この場合、ロード時間が長くなり、シーク動作が完了するまでに長時間を要します。
PフレームおよびBフレームの符号化は、Iフレームの符号化と比較してより複雑です。 大きなGOP値は、多くのPフレーム及びBフレームをもたらす。 これは、符号化効率を低下させます。
しかしながら、GOP値が小さすぎる場合、画質が低下しないことを保証するために、ビデオのビットレートを増加させなければならない。 このプロセスは、帯域幅消費を増加させます。
スキャンモード
プログレッシブスキャン: 各フレームのすべてのラインが画面を埋めるように順番に描画されます。
インターレーススキャン: 偶数のスキャンラインが画面に描画され、次に奇数のスキャンラインが画面に描画されます。 これらの偶数および奇数の走査線フィールドの2つは、1つのビデオフレームを構成します。
IDRフレームアライメント
IDRフレームは、特別なタイプのIフレームです。 通常のIフレームの後のPフレームおよびBフレームは、IDRフレームの前の他のIフレームを参照することができます。 しかしながら、IDRフレームの後のフレームは、IDRフレームの前の他のフレームを参照できない。 符号化および復号化プロセスを制御するために、フレームシーケンスの最初のIフレームがIDRフレームとして指定されます。
IDRフレームは、参照フレームバッファを直ちにリフレッシュするようにコーデックに伝えます。 このように、IDRフレームの前のフレームにおけるエラーは、IDRフレームの後のフレームには伝播されない。 IDRフレームおよびそれ以降のフレームは、新しいシーケンスとして符号化されます。 IDRフレームはまた、ランダムアクセスのために使用され得ます。通常のIフレームは、ランダムアクセスをサポートしない。 ほとんどのプレーヤーは、ユーザーがプログレスバーの特定の位置にシーク (スライダーをドラッグ) することを許可します。 この場合、最も効率的な再生方法は、指定された位置に最も近いIDRフレームから映像を再生することです。 これは、IDRフレームの後のすべてのフレームがその前の他のIフレームを参照しないので、複雑な逆解析を防止します。
ビデオを異なるビットレートの複数のビデオにトランスコードする場合は、IDRフレーム配置を有効にできます。 このように、全ての出力ビデオのIDRフレームは、時間及びフレームコンテンツに基づいて正確に整列されます。 その後、プレーヤーは明らかな遅れなしに異なるビットレートでビデオをスムーズに切り替えることができます。
Profile
プロファイルは、特定のクラスのアプリケーションに焦点を当てた機能のセットを定義します。 H.264は以下のプロファイルを提供します。
ベースラインプロファイル: IフレームとPフレームを使用し、プログレッシブビデオとコンテキスト適応型可変長符号化 (CAVLC) のみをサポートします。 このプロファイルは、ローエンドのアプリケーション、またはモバイルデバイスでのビデオ通話をサポートするインスタントメッセージングアプリケーションなど、追加のフォールトトレランスを必要とするアプリケーションで使用されます。
メインプロファイル: Iフレーム、Pフレーム、およびBフレームを使用し、プログレッシブおよびインターレースのビデオをサポートします。 また、CAVLCおよびコンテキスト適応型バイナリ算術コーディング (CABAC) もサポートします。 このプロファイルは、MP4プレーヤー、ポータブルビデオプレーヤー、PSP、iPodなど、デコード能力が比較的低い主流の消費者向け電子製品で使用されています。
ハイプロファイル: 8 × 8インター予測、カスタム量子化、ロスレスビデオコーディング、および4:4:4などのより多くのYUVフォーマットをサポートします。 このプロファイルは、メインプロファイルの機能もサポートしています。 これは、放送およびディスクストレージアプリケーション、特に高品位テレビアプリケーションで使用されます。 たとえば、Blu-rayディスクのストレージ形式はこのプロファイルを採用しています。
ビットレート
ビットレートは、毎秒送信されるビット数を指します。 単位はビット /秒 (bit/s) です。 より高いビットレートは、送信されるデータの量がより多いことを示します。 このビデオフィールドでは、ビットレートはビットレートに相当します。 ビットレートは、符号化された (圧縮された) オーディオまたはビデオデータを表すのに必要な1秒当たりのビット数を示します。 ビットは最小のバイナリ単位です。 ビットを0または1に設定できます。 ビットレートと同様に、ビットレートが高いほど、オーディオまたはビデオの品質が高く、ファイルサイズが大きいことを示します。 ビットレートが小さいほど、ファイルサイズが小さいことを示します。
ビットレート制御方式
ビットレート制御方法は、符号化ストリームのビットレートを制御するために使用される方法を指します。 ビットレートの制御方法を次に示します。
可変ビットレート (VBR): この方法を使用すると、ビットレートは固定されません。 ビデオまたはオーディオファイルを圧縮するとき、ビデオまたはオーディオ圧縮ソフトウェアは、ビデオまたはオーディオデータの複雑さに基づいてビットレートを決定します。 この方法は、品質とファイルサイズのバランスを取ります。
固定ビットレート (CBR): この方法が使用されるとき、ビットレートは、符号化されたストリームに対して固定されます。 CBR圧縮ファイルは、VBR圧縮ファイルおよびABR圧縮ファイルと比較してサイズが大きい。 ただし、CBR圧縮ファイルの品質は、VBR圧縮ファイルまたはABR圧縮ファイルの品質と比較して大幅に優れているわけではありません。
平均ビットレート (ABR): この方法は、補間パラメータを有するVBRの変形です。 LAMEは、CBR圧縮ファイルのサイズと品質の不一致、およびVBRの予測不可能なファイルサイズを解決するためにこのメソッドを作成しました。 所与のファイルサイズにおいて、ABRは、ストリームを50フレームの単位で (毎秒約30フレームで) 部分に分割し、比較的低いビットレートを使用して複雑でないセグメントを符号化し、高いビットレートを使用して複雑な部分を符号化します。 ABRは、VBRとCBRとの間の妥協とみなすことができます。
ビットレートは特定の時間範囲内で指定された値に達することができますが、一部の部分のピークビットレートは指定されたビットレートを超えることがあります。 平均ビットレートは一定のままである。 ABRはVBRの修正版です。 ABRは、平均出力ビットレートが適切な範囲内にあることを保証し、複雑さに基づいてこの範囲内のビデオをコーディングします。 Alibaba Cloudは、デフォルトのビットレート制御方法としてABRを使用しています。
エンコード形式
詳細については、前のセクションのコーデックの説明を参照してください。 オーディオコーデックは、非可逆コーデックと可逆コーデックとに分類されます。 サンプリング理論に基づいて、オーディオコーデックは、自然信号に無限に近い信号のみを生成することができます。 したがって、すべてのオーディオコーデックは非可逆コーデックです。 コンピュータ分野では、パルス符号変調 (PCM) は、すべてのオーディオコーデックの中で最高の忠実度を達成するため、従来の無損失コーデックです。 MP3やAACなどのインターネット上の一般的なオーディオコーデックは、すべて非可逆コーデックです。
サンプリングレート
サンプリングレートまたはサンプリング周波数は、離散時間信号を形成するために毎秒連続時間信号から抽出されるサンプルの数を定義します。 単位: Hz サンプルレートは、デジタル信号に変換されたアナログ信号の単位時間当たりのサンプル数です。 より高いサンプルレートは、よりリアルで自然なサウンドを提供します。
ビットレート
詳細については、前のセクションのビットレートの説明を参照してください。
サウンドチャンネル
サウンドチャネルは、サウンドが異なる空間位置で記録または再生されるときに収集または再生される独立したオーディオ信号を指す。 音声チャンネル数とは、録音時の音源数や再生時のスピーカ数のことです。
UTC (ISO 8601標準時間フォーマット)
協定世界時 (UTC) は、世界統一時間、世界標準時、および国際協定時間としても知られています。 英語の用語の頭字語は、フランス語でCUTとTUCです。 頭字語UTCは妥協として使用されます。 UTCは、世界時に近い原子秒に基づく時間計測システムです。 中国本土は、データ要素と相互変更形式の標準-情報交換-日付と時刻の表現 (ISO 8601:1988またはGB/T 7408-1994) を採用し、UTCを国際調整時間と呼びます。
デフォルトでは、ApsaraVideo VODのAPIリクエストで返されるすべての時間フィールドと時間パラメーターはUTCです。 時間はYYYY-MM-DDThh:mm:ssZ形式で表示され、ISO8601標準に従います。 たとえば、2017-01-11T12:00:00Zは、UTC + 8 (中国標準時) で2017年1月11日の20:00:00を示します。 中国標準時とUTCの違いは8時間です。 したがって、UTC + 8は中国標準時を示します。