DirectX_Video_Acceleration
[Wikipedia|▼Menu]

DirectX Video Acceleration (DXVA) は、マイクロソフトAPI仕様である。WindowsXbox 360において、パイプラインにより、離散コサイン変換動き補償、およびデインターレース処理などの特定のCPU集約型処理をGPUオフロードすることで、ビデオのデコードハードウェアアクセラレーションを利用して実行できるようにする。DXVA 2.0ではさらに、キャプチャや処理操作など、より多くの操作をハードウェアアクセラレーションで実行することができる。APIの一貫性の観点から、同様の機能は後にリリースされたDirect3D 11に統合され、DXVAは旧世代のAPIとなりつつ有る。

DXVAは、ビデオカードで使用されるビデオレンダリングモデルと連携して動作する。DXVA 1.0は、Windows 2000で標準化されたAPIとして導入され、現在Windows 98以降で利用可能で、オーバーレイレンダリングモードまたはVMR 7/9のいずれかを使用できる[1]。DXVA 2.0は、Windows VistaWindows 7Windows 8以降のOSでのみ利用可能で、Media Foundation (MF) と統合されており、MFにあるEnhanced Video Renderer (EVR) を使用する。
概要.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%;font-size:90%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}

この節は検証可能参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方
出典検索?: "DirectX Video Acceleration" ? ニュース ・ 書籍 ・ スカラー ・ CiNii ・ J-STAGE ・ NDL ・ dlib.jp ・ ジャパンサーチ ・ TWL(2017年9月)

DXVAは、ハードウェアアクセラレーションによるコーデックのデコードとレンダリングのためのコーデック固有のパイプラインを定義するソフトウェアビデオデコーダによって使用される。パイプラインは、メディアストリームの解析とDXVA互換構造への変換を行うCPUで開始される。DXVAは、ハードウェアアクセラレーションが利用可能な操作と、グラフィックスドライバが動作を高速化できるデバイスドライバ インターフェイス (DDI) を指定する。コーデックが定義された操作を実行する必要がある場合、これらのインターフェイスを使用して、ハードウェアによる高速化が行われた実装にアクセスできる。グラフィックスドライバが一部のインターフェイスを実装していない場合、ソフトウェアによるフォールバックを行うかどうかはコーデックにより異なる。デコードされたビデオはハードウェアビデオレンダラに渡されるが、ハードウェアビデオレンダラでは、デバイスにレンダリングされる前にさらなるビデオ後処理が適用されることがある。生成されたパイプラインは、DirectShow互換アプリケーションで使用できる。

DXVAは、離散コサイン変換ハフマン符号化、動き補償アルファブレンディング、逆量子化色空間変換およびフレームレート変換演算のためのインターフェースを指定する動き補償DDIを指定する[2][3]。また、Deinterlacing DDI、COPP DDI、ProcAmp DDIという3つのサブ仕様も含んでいる[4]。Deinterlacing DDIは、デインターレース処理のコールバックを指定する。COPP (Certified Output Protection Protocol) DDI機能を使用すると、暗号化機能を指定することで、DRM保護されたメディアのパイプラインを保護できる。ProcAmp DDIは、ビデオの後処理を高速化するために使用される。そしてProcAmpドライバモジュールは、ハードウェアビデオレンダラとディスプレイドライバの間に配置され、圧縮解除されたビデオに後処理フィルタを適用する機能を提供する。

DXVA DDIによって公開される関数は、DirectShowクライアントから直接アクセスすることはできないが、ビデオレンダラにコールバック関数として提供されるため、レンダラはパイプラインを固定する上で非常に重要な役割を果たす。
Windows Vista以降でのDXVA

DXVA 2.0はビデオパイプラインの実装を強化し、ビデオキャプチャ用のキャプチャDDIを含む他のDDIのホストを追加する。DXVA 1.0と共有するDDIでも、より多くの操作でハードウェアアクセラレーションを使用できるようになった。また、DDI関数は呼び出し元が直接利用することができ、ビデオレンダラが仲介する必要はない[5]。このように、プログラムはメディアを単純に(レンダリングせずに)デコードするか、後処理およびレンダリング(デコードなしで)をするためのパイプラインを作成することもできる。これらの機能には、Windows Display Driver Model (WDDM) ドライバが必要となる。WDDMドライバは、Windows Vista、Windows Server 2008[1][5]、Windows 7、Windows Server 2008 R2およびWindows 8以降でのみ利用可能であるため、DXVA 2.0も対象がそのOSのみに制限される。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:18 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef