知識ベース

ビデオコーデック

ビデオコーデックは、デジタルビデオを圧縮または圧縮解除する電子回路またはソフトウェアです。非圧縮ビデオを圧縮形式に、またはその逆に変換します。ビデオ圧縮のコンテキストでは、「コーデック」は「エンコーダ」と「デコーダ」の連結です。圧縮のみを行うデバイスは通常エンコーダと呼ばれ、解凍のみを行うデバイスはデコーダです。

圧縮データ形式は通常、標準のビデオ圧縮仕様に準拠しています。通常、圧縮は非可逆です。つまり、圧縮されたビデオには元のビデオに存在する情報が一部欠けています。この結果、元のビデオを正確に再構築するには情報が不十分であるため、解凍されたビデオの品質は元の非圧縮ビデオよりも低くなります。

ビデオの品質、ビデオを表現するために使用されるデータの量(ビットレートによって決定)、エンコードおよびデコードアルゴリズムの複雑さ、データの損失とエラーに対する感度、編集の容易さ、ランダムアクセス、およびエンドツーエンド遅延(遅延)。

歴史

歴史的に、ビデオは磁気テープにアナログ信号として保存されていました。アナログオーディオのデジタル形式の代替としてコンパクトディスクが市場に登場した頃、ビデオをデジタル形式で保存および伝達することも可能になりました。生のビデオの記録と伝達には大量のストレージと帯域幅が必要であったため、生のビデオを表すために使用されるデータ量を削減する方法が必要でした。それ以来、エンジニアと数学者は、デジタルビデオデータの圧縮を伴うこの目標を達成するための多くのソリューションを開発しました。

1974年、Nasir Ahmed、T。Natarajan、およびKR Raoによって離散コサイン変換(DCT)圧縮が導入されました。 1980年代後半、多くの企業がビデオコーディング用のDCT非可逆圧縮の実験を開始し、H.261標準の開発に至りました。 H.261は最初の実用的なビデオコーディング標準であり、日立、PictureTel、NTT、BT、東芝などの多くの企業によって開発されました。 H.261以降、DCT圧縮は、その後のすべての主要なビデオコーディング標準で採用されています。

コーデックに使用される最も一般的なビデオコーディング標準は、MPEG標準です。 MPEG-1は、1991年にMotion Picture Experts Group(MPEG)によって開発され、VHS品質のビデオを圧縮するように設計されました。 1994年にMPEG-2 / H.262が引き継がれました。MPEG-2/ H.262は、主にソニー、トムソン、三菱電機などの多くの企業によって開発されました。 MPEG-2は、DVDおよびSDデジタルテレビの標準ビデオ形式になりました。 1999年には、MPEG-4 / H.263が続きました。これは、ビデオ圧縮技術の大きな進歩でした。主に三菱電機、日立、パナソニックなどの多くの企業によって開発されました。

2016年現在、最も広く使用されているビデオコーディング形式はH.264 / MPEG-4 AVCです。 2003年に、主にパナソニック、合同会社IPブリッジ、LGエレクトロニクスなどの多くの組織によって開発されました。 H.264は、Blu-rayディスクの主要なビデオエンコーディング標準であり、YouTube、Netflix、Vimeo、iTunes Storeなどのストリーミングインターネットサービス、Adobe Flash Player、Microsoft SilverlightなどのWebソフトウェア、およびさまざまなHDTV放送で広く使用されています。地上波および衛星テレビ。

AVCは、2013年に開発されたHEVC(H.265)に引き継がれています。これは、Samsung Electronics、GE、NTT、およびJVC Kenwoodが所有する特許の大部分を所有しています。

用途

ビデオコーデックは、DVDプレーヤー、インターネットビデオ、ビデオオンデマンド、デジタルケーブル、地上デジタルテレビ、テレビ電話、その他のさまざまなアプリケーションで使用されています。特に、ビデオを記録または送信するアプリケーションで広く使用されていますが、非圧縮ビデオの大量のデータと帯域幅では実現できない場合があります。たとえば、手術室で手術を記録するために、セキュリティシステムのIPカメラで、遠隔操作の水中車両および無人航空機で使用されます。

ビデオコーデックの設計

ビデオコーデックは、基本的にアナログ形式のデータセットをデジタル形式で表現しようとします。輝度(ルミナンス)と色情報(クロミナンス、クロマ)を別々に表すアナログビデオ信号の設計のため、コーデック設計における画像圧縮の一般的な最初のステップは、YCbCr色空間で画像を表現して保存することです。 YCbCrへの変換には2つの利点があります。1つ目は、色信号の非相関性を提供することで圧縮率を向上させます。第二に、知覚的にはるかに重要な輝度信号を、知覚的にそれほど重要ではなく、より効率的なデータ圧縮を実現するためにクロマサブサンプリングを使用して低解像度で表現できるクロマ信号から分離します。 Y:Cb:Crのように、これらの異なるチャネルに格納されている情報の比率を表すのが一般的です。異なるコーデックは、圧縮のニーズに応じて異なるクロマサブサンプリング比を使用します。 WebおよびDVDのビデオ圧縮スキームは4:2:1カラーサンプリングパターンを使用し、DV規格は4:1:1サンプリング比を使用します。はるかに高いビットレートで機能し、ポストプロダクション操作サンプルの大量の色情報を4:2:2および4:4:4比率で記録するように設計されたプロフェッショナルビデオコーデック。これらのコーデックの例には、PanasonicのDVCPRO50およびDVCPROHDコーデック(4:2:2)、SonyのHDCAM-SR(4:4:4)、PanasonicのHDD5(4:2:2)、AppleのProres HQ 422(4:2:2)が含まれます。 )。

また、ビデオコーデックはRGB空間でも動作できることに注意してください。これらのコーデックは、赤、緑、青のチャンネルを異なる比率でサンプリングしない傾向があります。これは、そうするための知覚的な動機が少ないためです。青のチャンネルだけがアンダーサンプリングされる可能性があります。

ある程度の空間的および時間的ダウンサンプリングを使用して、基本的なエンコードプロセスの前に生データレートを下げることもできます。最も一般的なエンコード変換は、8x8離散コサイン変換(DCT)です。ウェーブレット変換を利用するコーデックも市場に参入しています。特にモーションシーケンスでのRAW画像フォーマットの処理を伴うカメラワークフローではそうです。このプロセスでは、ビデオ画像をマクロブロックのセットとして表現します。ビデオコーデック設計のこの重要な側面の詳細については、Bフレームを参照してください。

変換の出力は最初に量子化され、次にエントロピー符号化が量子化された値に適用されます。 DCTが使用されている場合、係数は通常、ジグザグスキャン順序を使用してスキャンされ、エントロピーコーディングは通常、多数の連続するゼロ値量子化係数を次の非ゼロ量子化係数の値と組み合わせて単一のシンボルにします。 、また、残りのすべての量子化係数値がゼロになったことを示す特別な方法があります。エントロピーコーディング方式では、通常、可変長コーディングテーブルを使用します。一部のエンコーダーは、 nパスエンコーディング(2パスなど)と呼ばれる複数ステップのプロセスでビデオを圧縮します。このプロセスは、低速ですが潜在的に高品質の圧縮を実行します。

復号化プロセスは、可能な限り、符号化プロセスの各段階の反転を実行することで構成されます。正確に反転できない1つのステージは、量子化ステージです。そこで、反転のベストエフォート近似が実行されます。量子化は、本質的に非可逆過程であるが、プロセスのこの部分は、多くの場合、 逆量子化または逆量子化と呼ばれています。

ビデオコーデックの設計は通常、標準化されるか、最終的には標準化されます。つまり、公開されたドキュメントで正確に指定されます。ただし、相互運用性を有効にするには、デコード処理のみを標準化する必要があります。エンコードプロセスは通常、標準ではまったく指定されておらず、実装者は、指定された方法でビデオをデコードできる限り、自由にエンコーダを設計できます。このため、同じビデオコーデック標準を使用する異なるエンコーダーの結果をデコードすることによって生成されるビデオの品質は、エンコーダーの実装ごとに劇的に異なる場合があります。

一般的に使用されるビデオコーデック

さまざまなビデオ圧縮形式を、PCや家電製品に実装できます。したがって、同じ製品で複数のコーデックを使用でき、相互運用性を実現するために単一の主要なビデオ圧縮形式を選択する必要性を減らします。

標準のビデオ圧縮形式は、複数のソースからの複数のエンコーダーおよびデコーダーの実装でサポートできます。たとえば、Xvidなどの標準MPEG-4パート2コーデックでエンコードされたビデオは、すべて同じビデオ形式を使用するため、FFmpeg MPEG-4やDivX Proコーデックなどの他の標準MPEG-4パート2コーデックを使用してデコードできます。

コーデックには品質と欠点があります。比較は頻繁に公開されます。圧縮能力、速度、および忠実度(アーティファクトを含む)のトレードオフは、通常、技術的なメリットの最も重要な数値と見なされます。

コーデックパック

オンラインビデオ素材はさまざまなコーデックによってエンコードされ、これによりコーデックパックが利用可能になりました。これは、K-LiteコーデックパックなどのPC用ソフトウェアパッケージとして利用可能なインストーラーと組み合わされた一般的に使用されるコーデックの事前に組み立てられたセットです、PerianおよびCombined Community Codec Pack。