Unified Video Decoder (UVD, anteriormente chamado de Universal Video Decoder) é o nome dado ao ASIC de decodificação de vídeo dedicado da AMD. Existem várias versões implementando uma infinidade de codecs de vídeo, como H.264 e VC-1.
O UVD foi introduzido com a série Radeon HD 2000 e está integrado em algumas GPUs e APUs da AMD. O UVD ocupa uma quantidade considerável da superfície do die no momento de sua introdução e não deve ser confundido com o mecanismo de codificação de vídeo (VCE) da AMD.
A partir do AMD Raven Ridge (lançado em janeiro de 2018), o UVD e o VCE foram substituídos pelo Video Core Next (VCN).
Visão geral O UVD é baseado em um processador de vídeo ATI Xilleon, que é incorporado ao mesmo chip que a GPU e faz parte do ATI Avivo HD para decodificação de vídeo por hardware, junto com o Advanced Video Processor (AVP). O UVD, conforme declarado pela AMD, lida com a decodificação dos codecs de vídeo H.264/AVC e VC-1 inteiramente no hardware.
A tecnologia UVD é baseada no processador Cadence Tensilica Xtensa, que foi originalmente licenciado pela ATI Technologies Inc. em 2004.
UVD/UVD+ Nas primeiras versões do UVD, o pós-processamento de vídeo é passado para os pixel shaders e kernels OpenCL. A decodificação MPEG-2 não é realizada no UVD, mas nos processadores de shader. O decodificador atende aos requisitos de desempenho e perfil de Blu-ray e HD DVD, decodificando fluxos de bits H.264 até uma taxa de bits de 40 Mbit/s. Ele tem suporte de codificação aritmética binária adaptável ao contexto (CABAC) para H.264/AVC.
Diferentemente dos blocos de aceleração de vídeo em GPUs de gerações anteriores, que exigiam envolvimento considerável da CPU do host, o UVD descarrega todo o processo de decodificação de vídeo para VC-1 e H.264, exceto o pós-processamento de vídeo, que é descarregado para os shaders. A decodificação MPEG-2 também é suportada, mas a decodificação de fluxo de bits/entropia não é realizada para vídeo MPEG-2 em hardware.
Anteriormente, nem a série ATI Radeon R520 nem a série PureVideo da NVidia Geforce 7 auxiliavam na descompressão de bitstream/entropia front-end em VC-1 e H.264 - a CPU host realizava esse trabalho. O UVD manipula VLC / CAVLC / CABAC, transformação de frequência, previsão de pixel e desbloqueio de loop, mas passa o pós-processamento para os shaders. O pós-processamento inclui redução de ruído, desentrelaçamento e dimensionamento/redimensionamento. A AMD também afirmou que o componente UVD incorporado ao núcleo da GPU ocupa apenas 4,7 mm² de área no nó do processo de fabricação de 65 nm.
Uma variação do UVD, chamada UVD+, foi introduzida com a série Radeon HD 3000. Suporte UVD+ HDCP para fluxos de vídeo de alta resolução. PC-DVD discussion thread, retrieved August 23, 2008 Mas UVD+ também estava sendo comercializado simplesmente como UVD.
UVD 2 A UVD passou por uma atualização com o lançamento dos produtos da série Radeon HD 4000. O UVD 2 apresenta decodificação de fluxo de bits completo de H.264/MPEG-4 AVC, VC-1, bem como aceleração de nível iDCT de fluxos de vídeo MPEG2. As melhorias de desempenho permitem decodificação de fluxo de vídeo duplo e modo Picture-in-Picture. Isso torna o UVD2 totalmente compatível com BD-Live.
O UVD 2.2 apresenta uma interface de memória local redesenhada e melhora a compatibilidade com vídeos MPEG2/H.264/VC-1. No entanto, ele foi comercializado sob o mesmo pseudônimo de "UVD 2 Enhanced" como "lógica de núcleo especial, disponível nas séries de GPUs RV770 e RV730, para decodificação de hardware de vídeo MPEG2, H.264 e VC-1 com decodificação de fluxo duplo". A natureza do UVD 2.2, sendo uma atualização incremental do UVD 2, pode ser explicada por essa mudança.
UVD 3 O UVD 3 adiciona suporte para decodificação de hardware adicional MPEG2 (decodificação de entropia), DivX e Xvid via decodificação MPEG-4 Parte 2 (decodificação de entropia, transformação inversa, compensação de movimento) e Blu-ray 3D via MVC (decodificação de entropia, transformação inversa, compensação de movimento, desbloqueio em loop).White Paper | AMD Unified Video Decoder (UVD) by Jansen Ng, 10/21/2010 DailyTech junto com 120 Suporte estéreo 3D de Hz, e é otimizado para utilizar menos poder de processamento da CPU. O UVD 3 também adiciona suporte para displays estereoscópicos Blu-ray 3D.
UVD 4 O UVD 4 inclui interpolação de quadros aprimorada com decodificador H.264. O UVD 4.2 foi introduzido com a série AMD Radeon Rx 200 e a APU Kaveri.
UVD 5 O UVD 5 foi introduzido com a AMD Radeon R9 285. A novidade do UVD é o suporte total para vídeo 4K H.264, até o nível 5.2 (4Kp60).
UVD 6 O decodificador UVD 6.0 e o codificador Video Coding Engine 3.0 foi relatado como sendo usado pela primeira vez em GPUs baseadas em GCN 3, incluindo a série Radeon R9 Fury, seguida pela série AMD Radeon Rx 300 (família de GPU Pirate Islands) e AMD Radeon Rx 400 Series (família de GPU Arctic Islands). A versão UVD em hardware de controlador gráfico baseado em "Fiji" e "Carrizo" também é anunciada para fornecer suporte para decodificação de vídeo de hardware de codificação de vídeo de alta eficiência (HEVC, H.265), até 4K, cores de 8 bits (versão H.265 1, perfil principal); e há suporte para o codec de vídeo HDR de 10 bits de cores H.265 e VP9 na série AMD Radeon 400 com UVD 6.3.
UVD 7 O decodificador UVD 7.0 e o decodificador Video Coding Engine 4.0 está incluído nas GPUs baseadas em Vega. Mas ainda não há decodificação de hardware VP9 com função fixa.
UVD 7.2 A GPU Vega20 da AMD, presente nas placas Instinct Mi50, Instinct Mi60 e Radeon VII, inclui VCE 4.1 e duas instâncias UVD 7.2.
VCN 1
Começando com os gráficos integrados da APU Raven Ridge (Ryzen 2200/2400G), os antigos UVD e VCE foram substituídos pelo novo "Video Core Next" (VCN). O VCN 1.0 adiciona decodificação de hardware completa para o codec VP9.
Suporte de formato +Suporte para decodificação/codificação do decodificador de vídeo unificado e do Video Core NextImplementaçãoMPEG-1H.262(MPEG-2)H.263(MPEG-4 ASP)VC-1/WMV 9H.264(MPEG-4 AVC)H.265(HEVC)VP9AV1JPEGResolução máximaColor depthAMD Fluid MotionDecodificaçãoDecodificaçãoDecodificaçãoDecodificaçãoDecodificaçãoCodificaçãoDecodificaçãoCodificaçãoDecodificaçãoDecodificaçãoCodificaçãoDecodificaçãoInterpolação de quadrosUVD1.0RV610, RV630, RV670, RV620, RV635 rowspan=4 rowspan=4 rowspan=4 rowspan=22 rowspan=25 rowspan=6 rowspan=10 rowspan=12 rowspan=15 rowspan=20 rowspan=24 rowspan=10 2K8-bit rowspan=7 UVD 2.0RS780, RS880, RV770UVD 2.2RV710, RV730, RV740UVD 2.3Cedar, Redwood, Juniper, CypressUVD 3.0Palm (Wrestler/Ontario), Sumo (Llano), Sumo2 (Llano) rowspan=18 rowspan=18 rowspan=18 UVD 3.1Barts, Turks, Caicos, Cayman, SeymourUVD 3.2Aruba (Trinity/Richland), Tahiti rowspan=9 UVD 4.0Cape Verde, Pitcairn rowspan=9 UVD 4.2Kaveri, Kabini, Mullins, Bonaire, HawaiiUVD 5.0Tonga4KUVD 6.0Carrizo, Fiji rowspan=15 rowspan=15 UVD 6.2Stoney10-bitUVD 6.3Polaris, VegaM, Lexa rowspan=3 UVD 7.0Vega10, Vega12UVD 7.2Vega20VCN1.0Raven, Picasso rowspan=4 rowspan=4 rowspan=10 VCN 2.0Navi10, Navi12, Navi14, Renoir, Cézanne8K rowspan=5 VCN 2.5ArcturusVCN 2.6AldebaranVCN 3.0Navi24 Navi21, Navi22, Navi23 rowspan=5 rowspan=5 rowspan=5 VCN 3.1.0Van Gogh VCN 3.1.1Rembrandt rowspan=3 rowspan=3 rowspan=3 rowspan=3 8K10-bit VCN 3.1.2Raphael VCN 4.0Navi 3x ImplementaçãoDecodificaçãoDecodificaçãoDecodificaçãoDecodificaçãoDecodificaçãoCodificaçãoDecodificaçãoCodificaçãoDecodificaçãoDecodificaçãoCodificaçãoDecodificaçãoResolução máximaColor depthInterpolação de quadrosMPEG-1H.262(MPEG-2)H.263(MPEG-4 ASP)VC-1/WMV 9H.264(MPEG-4 AVC)H.265(HEVC)VP9AV1JPEGAMD Fluid Motion
Disponibilidade A maioria das placas de vídeo da série Radeon HD 2000 implementa o UVD para decodificação de hardware de conteúdo de alta definição 1080p. No entanto, as placas de vídeo da série Radeon HD 2900 não incluem o UVD (embora ele seja capaz de fornecer funcionalidade parcial por meio do uso de seus shaders), que foi incorretamente declarado como presente nas páginas de produtos e caixas de embalagem dos produtos dos parceiros complementares antes do lançamento da Radeon HD 2900 XT. ou declarando que o cartão possui ATI Avivo HD ou explicitamente UVD, da qual apenas a declaração anterior da ATI Avivo HD está correta. A exclusão da UVD também foi confirmada pelos responsáveis da AMD.
O UVD2 é implementado nas GPUs das séries Radeon RV7x0 e R7x0. Isso também inclui a série RS7x0 usada nas placas-mãe IGP da série de chipsets AMD 700.
Visão geral dos recursos APUs
GPUs
Suporte ao sistema operacional O núcleo SIP UVD precisa ser suportado pelo driver de dispositivo, que fornece uma ou mais interfaces, como VDPAU, VAAPI ou DXVA. Uma dessas interfaces é então usada pelo software do usuário final, por exemplo, o VLC media player ou o GStreamer, para acessar o hardware UVD e utilizá-lo.
O AMD Catalyst, driver de dispositivo gráfico proprietário da AMD que suporta UVD, está disponível para Microsoft Windows e algumas distribuições Linux. Além disso, um driver de dispositivo gratuito está disponível, que também suporta o hardware UVD.
Linux direita|miniaturadaimagem|O suporte Linux para o UVD ASIC é fornecido pelo driver de dispositivo do kernel Linux . O suporte para UVD está disponível no driver proprietário Catalyst versão 8.10 da AMD desde outubro de 2008 por meio do X-Video Motion Compensation (XvMC) ou do X-Video Bitstream Acceleration (XvBA). Desde abril de 2013, o UVD é suportado pelo driver de dispositivo "radeon" gratuito e de código aberto por meio da API de decodificação e apresentação de vídeo para Unix (VDPAU). Uma implementação do VDPAU está disponível como rastreador de estado Gallium3D no Mesa 3D.
Em 28 de junho de 2014, a Phoronix publicou alguns benchmarks sobre o uso do Unified Video Decoder por meio da interface VDPAU executando o MPlayer no Ubuntu 14.04 com a versão 10.3-testing do Mesa 3D.
Windows O Microsoft Windows oferece suporte ao UVD desde seu lançamento. Atualmente, o UVD suporta apenas a especificação da API DXVA (DirectX Video Acceleration) para as plataformas Microsoft Windows e Xbox 360 para permitir que a decodificação de vídeo seja acelerada por hardware. Portanto, o software do reprodutor de mídia também precisa suportar DXVA para poder utilizar a aceleração de hardware UVD.
Outros O suporte para execução de firmware personalizado baseado em FreeRTOS no núcleo UVD da Radeon HD 2400 (com base em uma CPU Xtensa), interligado a uma placa STM32 baseada em ARM via I²C, foi tentado em janeiro de 2012.
Predecessores e Sucessores Predecessores O Video Shader e o ATI Avivo são tecnologias semelhantes incorporadas em produtos ATI anteriores.
Sucessor
O UVD foi sucedido pelo AMD Video Core Next na série de APUs Raven Ridge lançada em outubro de 2017. O VCN combina codificação (VCE) e decodificação (UVD).
Ver também Tecnologias de hardware de vídeo Nvidia Compensação de movimento da GeForce 256
AMD Video Core Next - AMD Video Coding Engine - AMD
Intel Intel Quick Sync Video - Intel
Outros Comparação de unidades de processamento gráfico AMD
Ligações externas Resumo da tecnologia ATI Avivo HD, julho de 2008 AMD Video Technologies, outubro de 2010 Comparação de slides de apresentação entre decodificação de CPU, ATI Avivo HD e PureVideo HD e comparação de decodificação de vídeo VC-1 e H.264 Codecs de mídia AMD (download opcional)
Categoria:ATI