miniatura|En "mode fix complet", tot el càlcul el fa la unitat VCE de funció fixa. Es pot accedir al mode fix complet mitjançant l'API OpenMAX IL. Video Code Engine (VCE, anteriorment s'anomenava Video Coding Engine, Video Compression Engine o Video Codec Engine a la documentació oficial d'AMD) és el circuit integrat específic de l'aplicació de codificació de vídeo d'AMD que implementa el còdec de vídeo H..264/MPEG-4 AVC. Des del 2012 es va integrar a totes les seves GPU i APU excepte Oland.

VCE es va presentar amb la sèrie Radeon HD 7000 el 22 de desembre de 2011. VCE ocupa una quantitat considerable de la superfície de la matriu en el moment de la seva introducció i no s'ha de confondre amb el descodificador de vídeo unificat (UVD) d'AMD.

A partir d'AMD Raven Ridge (publicat el gener de 2018), UVD i VCE van ser succeïts per Video Core Next (VCN). miniatura|El bloc de codificació d'entropia del VCE ASIC també és accessible per separat, permetent el "mode híbrid". En "mode híbrid", la major part del càlcul es fa pel motor 3D de la GPU. Utilitzant l'SDK de programació en paral·lel accelerada d'AMD i els desenvolupadors d'OpenCL, es poden crear codificadors híbrids que emparellin l'estimació de moviment personalitzada, la transformació de cosinus discret invers i la compensació de moviment amb la codificació d'entropia de maquinari per aconseguir una codificació més ràpida que en temps real.

Visió general El maneig de dades de vídeo implica el càlcul d'algoritmes de compressió de dades i possiblement d'algoritmes de processament de vídeo. Com mostren els mètodes de compressió de plantilles, els algorismes de compressió de vídeo amb pèrdues inclouen els passos: estimació de moviment (ME), transformada de cosinus discret (DCT) i codificació d'entropia (EC).

AMD Video Code Engine (VCE) és una implementació de maquinari completa del còdec de vídeo H.264/MPEG-4 AVC. És capaç de lliurar 1080p a 60 fotogrames/s. Com que el seu bloc de codificació d'entropia també és un motor de còdec de vídeo accessible per separat, es pot operar en dos modes: mode fix complet i mode híbrid.

Mitjançant l'ús d'AMD APP SDK, disponible per a Linux i Microsoft Windows, els desenvolupadors poden crear codificadors híbrids que emparellen l'estimació de moviment personalitzada, la transformació de cosinus discret inversa i la compensació de moviment amb la codificació d'entropia del maquinari per aconseguir una codificació més ràpida que en temps real. En el mode híbrid, només s'utilitza el bloc de codificació d'entropia de la unitat VCE, mentre que el càlcul restant es descarrega al motor 3D de la GPU, de manera que la computació escala amb el nombre d'unitats de càlcul disponibles (CU).

Suport del sistema operatiu El nucli SIP de VCE ha de ser compatible amb el controlador del dispositiu. El controlador del dispositiu proporciona una o diverses interfícies, per exemple, OpenMAX IL. Una d'aquestes interfícies és utilitzada pel programari d'usuari final, com GStreamer o HandBrake (HandBrake va rebutjar el suport de VCE el desembre de 2016, però la va afegir el desembre de 2018), per accedir al maquinari VCE i fer-ne ús.

El controlador de dispositiu propietari d'AMD AMD Catalyst està disponible per a diversos sistemes operatius i s'hi ha afegit suport per a VCE. A més, hi ha disponible un controlador de dispositiu gratuït. Aquest controlador també és compatible amb el maquinari VCE.

Linux miniatura|El suport per al VCE ASIC es troba al controlador de dispositiu del nucli Linux amdgpu.

Christian König d'AMD va afegir el suport inicial de VCE el 4 de febrer de 2014 al controlador de radeon gratuït. El rastrejador d'estat Gallium3D per a OpenMAX es va afegir el 24 d'octubre de 2013 a Mesa 3D. El controlador Radeon gratuït i de codi obert es va adaptar per utilitzar OpenMAX amb el suport GStreamer OpenMAX (gst-omx) per exposar el motor de codificació de vídeo VCE. L'empleat d'AMD, Leo Liu, va implementar el suport de nivell h264 al rastrejador d'estat de Mesa 3D.

Windows El programari "MediaShow Espresso Video Transcoding" sembla utilitzar VCE i UVD en la màxima mesura possible.

XSplit Broadcaster admet VCE des de la versió 1.3.

El programari Open Broadcaster (OBS Studio) admet VCE per a la gravació i la transmissió. El programari original d'Open Broadcaster (OBS) requereix una construcció de bifurcació per habilitar VCE.

El programari AMD Radeon admet VCE amb captura de jocs integrada ("Radeon ReLive") i utilitza AMD AMF/VCE a la targeta gràfica APU o Radeon per reduir la caiguda d'FPS quan es captura contingut de joc o vídeo.

Referències

Categoria:Targetes gràfiques