NVIDIA PureVideo
[image]
NVIDIA의 GPU 내부에 탑재된 동영상 하드웨어 '''디코딩'''을 위한 고정 하드웨어 블록 또는 SIP 코어. 한글 발음은 '엔비디아 퓨어비디오'. 자세한 공식 설명은 NVIDIA Video Codec SDK 페이지 참조.
참고로 NVIDIA의 하드웨어 인코딩을 위한 고정 하드웨어 블록은 2012년에 등장한 NVIDIA NVENC가 전담한다.
현대적인 GUI 기반의 시초인 Windows 95 출시 이후 가정용 PC가 본격적으로 보급[1] 되면서 한동안 MPEG-1 기반의 VCD, 혹은 VCD 화질 수준의 동영상으로 널리 쓰이고 있었다.[2] 그러다가 1995년 MPEG-2 규격과 1996년 DVD 매체가 발표된 이후 당시 DVD 동영상의 압도적인 화질로 주목받아 미디어 플레이어 뿐만 아니라 PC에서도 고화질 동영상에 대한 수요가 점점 늘어나기 시작했는데 그래픽카드 제조사들은 이러한 수요를 반영하여 그래픽카드가 전통적인 게이밍 성능에 그치지 않고 동영상 가속 기능까지 덤으로 갖춘 칩셋으로 거듭나게 되었다. 그래픽카드를 사치품으로 취급했을 시절에는 동영상 재생을 인텔 i486 CPU의 성능까지는 그래픽카드가 아닌 동영상카드[3] 의 도움을 받아 재생했었고, 1997년 초 펜티엄 MMX 시절부터는 VCD를 그냥 CPU만으로 가뿐히 돌릴 수 있었으며, 펜티엄 4 시절부터는 MPEG-2 기반의 DVD도 CPU로만 돌릴 수 있는 등의 발전이 있었지만 HD급 이상의 고사양 동영상을 여유롭게 커버할 수 없어서 동영상을 가속해줄 보조 장치의 필요성이 커졌기 때문이다.
어쨌든 그래픽카드가 동영상 가속을 도와줄 적임자같은 존재로 지목되면서 그래픽카드의 부가 기능으로써 해당 기술이 탑재되기에 이르렀지만, 초기에는 제대로 활용하기 위해 제약이 많았고 사용법이 어려워서 컴퓨터를 잘 다룰 줄 모르는 일반 사용자들에겐 낯선 기능으로 보이거나 아예 그런게 있는 줄도 모르는 경우가 대다수였다. 훗날에는 이러한 불편함을 조금씩 개선시켜 마이크로소프트의 윈도우 미디어 플레이어와 윈도우 미디어 센터와 함께 동작하도록 설계되었고 인터넷 문화가 익숙해진 요즘에는 사용법을 찾아서 자신의 PC 환경에 맞게 설정해보는 일반인들이 점점 많아지고 있으며, 최근에 출시된 그래픽카드와 드라이버, 그리고 운영체제가 자동으로 셋팅해주어 사용법을 잘 몰라도 고사양 동영상을 쾌적하게 돌릴 수 있는 시대가 되었다.[4] 노트북/랩톱 컴퓨터에서도 동영상 하드웨어 가속을 사용할 수 있지만 시기적으로 데스크탑 PC보다 나중에 적용된 경우가 더 많다.
Windows에서는 MS가 개발했던 DirectShow 혹은 Media Foundation[5] 에 있는 DXVA를 사용하고 리눅스와 유닉스 계열에서는 2008년 11월에 발표한 VDPAU라는 API를 사용한다.
현재, 대부분의 서드파티 미디어 플레이어가 퓨어비디오를 지원하고 있고, Windows 운영체제 자체적으로는 Windows Vista에 기본 포함된 윈도우 미디어 플레이어 11부터 내장 MPEG-2 디코더와 엔비디아의 퓨어비디오 기술을 지원하고 있으며, Windows 7과 함께 나온 윈도우 미디어 플레이어 12부터는 내장 H.264, VC-1 디코더까지 추가되어 퓨어비디오를 통한 H.264 하드웨어 가속이 가능해졌다. Windows 10부터는 H.265 디코더를 정식으로 지원하여 해당 코덱의 하드웨어 가속이 가능해졌다.
일반적으로 라인업하는 제품이 세분화할 수록 특성이 두드러지는데 하이엔드 혹은 플래그쉽 칩셋을 먼저 출시하고 그 이후에 중급형, 저가형, 로우엔드를 순차적으로 출시하는 반면, 동영상 하드웨어 가속 기술은 대체로 칩셋의 기본 성능과는 관계없이 먼저 나온 하이엔드보다 나중에 나온 저가형이 더 앞선 버전으로 탑재되는 경우가 많다.
다만, 주의할 점은 가장 늦게 나오는 로우엔드 제품이 해당 제품군 중에 동영상 가속 성능이 가장 좋다고 단정지을 수 없다는 것인데 DXVA를 이용한 방식이 아닌 지포스 8 시리즈부터 적용된 CUDA 코어를 이용한 방식이 그 대표적인 예다. 그 모드로 하드웨어 가속할 경우, CUDA 코어가 적은 저가형 그래픽카드로는 고사양 동영상을 가속하는데 먼저 나온 고성능 그래픽카드보다 불리할 수 있다는 것.
물론 제품군의 평균 성능이 상향되면서 이런 특성이 옛말이 되는건 시간문제이긴 하다. H.264 HD 동영상이 초창기에는 좌절 영상 취급이었다가 2005년 이후 듀얼코어 CPU가 등장하고 나서야 겨우 재생될 수 있었고, 현재는 최신형 셀러론 CPU에서도 쌩쌩 돌릴 수 있듯이 지금의 고사양 규격인 H.265 UHD HDR 동영상도 비슷한 과정을 밟게될거라는 점.[6]
하드웨어 디코딩이라는 점 때문에 NVIDIA NVENC와 혼동되기도 하는데, NVDEC는 NVCUVID(NVIDIA CUDA Video Decoder)의 후신에 가깝다.
하드웨어 디코딩시 PureVideo만으로도 충분할 경우 PureVideo한테 완전히 떠넘길 수 있지만, 감당할 수 없을 경우 3D 게임 그래픽에서 셰이딩으로 활용하는 CUDA 코어도 부분적으로 동작해서 어떻게든 디코딩할 수 있도록 해주는 것이 NVDEC이다. PureVideo와 마찬가지로 GPU에 따라 PureVideo SIP 코어와 CUDA 코어가 함께 동작 가능한 코덱의 종류가 다르다.
이전에 사용된 NVCUVID는 2018년 5월에 발표된 CUDA Toolkit 9.2 버전부터 지원 중단되었다.
3D 그래픽만큼 주목받지 못 했지만 그래픽카드가 동영상 재생에도 관여한다는 점 자체는 NVIDIA로서는 동영상 하드웨어 가속 기술 역사의 첫 단추였다고 볼 수 있다. 문제는 동영상의 속성을 많이 가려 돌리는데 있어서 제약이 심했으며, 그에 따른 호환성 문제는 말 할 것도 없을 정도였다. 호환성 뿐만 아니라 색감을 비롯한 2D 그래픽의 화질은 경쟁 모델인 ATi의 레이지 시리즈만큼 좋지 않아 훗날 화질 보정에 관련된 각종 기능들이 대거 추가된 지포스 4 MX 시리즈 및 FX 시리즈 이전까지는 저평가 받을 수밖에 없었다.
이후에 등장한 RIVA TNT, TNT2 시리즈, 지포스 256도 이러한 방식의 디코딩을 지원했다.
H.264 High Profile을 지원하기 시작했지만, 본격적인 블루레이급 동영상 재생이라고 해도 그나마 중저가형인 지포스 8600GTS/GT/GS, 8500GT, 8400GS로는 제대로 돌리기 어려운 Profile이었고 당시 궁극의 사양이었던 1080p 60fps 동영상까진 제대로 가속하지 못 한다. 나중에 출시된 G92 기반의 지포스 8800GTS/GT/GS부터 CUDA 코어의 버프를 받아 1080p 60fps 동영상까지 재생할 수 있지만 어디까지나 H.264 Baseline Profile 한정으로, 이보다 더 높은 Main Profile, 고사양을 요구하는 High Profile일 경우 720p 60fps 또는 1080p 30fps의 동영상마저도 제대로 재생하기 어려워진다.
그 뿐만 아니라 하드웨어 완벽 디코딩이라는게 H.264에 몰빵해서 그런지 MPEG-1, MPEG-2 디코딩 효율이 H.264에 비해 좀 떨어지는 편이고 VC-1도 기능 지원이 여전히 부실해 효율이 역시 좋지 않다. 하나씩 따져보면 AVIVO HD(지금의 UVD)와 비교 당할 정도로 단점 투성이로 보이지만 그래도 지포스 6, 7 시리즈의 1세대 퓨어비디오에 비하면 효율 향상폭이 매우 커서 현대 미디어 가속기로써는 의의있는 전용 디코더라고 볼 수 있다.
Windows Vista부터는 DXVA2를 지원하기 시작하면서 전용 렌더러인 EVR를 적용할 수 있게 되었지만[10] 초기라서 지원 가능한 프로필은 많지 않아 한동안은 프로필이 많이 축적된 기존의 DXVA를 사용하라고 권장할 정도.[11] 덤으로 이때부터 Windows에서 어도비 플래시 플레이어를 지원하기 시작했다.
요약하자면 3세대 퓨어비디오 = 2세대 퓨어비디오의 MPEG-1, MPEG-2, WMV9, VC-1 개선판.
3D 열풍이 막 들어올 시점이라 3D 블루레이 매체에 담겨진 3D 비디오 기술인 MVC(Multiview Video Coding)를 지원하기 시작했다. MVC 하드웨어 가속이 기본적으로 OS 독립성(크로스 플랫폼)을 지니고 있지만 MS Windows의 DXVA와 NVIDIA의 CUDA API를 지원하는 반면, 리눅스 계열과 유닉스 계열에 해당하는 NVIDIA의 VDPAU API를 지원하지 않는다는 단점이 있었다.
H.264 대중화에 접어든 시점에 MPEG-4 Part.2 규격인 DivX, Xvid 코덱이 뒤늦게 추가 지원되었으나 가속 효율이 좋지 않아 효용성이 없다시피 하는 수준.
드라이버와 코덱 설정을 통해 4032x4080 해상도까지 돌릴 수 있고 DisplayPort 1.2을 지원하는 칩셋 한정으로 4K UHD 해상도의 디스플레이 출력까지 가능하다. 케플러 아키텍처 기반의 칩셋[14] 부터는 CUDA 코어를 이용하는 H.264용 인코딩 엔진인 NVENC를 탑재하여 보다 빠른 시간의 인코딩이 가능해졌지만 CPU를 이용한 소프트웨어 인코딩에 비해 영상 품질이 떨어지는게 단점.
드라이버와 코덱 설정을 통해 4096x4096 해상도까지 돌릴 수 있고 DisplayPort 1.2 또는 HDMI 2.0을 지원하는 칩셋 한정으로 4K DCI의 디스플레이 출력까지 가능하다.
유튜브 AAC 음질 논란을 생각하면, 유튜브 음질에도 도움이 될 수 있다. (특히 사양이 낮거나 4K, 8K 영상의 경우 VP9 하드웨어 가속이 안 되면 음질은 좋은데 '''끊겨서''' WebM을 포기할 수 밖에 없는 상황이 많다.)
1. 개요
NVIDIA의 GPU 내부에 탑재된 동영상 하드웨어 '''디코딩'''을 위한 고정 하드웨어 블록 또는 SIP 코어. 한글 발음은 '엔비디아 퓨어비디오'. 자세한 공식 설명은 NVIDIA Video Codec SDK 페이지 참조.
참고로 NVIDIA의 하드웨어 인코딩을 위한 고정 하드웨어 블록은 2012년에 등장한 NVIDIA NVENC가 전담한다.
2. 배경
현대적인 GUI 기반의 시초인 Windows 95 출시 이후 가정용 PC가 본격적으로 보급[1] 되면서 한동안 MPEG-1 기반의 VCD, 혹은 VCD 화질 수준의 동영상으로 널리 쓰이고 있었다.[2] 그러다가 1995년 MPEG-2 규격과 1996년 DVD 매체가 발표된 이후 당시 DVD 동영상의 압도적인 화질로 주목받아 미디어 플레이어 뿐만 아니라 PC에서도 고화질 동영상에 대한 수요가 점점 늘어나기 시작했는데 그래픽카드 제조사들은 이러한 수요를 반영하여 그래픽카드가 전통적인 게이밍 성능에 그치지 않고 동영상 가속 기능까지 덤으로 갖춘 칩셋으로 거듭나게 되었다. 그래픽카드를 사치품으로 취급했을 시절에는 동영상 재생을 인텔 i486 CPU의 성능까지는 그래픽카드가 아닌 동영상카드[3] 의 도움을 받아 재생했었고, 1997년 초 펜티엄 MMX 시절부터는 VCD를 그냥 CPU만으로 가뿐히 돌릴 수 있었으며, 펜티엄 4 시절부터는 MPEG-2 기반의 DVD도 CPU로만 돌릴 수 있는 등의 발전이 있었지만 HD급 이상의 고사양 동영상을 여유롭게 커버할 수 없어서 동영상을 가속해줄 보조 장치의 필요성이 커졌기 때문이다.
어쨌든 그래픽카드가 동영상 가속을 도와줄 적임자같은 존재로 지목되면서 그래픽카드의 부가 기능으로써 해당 기술이 탑재되기에 이르렀지만, 초기에는 제대로 활용하기 위해 제약이 많았고 사용법이 어려워서 컴퓨터를 잘 다룰 줄 모르는 일반 사용자들에겐 낯선 기능으로 보이거나 아예 그런게 있는 줄도 모르는 경우가 대다수였다. 훗날에는 이러한 불편함을 조금씩 개선시켜 마이크로소프트의 윈도우 미디어 플레이어와 윈도우 미디어 센터와 함께 동작하도록 설계되었고 인터넷 문화가 익숙해진 요즘에는 사용법을 찾아서 자신의 PC 환경에 맞게 설정해보는 일반인들이 점점 많아지고 있으며, 최근에 출시된 그래픽카드와 드라이버, 그리고 운영체제가 자동으로 셋팅해주어 사용법을 잘 몰라도 고사양 동영상을 쾌적하게 돌릴 수 있는 시대가 되었다.[4] 노트북/랩톱 컴퓨터에서도 동영상 하드웨어 가속을 사용할 수 있지만 시기적으로 데스크탑 PC보다 나중에 적용된 경우가 더 많다.
Windows에서는 MS가 개발했던 DirectShow 혹은 Media Foundation[5] 에 있는 DXVA를 사용하고 리눅스와 유닉스 계열에서는 2008년 11월에 발표한 VDPAU라는 API를 사용한다.
현재, 대부분의 서드파티 미디어 플레이어가 퓨어비디오를 지원하고 있고, Windows 운영체제 자체적으로는 Windows Vista에 기본 포함된 윈도우 미디어 플레이어 11부터 내장 MPEG-2 디코더와 엔비디아의 퓨어비디오 기술을 지원하고 있으며, Windows 7과 함께 나온 윈도우 미디어 플레이어 12부터는 내장 H.264, VC-1 디코더까지 추가되어 퓨어비디오를 통한 H.264 하드웨어 가속이 가능해졌다. Windows 10부터는 H.265 디코더를 정식으로 지원하여 해당 코덱의 하드웨어 가속이 가능해졌다.
3. 게이밍 성능과의 관계
일반적으로 라인업하는 제품이 세분화할 수록 특성이 두드러지는데 하이엔드 혹은 플래그쉽 칩셋을 먼저 출시하고 그 이후에 중급형, 저가형, 로우엔드를 순차적으로 출시하는 반면, 동영상 하드웨어 가속 기술은 대체로 칩셋의 기본 성능과는 관계없이 먼저 나온 하이엔드보다 나중에 나온 저가형이 더 앞선 버전으로 탑재되는 경우가 많다.
다만, 주의할 점은 가장 늦게 나오는 로우엔드 제품이 해당 제품군 중에 동영상 가속 성능이 가장 좋다고 단정지을 수 없다는 것인데 DXVA를 이용한 방식이 아닌 지포스 8 시리즈부터 적용된 CUDA 코어를 이용한 방식이 그 대표적인 예다. 그 모드로 하드웨어 가속할 경우, CUDA 코어가 적은 저가형 그래픽카드로는 고사양 동영상을 가속하는데 먼저 나온 고성능 그래픽카드보다 불리할 수 있다는 것.
물론 제품군의 평균 성능이 상향되면서 이런 특성이 옛말이 되는건 시간문제이긴 하다. H.264 HD 동영상이 초창기에는 좌절 영상 취급이었다가 2005년 이후 듀얼코어 CPU가 등장하고 나서야 겨우 재생될 수 있었고, 현재는 최신형 셀러론 CPU에서도 쌩쌩 돌릴 수 있듯이 지금의 고사양 규격인 H.265 UHD HDR 동영상도 비슷한 과정을 밟게될거라는 점.[6]
4. NVDEC와의 차이점
하드웨어 디코딩이라는 점 때문에 NVIDIA NVENC와 혼동되기도 하는데, NVDEC는 NVCUVID(NVIDIA CUDA Video Decoder)의 후신에 가깝다.
하드웨어 디코딩시 PureVideo만으로도 충분할 경우 PureVideo한테 완전히 떠넘길 수 있지만, 감당할 수 없을 경우 3D 게임 그래픽에서 셰이딩으로 활용하는 CUDA 코어도 부분적으로 동작해서 어떻게든 디코딩할 수 있도록 해주는 것이 NVDEC이다. PureVideo와 마찬가지로 GPU에 따라 PureVideo SIP 코어와 CUDA 코어가 함께 동작 가능한 코덱의 종류가 다르다.
이전에 사용된 NVCUVID는 2018년 5월에 발표된 CUDA Toolkit 9.2 버전부터 지원 중단되었다.
5. 초기 (1997~2002년)
5.1. H/W Motion Compensation
- 지원 GPU
- NV3 마이크로아키텍처
- NV3
- NV4 마이크로아키텍처
- NV4, NV5, NV6
- NV10(Celsius) 마이크로아키텍처
- NV10
- NV3 마이크로아키텍처
일종의 동영상 보정 기능이었던 Motion Compensation을 그래픽카드가 관여한다는 개념은 당시로써는 엄청난 발상이었다. 당시에 사용된 코덱이 저사양은 MPEG-1, DVD급 사양은 MPEG-2였는데 별도의 가속 카드를 따로 구해서 장착하지 않는 한 CPU가 전담해야 했다. MPEG-2 기반 동영상을 돌리기엔 버거운 수준이라 해당 기능을 그래픽카드로 옮겨서 분담해주는 역할이 필요했는데 이를 처음 지원한 NVIDIA 그래픽카드가 1997년에 출시된 RIVA 128부터였다.'''미디어 하드웨어 디코더의 태동'''
3D 그래픽만큼 주목받지 못 했지만 그래픽카드가 동영상 재생에도 관여한다는 점 자체는 NVIDIA로서는 동영상 하드웨어 가속 기술 역사의 첫 단추였다고 볼 수 있다. 문제는 동영상의 속성을 많이 가려 돌리는데 있어서 제약이 심했으며, 그에 따른 호환성 문제는 말 할 것도 없을 정도였다. 호환성 뿐만 아니라 색감을 비롯한 2D 그래픽의 화질은 경쟁 모델인 ATi의 레이지 시리즈만큼 좋지 않아 훗날 화질 보정에 관련된 각종 기능들이 대거 추가된 지포스 4 MX 시리즈 및 FX 시리즈 이전까지는 저평가 받을 수밖에 없었다.
이후에 등장한 RIVA TNT, TNT2 시리즈, 지포스 256도 이러한 방식의 디코딩을 지원했다.
5.2. HDVP
- 지원 GPU
- NV10(Celsius) 아키텍처
- NV11, NV15, NV16
- NV20(Kelvin) 아키텍처
- NV20, NV25, NV28
- NV10(Celsius) 아키텍처
2000년 4월에 등장한 미디어 디코딩 기술. High-Definition Video Processor(고화질 비디오 프로세서)의 약자로 이때부터 GPU의 구조가 3D 그래픽 엔진, 디스플레이 프로세서(DP), 비디오 프로세서(VP) 3가지 구조로 정립되었다. 아직까진 보정 기능 위주이지만 현재까지도 사용되고 있는 디인터레이스 기능이 추가되었으며, 지포스 256에 도입된 하드웨어 Motion Compensation이 개선되었다.'''미디어 하드웨어 디코더의 구조적 정립'''
6. VPE (2002~2004년)
6.1. 1세대
- 지원 GPU
- NV10(Celsius) 아키텍처
- NV17, NV18
- NV30(Rankine) 아키텍처
- NV30
- NV10(Celsius) 아키텍처
6.2. 2세대
- 지원 GPU
- NV30(Rankine) 아키텍처
- NV31, NV34, NV35, NV38
- NV30(Rankine) 아키텍처
6.3. 3세대
- 지원 GPU
- NV30(Rankine) 아키텍처
- NV36
- NV40(Curie) 아키텍처
- NV40, NV41, NV42, NV45
- NV30(Rankine) 아키텍처
7. PureVideo (2004년~현재)
7.1. 1세대
- NVIDIA VDPAU Feature Set 미지원
- 지원 GPU
- NV40(Curie) 아키텍처
- NV43, NV44, G70, G71, G72, G73
- Tesla 아키텍처
- G80
- NV40(Curie) 아키텍처
7.2. 2세대
- NVIDIA VDPAU Feature Set A
- 지원 GPU
- G80(Tesla) 마이크로아키텍처
- G84, G86, G92, G94, G96, G200
- G80(Tesla) 마이크로아키텍처
2007년 4월에 등장한 2세대 퓨어비디오. GPU에서는 G80~92 기반이 혁신이었다면 비디오 프로세서는 이것이라 할 정도. 비교적 단순한 구조였던 비디오 프로세서가 '''VP''', '''BSP'''[7] , '''AES128'''[8] 엔진으로 세분화하면서 3D 그래픽 렌더링과 별도로 처리하게끔 분리되었으며, 동영상을 하드웨어 가속하는 동안 3D 성능의 저하가 나타나지 않도록 제어할 수 있게 되었다. 한마디로 동영상 재생과 다른 작업들과의 멀티태스킹이 가능해졌다는 점. 이러한 특성 덕분에 GPU + CPU 분담 형태로 CPU의 도움이 여전히 많이 필요했던 반쪽짜리 하드웨어 디코딩이 비로소 GPU 전담인 완벽한 하드웨어 디코딩 구조를 갖추기 시작하면서 어찌보면 진정한 퓨어비디오는 이때부터라고 해도 과언이 아니었다.[9] 결과적으로 기능은 물론 가속 효율이 엄청나게 향상되어서 싱글코어인 펜티엄 4 이하의 저사양 CPU도 해당 그래픽카드만 장착해서 설정하면 H.264 동영상을 거뜬히 돌릴 수 있는게 가장 큰 강점.'''현세대 미디어 하드웨어 디코더의 시작'''
H.264 High Profile을 지원하기 시작했지만, 본격적인 블루레이급 동영상 재생이라고 해도 그나마 중저가형인 지포스 8600GTS/GT/GS, 8500GT, 8400GS로는 제대로 돌리기 어려운 Profile이었고 당시 궁극의 사양이었던 1080p 60fps 동영상까진 제대로 가속하지 못 한다. 나중에 출시된 G92 기반의 지포스 8800GTS/GT/GS부터 CUDA 코어의 버프를 받아 1080p 60fps 동영상까지 재생할 수 있지만 어디까지나 H.264 Baseline Profile 한정으로, 이보다 더 높은 Main Profile, 고사양을 요구하는 High Profile일 경우 720p 60fps 또는 1080p 30fps의 동영상마저도 제대로 재생하기 어려워진다.
그 뿐만 아니라 하드웨어 완벽 디코딩이라는게 H.264에 몰빵해서 그런지 MPEG-1, MPEG-2 디코딩 효율이 H.264에 비해 좀 떨어지는 편이고 VC-1도 기능 지원이 여전히 부실해 효율이 역시 좋지 않다. 하나씩 따져보면 AVIVO HD(지금의 UVD)와 비교 당할 정도로 단점 투성이로 보이지만 그래도 지포스 6, 7 시리즈의 1세대 퓨어비디오에 비하면 효율 향상폭이 매우 커서 현대 미디어 가속기로써는 의의있는 전용 디코더라고 볼 수 있다.
Windows Vista부터는 DXVA2를 지원하기 시작하면서 전용 렌더러인 EVR를 적용할 수 있게 되었지만[10] 초기라서 지원 가능한 프로필은 많지 않아 한동안은 프로필이 많이 축적된 기존의 DXVA를 사용하라고 권장할 정도.[11] 덤으로 이때부터 Windows에서 어도비 플래시 플레이어를 지원하기 시작했다.
7.3. 3세대
- NVIDIA VDPAU Feature Set B
- 지원 GPU
- G80(Tesla) 마이크로아키텍처
- G98
- G80(Tesla) 마이크로아키텍처
요약하자면 3세대 퓨어비디오 = 2세대 퓨어비디오의 MPEG-1, MPEG-2, WMV9, VC-1 개선판.
7.4. 4세대
- NVIDIA VDPAU Feature Set C
- 지원 GPU
- G80(Tesla) 마이크로아키텍처
- GT215, GT216, GT218
- Fermi 마이크로아키텍처
- GF100, GF104, GF106, GF108, GF110, GF114, GF116, GF117
- G80(Tesla) 마이크로아키텍처
3D 열풍이 막 들어올 시점이라 3D 블루레이 매체에 담겨진 3D 비디오 기술인 MVC(Multiview Video Coding)를 지원하기 시작했다. MVC 하드웨어 가속이 기본적으로 OS 독립성(크로스 플랫폼)을 지니고 있지만 MS Windows의 DXVA와 NVIDIA의 CUDA API를 지원하는 반면, 리눅스 계열과 유닉스 계열에 해당하는 NVIDIA의 VDPAU API를 지원하지 않는다는 단점이 있었다.
H.264 대중화에 접어든 시점에 MPEG-4 Part.2 규격인 DivX, Xvid 코덱이 뒤늦게 추가 지원되었으나 가속 효율이 좋지 않아 효용성이 없다시피 하는 수준.
7.5. 5세대
- NVIDIA VDPAU Feature Set D
- 지원 GPU
- Fermi 마이크로아키텍처
- GF119
- Kepler 마이크로아키텍처
- GK104, GK106, GK107, GK110, GK208
- Fermi 마이크로아키텍처
드라이버와 코덱 설정을 통해 4032x4080 해상도까지 돌릴 수 있고 DisplayPort 1.2을 지원하는 칩셋 한정으로 4K UHD 해상도의 디스플레이 출력까지 가능하다. 케플러 아키텍처 기반의 칩셋[14] 부터는 CUDA 코어를 이용하는 H.264용 인코딩 엔진인 NVENC를 탑재하여 보다 빠른 시간의 인코딩이 가능해졌지만 CPU를 이용한 소프트웨어 인코딩에 비해 영상 품질이 떨어지는게 단점.
7.6. 6세대
- NVIDIA VDPAU Feature Set E
- 지원 GPU
- Maxwell 마이크로아키텍처
- GM107, GM108, GM200, GM204
- Maxwell 마이크로아키텍처
드라이버와 코덱 설정을 통해 4096x4096 해상도까지 돌릴 수 있고 DisplayPort 1.2 또는 HDMI 2.0을 지원하는 칩셋 한정으로 4K DCI의 디스플레이 출력까지 가능하다.
7.7. 7세대
- NVIDIA VDPAU Feature Set F
- 지원 GPU
- Maxwell 마이크로아키텍처
- GM206
- Maxwell 마이크로아키텍처
유튜브 AAC 음질 논란을 생각하면, 유튜브 음질에도 도움이 될 수 있다. (특히 사양이 낮거나 4K, 8K 영상의 경우 VP9 하드웨어 가속이 안 되면 음질은 좋은데 '''끊겨서''' WebM을 포기할 수 밖에 없는 상황이 많다.)
7.8. 8세대
- NVIDIA VDPAU Feature Set G, H
- 지원 GPU
- Pascal 마이크로아키텍처
- GP102, GP104, GP106, GP107, GP108
- Pascal 마이크로아키텍처
7.9. 9세대
- NVIDIA VDPAU Feature Set I
- 지원 GPU
- Volta 마이크로아키텍처
- GV100
- Volta 마이크로아키텍처
7.10. 10세대
- NVIDIA VDPAU Feature Set J
- 지원 GPU
- Turing 마이크로아키텍처
- TU102, TU104, TU106, TU116, TU117
- Turing 마이크로아키텍처
7.11. 11세대
- NVIDIA VDPAU Feature Set K
- 지원 GPU
- Ampere 마이크로아키텍처
- GA102, GA104
- Ampere 마이크로아키텍처
8. 관련 문서
- NVIDIA
- NVIDIA NVENC
- NVIDIA/GPU
- NVIDIA/모바일 GPU
- NVIDIA/워크스테이션 GPU
- NVIDIA Video Encode and Decode GPU Support Matrix
- AMD VCN
- Intel Quick Sync Video
- 동영상
- 미디어 플레이어
[1] 물론 국내에서는 1999년 10월 말 국민PC 이후 폭발적으로 보급되는 바람에 일반인들에겐 PC 보급에 있어서 가장 피부에 와닿는 시기가 되어버렸고, 한글 Windows 3.1의 보급기인 90년대 초중반, 한글 Windows 95의 보급기인 90년대 중후반의 보급률이 상대적으로 많이 더디게 보일 정도였다.[2] 물론, 1997년 초부터 출시된 펜티엄 MMX가 나오기 전까지는 VCD에 사용된 MPEG-1 기반 코덱마저 MPEG-1 가속 확장 카드를 통해서만 원활하게 구동할 수 있었다.[3] 현재 동영상 하드웨어 가속 장치의 외장 카드 형태이자 본래 모습이었다. 그래픽카드, 사운드카드, 네트워크카드, TV수신카드처럼 동영상카드도 일종의 확장 장치 또는 애드온으로서 사용되었다는 뜻.[4] 다만, 2005년 펜티엄 D부터 H.264 기반 720p 30fps 동영상을 CPU만으로 겨우 돌릴 수 있게 되었고 2006년 코어2 듀오 세대(당시 고급형 제품군 한정)부터 CPU만으로 H.264 1080p 30fps 동영상을 겨우 돌릴 수 있을 정도로 CPU의 동영상 재생 성능이 비약적으로 향상되는 바람에 H.265 2160p 60fps같은 고사양 동영상이 아닌 이상 H.264 1080p 30fps 이하의 동영상이라면 필요성이 약해질 수 있다.[5] Windows Vista부터 지원.[6] 현재로서는 CPU를 이용한 인코딩 속도 차이가 H.264보다 수십 배 이상인데다 쾌적하게 재생하려면 하스웰 기준으로 최소한 쿼드코어의 인텔 i5급은 되어야 한다. 4K UHD 해상도까진 i5 CPU로도 커버할 수 있지만 점유율이 매우 높아지고, 60fps까지 고려하면 인텔 i7 이상의 고성능 CPU가 필요하다. 여기에다가 10bit 색심도에 HDR까지 고려하면 IPC와 클럭이 향상된 신형 i7 정도는 되어야 감당할 수 있다. 따라서 CPU만으로 H.265 4K HDR 60fps 동영상을 가볍게 돌리는 날이 올 때까진 전용 하드웨어 디코더에 의존할 수밖에 없다.[7] Bitstream Processor. 이진 공간 분할법이라고 부르며, 그래픽 공간에서 빠르고 정확하게 그리기 위해 고안된 방식 중에 하나다.[8] Advanced Encryption Standard 128. 일종의 표준 암호화 방식으로 128비트 기반의 고급 암호화 표준을 의미한다. AES 자체는 2001년 늦가을에 미국 표준 기술 연구소(NIST)에서 제정된 방식.[9] 그렇다고 CPU의 점유율이 전혀 없는건 아니고 대부분 10% 이하의 점유율을 보여주는 편이다. 당시 기술로는 본격적인 비디오 가속 이전에 반드시 수행해야 하는 절차만큼은 CPU를 전혀 안 쓸 수 없었기 때문이다.[10] Windows XP에서는 .Net Framework 3.0을 설치해야 DXVA2를 사용할 수 있다.[11] 물론 1세대 퓨어비디오를 탑재한 구형 그래픽카드에서 DXVA 모드로 재생했을 때보단 더 효율적이긴 했다.[12] 그래도 이전 세대들의 퓨어비디오보단 훨씬 더 낫다.[13] GPU 코어 클럭이 520MHz인 레퍼런스 모델보다 무려 25% 더 높은 650MHz이다.[14] 단, 어느 정도 성능이 받쳐줘야 한다.