Unified Video Decoder

Unified Video Decoder (UVD)(以前はUniversal Video Decoderと呼ばれていた)はATI Technologiesの作成した動画のハードウェアデコーダーである。H.264とVC-1の2つのビデオコーデックをサポートしており、AVIVOテクノロジーの一部である。 Windows - この技術の発表時からサポートしている。UVDは現在のところハードウェアアクセラレーションのためにWindowsとXbox 360プラットフォームにおけるDXVAというAPIのみをサポートしており、したがってメディアプレーヤーはUVDを用いるためにはDXVAをサポートする必要がある。 Linux - 2008年10月からである。 RadeonのためにAMDによってデザインされたXvBAというAPIはLinuxとUNIXのX Window SystemにおけるX video extension (Xv)向けの拡張であり、これはUVDによるハードウェアアクセラレーションを利用できるようにする。 Linux - 2013年4月からである。 NVIDIAによるVDPAU (Video Decode and Presentation API for Unix)経由でのオープンソースなUVDサポートが提供された。これは既存のMesa上のVDPAUステートトラッカーをベースにしている。 UVDはATIのXilleon動画プロセッサーに由来するもので、GPUと同じダイに組み込まれており、Advanced Video Processor (AVP)も同様に組み込まれている。AMDによれば、UVDはH.264/AVCとVC-1のデコードを完全にハードウェア上で行える。しかし、動画のポスト・プロセッシングはピクセルシェーダーとOpenCLカーネルに送られる。また、MPEG-2のデコードはサポートされているものの、UVDではなくシェーダーで行われる。このデコーダーはBlu-rayとHD DVDの再生要件を満たしており、H.264/AVCならば40 Mbpsのビットレートまでデコード可能である。H.264/AVCにおけるCABACもサポートしている。 前世代のGPUにおけるアクセラレーションはかなりCPUの補助が必要であったが、UVDはほとんどの処理をオフロードできる。前時代のGPU(たとえばATI Radeon R520シリーズのAVIVOやNVidia GeForce 7シリーズのPureVideoはH.264やVC-1におけるビットストリーム/エントロピーの伸展ができなかったため、これらはCPUで行われた。 UVDはVLC/CAVLC/CABAC/フーリエ変換/動き予測/デブロッキングフィルタなどを処理できるが、ポスト・プロセッシングはシェーダーに任せる。 ポスト・プロセッシングとはノイズ除去/インターレース解除/拡大・縮小などである。AMDは65 nmプロセスにおいては、UVDはわずか4.7 mm²のダイ面積しか使用していないと主張している。 UVD+と呼ばれるUVDの変種は、Radeon HD 3000シリーズから搭載された。UVD+は高解像度の動画のためにHDCPをサポートした。 しかし、UVD+は単にUVDとしてマーケティングされている。 Radeon HD 4000シリーズの発表に伴い、UVDは大幅に更新された。UVD 2はH.264/MPEG-4 AVCやVC-1のビットストリームの完全なデコード、さらにMPEG-2のiDCT(離散コサイン変換)レベルのアクセラレーションも可能になった。性能の向上により二つのストリームを同時にデコードできるようになり、ピクチャー・イン・ピクチャーが可能になった。この結果、Blu-rayにおけるBD-Liveと完全に互換になった。 UVD 2.2はローカルのメモリインターフェースを再デザインし、H.264/VC-1/MPEG-2の動画との互換性を向上させた。しかし、マーケティング上は"UVD 2 Enhanced"として「特別なコアを用い、RV770/RV730シリーズで採用されたH.264/VC-1/MPEG-2を二つ同時にデコードできるもの」という扱いだった。UVD 2に対する追加アップデートとしてのUVD 2.2の立ち位置はこの様に表される。 UVD 3はMPEG-2ビットストリームのデコード、DivX/XvidのMPEG-4 Part 2によるデコード、Blu-ray 3DのMultiview Video Codingによるデコードをサポートした。 更に120 Hzのステレオ3Dのサポート、CPUの補助の必要を減らす最適化などが行われた。 Radeon HD 7000シリーズ、Radeon Rx 200シリーズ、Rx 370(X)、APUのKaveri、Kabini等のAPUに搭載。H.264/AVCHDデコード時におけるエラー回復の改善がなされた。AMD Fluid Motionに対応。 Radeon R7 260(X)、R9 290シリーズ、R7 360(E)、R9 390(X)、Socket AM1ののKabini、Socket FM2のKaveriに搭載。 Radeon R9 285、R9 380(X)、R9 Fury(X)、R9 Nanoに搭載。H.264のHigh Profile Level 5.2サポートと4K解像度のデコードに対応。 Socket FM2とSocket AM4のCarrizo、Socket AM4のBristol Ridgeに搭載。H.265およびJPEGのデコードに対応。 Radeon RX 400シリーズ、RX 500シリーズに搭載。H.265のエンコードに対応。 Radeon RX Vegaシリーズに搭載。 付記: 注1: デュアルGPUである。 注2: バージョン 8.371もしくはそれ以降を用いないと、UVDをH.264向けに有効化した際にシステムがクラッシュすることがある。 ^ Phoronix ^ AMD's X-Video Bitstream Acceleration ^ AMD Releases Open-Source UVD Video Support ^ （中国語）HardSpell review ^ Smith, Ryan (February 24, 2010). “AMD’s Radeon HD 5450: The Next Step In HTPC Video Cards”. AnandTech. AnandTech, Inc. p. 4. April 7, 2010閲覧。 “Since deinterlacing and other AVIVO post-processing actions are done by the shader hardware, the limited shading capabilities of these cards meant that AMD couldn’t offer the full suite of AVIVO abilities at once.” ^ （中国語） PC-DVD discussion thread, retrieved August 23, 2008 ^ Radeon 6800 Series Launches, Targets GeForce GTX 460 by Jansen Ng, 10/21/2010 DailyTech ^ 「A10-7850K」レビュー前編 - 4Gamer.net ^ AMD AM1 Athlon 5350 Reviewed pcper.com ^ 「Radeon R9 285」レビュー - 4Gamer.net ^ http://www.tomshardware.com/reviews/amd-785g-chipset,2381-3.html ATI Avivo(TM) HD Technology Brief, July 2008 Presentation slides comparison between CPU decode, ATI Avivo HD and PureVideo HD and Decode comparison of VC-1 and H.264 video AMD Media Codecs—optional download