Video decoding hardware generation for each chipset:
VPE |
VP1 |
VP2 |
VP3/VP4/VP5 |
||
NV04 |
|||||
NV05 |
|||||
VPE |
VP1 |
VP2 |
VP3/VP4/VP5 |
||
NV10 |
|||||
NV11 |
|||||
NV15 |
|||||
NV17 |
YES (v1) |
||||
NV18 |
YES (v1) |
||||
NV1A |
|||||
NV1F |
YES (v1) |
||||
VPE |
VP1 |
VP2 |
VP3/VP4/VP5 |
||
NV20 |
|||||
NV25 |
|||||
NV28 |
|||||
NV2A |
|||||
VPE |
VP1 |
VP2 |
VP3/VP4/VP5 |
||
NV30 |
YES (v1) |
||||
NV31 |
YES (v2.0) |
||||
NV34 |
YES (v2.0) |
||||
NV35 |
YES (v1) |
||||
NV36 |
YES (v2.0) |
||||
VPE |
VP1 |
VP2 |
VP3/VP4/VP5 |
||
NV40 |
YES (v2.1) |
||||
NV41 |
YES (v2.1) |
YES (VP1.0) |
|||
NV42 |
YES (v2.1) |
YES (VP1.0) |
|||
NV43 |
YES (v2.1) |
YES (VP1.0) |
|||
NV44 |
YES (v2.2) |
YES (VP1.1) |
|||
NV46 |
YES (v2.2) |
YES (VP1.1) |
|||
NV47 |
YES (v2.2) |
YES (VP1.1) |
|||
NV49 |
YES (v2.2) |
YES (VP1.1) |
|||
NV4A |
YES (v2.2) |
YES (VP1.1) |
|||
NV4B |
YES (v2.2) |
YES (VP1.1) |
|||
NV4C |
YES (v2.2) |
YES (VP1.1) |
|||
NV4E |
YES (v2.2) |
YES (VP1.1) |
|||
NV63 |
|||||
NV67 |
? |
? |
|||
NV68 |
? |
? |
|||
VPE |
VP1 |
VP2 |
VP3/VP4/VP5 |
||
NV50 |
YES (v2.3) |
YES (VP1.2) |
|||
NV84 |
YES (v2.3) |
YES |
|||
NV86 |
YES (v2.3) |
YES |
|||
NV92 |
YES (v2.3) |
YES |
|||
NV94 |
YES (v2.3) |
YES |
|||
NV96 |
YES (v2.3) |
YES |
|||
NV98 |
YES (VP3) |
||||
NVA0 |
YES (v2.3) |
YES |
|||
NVA3 |
YES (VP4.0) |
||||
NVA5 |
YES (VP4.0) |
||||
NVA8 |
YES (VP4.0) |
||||
NVAA |
YES (VP3) |
||||
NVAC |
YES (VP3) |
||||
NVAF |
YES (VP4.1) |
||||
VPE |
VP1 |
VP2 |
VP3/VP4/VP5 |
||
NVC0 |
YES (VP4.2) |
||||
NVC1 |
YES (VP4.2) |
||||
NVC3 |
YES (VP4.2) |
||||
NVC4 |
YES (VP4.2) |
||||
NVC8 |
YES (VP4.2) |
||||
NVCE |
YES (VP4.2) |
||||
NVCF |
YES (VP4.2) |
||||
NVD9 |
YES (VP5) |
||||
VPE |
VP1 |
VP2 |
VP3/VP4/VP5 |
||
NVE4 |
YES (VP5) |
Features supported by each hardware generation:
|
VPE v1 |
VPE v2.x |
VP1 |
VP2 |
VP3 |
VP4 |
VP5 |
|
MPEG1 |
mocomp [custom format], mocomp+IDCT [custom format] |
DXVA mocomp [DXVA format], mocomp+IDCT [DXVA format] |
? |
mocomp+IDCT [DXVA format] |
full bitstream decoding |
full bitstream decoding |
full bitstream decoding |
|
MPEG2 Main Profile |
mocomp [custom format], mocomp+IDCT [custom format], mocomp+IDCT+IQ [custom format] |
DXVA mocomp [DXVA format], mocomp+IDCT [DXVA format] |
? |
mocomp+IDCT [DXVA format] |
full bitstream decoding |
full bitstream decoding |
full bitstream decoding |
|
H.264 High Profile |
none |
none |
mocomp+? |
full bitstream decoding |
full bitstream decoding |
full bitstream decoding |
full bitstream decoding |
|
VC-1 (all profiles) |
none |
none |
mocomp+? |
mocomp+IDCT+IQ |
full bitstream decoding |
full bitstream decoding |
full bitstream decoding |
|
MPEG 4 Advanced Simple Profile without GMC |
none |
none |
? |
? |
? |
full bitstream decoding |
full bitstream decoding |
The minor versions signify hardware changes not introducing any actual new functionality, like redesigning the memory access interface to match the rest of the GPU, etc.
And now status:
VPE v1: already REd, not yet supported
VPE v2: REd and supported by nouveau, though not on all possible cards yet
VP1: early RE work in progress - watch it unfold on the RE blog. Microcode in an unknown ISA involved.
VP2 H.264 bitstream engine: advanced RE work in progress, about 3/4 done. Microcode in 2 different ISAs involved.
VP2 video processing engine: very early RE work in progress, heaps and heaps of work remaining to do. Microcode in 3 different ISAs is involved, 2 of them totally unknown
VP3: RE work in progress, about half done. Microcode in 3 different ISAs involved, 1 of them semi-unknown
VP4: is just VP3 with MPEG4 support, same status
VP5: RE work not started. Seems to be the same design as VP3/VP4, but with the major video processor part replaced by something new