엔비디아 퓨어비디오

엔비디아 **퓨어비디오**(Nvidia PureVideo)는 컴퓨터의 CPU 하드웨어에서 엔비디아의 GPU 하드웨어 시리즈 지포스 6, 지포스 7, 지포스 8, 지포스 9, 지포스 200, 지포스 M 시리즈(지포스 Go), 엔비디아 쿼드로 시리즈로 비디오 디코딩 처리의 짐을 넘기고 비디오 후처리를 하도록 설계된 하드웨어 기능이다. 퓨어비디오는 마이크로소프트의 윈도우 미디어 플레이어와 윈도우 미디어 센터와 함께 동작하도록 설계되어 있다. 엔비디아의 윈도우 XP, 윈도우 비스타, 윈도우 7용 장치 드라이버는 퓨어 비디오 기능을 지원하는 올바른 응용 소프트웨어를 사용하고 엔비디아 드라이버가 자동으로 하드웨어 가속이 엔비디아 디스플레이 어댑터에 사용된다면 퓨어 비디오 기능을 사용할 수 있다.

모든 소프트웨어 형태의 HD DVD/블루레이 플레이어뿐 아니라 대부분의 소프트웨어 DVD 플레이어가 퓨어비디오를 지원한다. 윈도우 비스타 홈 프리미엄과 얼티밋 에디션, 윈도 7 홈 프리미엄, 프로페셔널, 얼티밋 에디션에 포함되어 있는 윈도 미디어 플레이어 버전(내장 MPEG2 디코더 포함)은 엔비디아의 퓨어비디오 기술을 지원한다.

2008년 11월 14일에 엔비디아는 베타 버전의 클로즈드 소스 장치 드라이버와 리눅스, 프리BSD, 솔라리스에 퓨어비디오를 지원하는 VDPAU라 불리는 API를 공개하였다.

## 운영 체제 지원
PureVideo SIP 코어는 장치 드라이버의 지원을 받아야 하며, 이 드라이버는 NVDEC, VDPAU, VAAPI 또는 DXVA와 같은 하나 이상의 인터페이스를 제공한다. 이러한 인터페이스 중 하나는 VLC 미디어 플레이어 또는 GStreamer와 같은 최종 사용자 소프트웨어에서 PureVideo 하드웨어에 접근하고 활용하는 데 사용된다.

엔비디아의 사유 장치 드라이버는 여러 운영 체제에서 사용할 수 있으며 PureVideo 지원이 추가되었다. 또한, 자유 장치 드라이버도 사용할 수 있으며, 이 역시 PureVideo 하드웨어를 지원한다.

### 리눅스
PureVideo 지원은 2008년 10월부터 VDPAU를 통해 엔비디아의 독점 드라이버 버전 180에서 사용할 수 있었다. 2013년 4월부터 누보 역시 PureVideo 하드웨어를 지원하며 VDPAU 및 부분적으로 XvMC를 통해 접근을 제공한다.

### 마이크로소프트 윈도우
마이크로소프트의 윈도우 미디어 플레이어, 윈도우 미디어 센터 및 최신 비디오 플레이어는 PureVideo를 지원한다. 엔비디아는 또한 DirectShow를 사용하는 미디어 플레이어와 함께 사용할 수 있는 PureVideo 디코더 소프트웨어를 판매한다. 듀얼 GPU 시스템은 코덱을 구성하거나 엔비디아 GPU에서 애플리케이션을 실행해야 PureVideo를 활용할 수 있다. LAV, ffdshow 또는 마이크로소프트 미디어 파운데이션 코덱을 사용하는 미디어 플레이어는 PureVideo 기능을 활용할 수 있다.

### OS X
OS X는 엔비디아 하드웨어와 함께 판매되었으므로, 지원이 제공될 가능성이 높다.

## PureVideo HD
PureVideo HD (아래 "이름 혼동" 참조)는 HD DVD 및 블루레이 디스크 재생을 위해 인증된 엔비디아 그래픽 카드를 식별하는 라벨로, PC에서 블루레이/HD DVD 재생 요구 사항을 준수한다:
# 디지털 디스플레이(DVI-D/HDMI)를 위한 종단간 암호화(HDCP)
# H.264 하이 프로파일 L4.1, VC-1 어드밴스드 프로파일 L3, 및 MPEG-2 MP@HL (1080p30) 디코딩 @ 40&nbsp;Mbit/s의 실시간 디코딩
# HD DVD/블루레이 픽처인픽처를 위한 실시간 듀얼 비디오 스트림 디코딩 (기본 비디오 @ 1080p, 보조 비디오 @ 480p)

### 1세대 PureVideo HD
원래 PureVideo 엔진은 지포스 6 시리즈와 함께 도입되었다. 지포스 FX 시리즈의 비디오 엔진(VPE)을 기반으로 한 PureVideo는 MPEG-1/MPEG-2 디코딩 파이프라인을 재사용하고 디인터레이스 및 오버레이 크기 조정의 품질을 개선했다. DirectX 9의 VMR9 렌더러와의 호환성도 개선되었다. MPEG-1/MPEG-2 디코딩 파이프라인과 같은 다른 VPE 기능은 변경되지 않았다. 엔비디아의 보도 자료는 VC-1 및 H.264 비디오에 대한 하드웨어 가속을 언급했지만, 이러한 기능은 출시 시점에 존재하지 않았다.

지포스 6600 출시를 시작으로 PureVideo는 VC-1 및 H.264 비디오에 대한 하드웨어 가속을 추가했지만, MPEG-2 비디오와 나란히 벤치마킹할 때 가속 수준은 제한적이다. VPE(및 PureVideo)는 역이산코사인변환부터 MPEG-2 파이프라인을 오프로드하여 CPU가 초기 런 길이 디코딩, 가변 길이 디코딩 및 역 양자화를 수행하게 한다. 반면 1세대 PureVideo는 제한된 VC-1 지원(움직임 보상 및 후처리)을 제공했다.

1세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 1" 또는 VP1이라고 불린다.

### 2세대 PureVideo HD
G84/G86 GPU(테슬라, 지포스 8400/8500/8600 시리즈로 판매)를 시작으로 엔비디아는 GPU 내부의 H.264 디코딩 블록을 상당히 재설계했다. 2세대 PureVideo HD는 전용 비트스트림 프로세서(BSP)와 향상된 비디오 프로세서를 추가하여 GPU가 H.264 디코딩 파이프라인을 완전히 오프로드할 수 있도록 했다. VC-1 가속도 개선되어 PureVideo HD는 이제 VC-1 디코딩 파이프라인의 백엔드(역이산코사인변환(iDCT) 및 움직임 보상 단계)를 더 많이 오프로드할 수 있게 되었다. 프런트엔드(비트스트림) 파이프라인은 여전히 호스트 CPU에서 디코딩된다.
2세대 PureVideo HD는 대부분의 처리 집약적인 비디오 디코딩이 이제 GPU로 오프로드되어 메인스트림 PC에서 HD DVD 및 블루레이 영화를 재생할 수 있게 했다.

2세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 2" 또는 VP2라고 불린다. 이는 엔비디아 기능 세트 A (또는 "VDPAU 기능 세트 A")에 해당한다.

이는 어도비 플래시 플레이어가 윈도우에서 H.264 비디오 하드웨어 가속을 지원하는 가장 초기 세대이다.

### 3세대 PureVideo HD
PureVideo HD의 이 구현인 VP3는 G98 GPU(지포스 8400GS로 판매)를 통해 VC-1 비트스트림 디코딩을 오프로드하기 위한 엔트로피 하드웨어를 추가했으며, MPEG-2 디코딩 블록에 대한 추가적인 사소한 개선 사항도 포함했다. H.264 디코딩 파이프라인의 기능은 변경되지 않았다. 본질적으로 VP3는 블루레이 디스크 형식의 세 가지 비디오 코덱인 MPEG-2, VC-1, H.264에 대한 완전한 하드웨어 디코딩을 제공한다.

모든 3세대 PureVideo 하드웨어(G98, MCP77, MCP78, MCP79MX, MCP7A)는 다음 가로 해상도에 대한 H.264를 디코딩할 수 없다: 769–784, 849–864, 929–944, 1009–1024, 1793–1808, 1873–1888, 1953–1968 및 2033–2048 픽셀.

3세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 3" 또는 VP3라고 불린다. 이는 엔비디아 기능 세트 B (또는 "VDPAU 기능 세트 B")에 해당한다.

### 4세대 PureVideo HD
PureVideo HD의 이 구현인 VP4는 GT215, GT216, GT218 GPU(각각 지포스 GT 240, 지포스 GT 220, 지포스 210/G210으로 판매)와 함께 MPEG-4 어드밴스드 심플 프로파일(오리지널 DivX 및 Xvid에 의해 구현된 압축 형식) 비트스트림 디코딩을 오프로드하기 위한 하드웨어를 추가했다. H.264 디코더는 더 이상 VP3의 프레임 크기 제한에 영향을 받지 않으며, 3D 블루레이 디스크에 사용되는 H.264 확장인 MVC에 대한 하드웨어 가속을 추가한다. MVC 가속은 OS에 따라 다르다: 마이크로소프트 윈도우에서는 마이크로소프트 DXVA 및 엔비디아 CUDA API를 통해 완벽하게 지원되지만, 엔비디아의 VDPAU API를 통해서는 지원되지 않는다.

4세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 4" 또는 VP4라고 불린다. 이는 엔비디아 기능 세트 C (또는 "VDPAU 기능 세트 C")에 해당한다.

### 5세대 PureVideo HD
지포스 GT 520(페르미)과 함께 도입되었으며 엔비디아 지포스 600/700 시리즈(케플러) GPU에도 포함된 5세대 PureVideo HD는 H.264 디코딩 시 성능이 크게 향상되었다.
또한 2160p 4K 울트라 HD(UHD) 해상도 비디오를 3840 × 2160 픽셀(가로 및 세로 모두에서 1080p 풀 HD 표준의 두 배)로 디코딩할 수 있으며, 드라이버와 사용된 코덱에 따라 최대 4032 × 4080 픽셀의 더 높은 해상도를 지원한다.

5세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 5" 또는 "VP5"라고 불린다. PureVideo HD의 이 세대는 엔비디아 기능 세트 D (또는 "VDPAU 기능 세트 D")에 해당한다.

### 6세대 PureVideo HD
맥스웰 마이크로아키텍처와 함께 도입된 6세대 PureVideo HD는 지포스 GTX 750/GTX 750 Ti(GM107)와 맥스웰 기반 지포스 900 시리즈 GPU에도 포함되어 H.264 및 MPEG-2 디코딩 시 성능이 크게 향상되었다. 또한 DCI(Digital Cinema Initiatives) 4K 해상도 비디오를 4096 × 2160 픽셀로 디코딩할 수 있으며, 드라이버와 사용된 코덱에 따라 최대 4096 × 4096 픽셀의 더 높은 해상도를 지원한다. 기능 세트 E를 지원하는 GPU는 손상된 비디오 스트림을 디코딩할 때 더 강력한 오류 처리를 제공하는 향상된 오류 은폐 모드를 지원한다. 이는 H.265 FHD에 대한 부분 하드웨어 디코딩을 지원한다.

6세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 6" 또는 "VP6"라고 불린다. PureVideo HD의 이 세대는 엔비디아 기능 세트 E (또는 "VDPAU 기능 세트 E")에 해당한다.

### 7세대 PureVideo HD
지포스 GTX 960 및 GTX 950과 함께 도입된 2세대 맥스웰 GPU(GM206)의 7세대 PureVideo HD는 H.265 HEVC 버전 1(메인 및 메인 10 프로파일)의 완전 하드웨어 디코딩을 GPU의 비디오 엔진에 추가한다. 기능 세트 F 하드웨어 디코더는 또한 완전 고정 기능 VP9 (비디오 코덱) 하드웨어 디코딩을 지원한다.

이전 맥스웰 GPU는 호스트 CPU와 GPU의 GPGPU 배열을 모두 포함하는 하이브리드 디코딩 솔루션을 사용하여 HEVC 재생을 구현했다. 하이브리드 구현은 VP7의 비디오 엔진에 있는 전용 하드웨어보다 상당히 느리다.

7세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 7" 또는 "VP7"라고 불린다. PureVideo HD의 이 세대는 엔비디아 기능 세트 F (또는 "VDPAU 기능 세트 F")에 해당한다.

### 8세대 PureVideo HD
파스칼 기반 지포스 10 시리즈와 함께 도입된 8세대 PureVideo HD는 HEVC 버전 2 메인 12 프로파일의 완전 하드웨어 디코딩을 추가하고, VP9 및 HEVC 디코딩의 해상도를 8K로 증가시키며, 8K UHDTV 및 최대 8K 풀돔 8192x8192를 포함한다.

이전 맥스웰 GM200/GM204 GPU는 호스트 CPU와 GPU의 GPGPU 배열을 모두 포함하는 하이브리드 디코딩 솔루션을 사용하여 HEVC 재생을 구현했다. 하이브리드 구현은 VP8의 비디오 엔진에 있는 전용 하드웨어보다 상당히 느리다.

8세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 8" 또는 "VP8"라고 불린다. PureVideo HD의 이 세대는 엔비디아 기능 세트 H (또는 "VDPAU 기능 세트 H")에 해당한다.

### 9세대 PureVideo HD
9세대 PureVideo HD는 볼타 기반 TITAN V와 함께 도입되었다. 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 9" 또는 "VP9"라고 불린다. PureVideo HD의 이 세대는 엔비디아 기능 세트 I (또는 "VDPAU 기능 세트 I")에 해당한다.

### 10세대 PureVideo HD
튜링 기반 지포스 RTX 20 및 지포스 GTX 16 시리즈와 함께 도입된 10세대 PureVideo HD는 세 가지 추가 HEVC 버전 2 프로파일(메인 4:4:4, 메인 4:4:4 10 및 메인 4:4:4 12)에 대한 완전 하드웨어 디코딩을 GPU의 비디오 엔진에 추가한다.

10세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 10" 또는 "VP10"라고 불린다. PureVideo HD의 이 세대는 엔비디아 기능 세트 J (또는 "VDPAU 기능 세트 J")에 해당한다.

### 11세대 PureVideo HD
암페어 기반 지포스 RTX 30 시리즈와 5세대 NVDEC이 도입된 11세대 PureVideo HD는 GPU의 비디오 엔진에 AV1 메인 프로파일(8비트 또는 10비트 깊이의 4:0:0 및 4:2:0 크로마 서브샘플링)에 대한 8K@60 하드웨어 디코딩 기능을 도입하며, 해상도는 최대 8192x8192 픽셀이다.

11세대 PureVideo HD는 공식 엔비디아 명칭은 아니지만 때때로 "PureVideo HD 11" 또는 "VP11"라고 불린다. PureVideo HD의 이 세대는 엔비디아 기능 세트 K (또는 "VDPAU 기능 세트 K")에 해당한다.

### 이름 혼동
PureVideo 기술의 도입과 후속 출시가 엔비디아의 GPU 출시 일정과 동기화되지 않았기 때문에 PureVideo 기술의 정확한 기능과 지원되는 엔비디아 GPU는 상당한 고객 혼동을 야기했다. 1세대 PureVideo GPU(지포스 6 시리즈)는 광범위한 기능을 포괄했다. 지포스 6 시리즈의 저사양(6200)에서는 PureVideo가 표준 해상도 콘텐츠(720×576)로 제한되었다. 지포스 6 시리즈의 주류 및 고사양은 H.264/VC-1을 전혀 가속하지 않는 구형 제품(6800 GT)과 VC-1/H.264 오프로딩 기능이 추가된 신형 제품(6600 GT)으로 나뉘었다.

2006년, PureVideo HD는 1세대 PureVideo HD를 탑재한 지포스 7900의 출시와 함께 공식적으로 도입되었다. 2007년, 2세대 PureVideo HD(VP2) 하드웨어가 지포스 8500 GT/8600 GT/8600 GTS와 함께 출시되었을 때, 엔비디아는 Purevideo HD를 1세대(소급하여 "PureVideo HD 1" 또는 VP1이라고 불림) GPU(지포스 7900/8800 GTX)와 신형 VP2 GPU를 모두 포함하도록 확장했다. 이로 인해 두 가지 분명히 다른 세대별 기능을 가진 GPU(신형 VP2 기반 코어(지포스 8500 GT/8600 GT/8600 GTS/8800 GT) 및 다른 구형 PureVideo HD 1 기반 코어(지포스 7900/G80))가 포함된 혼란스러운 제품 포트폴리오가 생겨났다.

엔비디아는 PureVideo HD 라벨을 부착한 모든 GPU가 적절한 시스템 구성 요소와 함께 블루레이/HD DVD 재생을 완벽하게 지원한다고 주장한다. H.264/AVC 콘텐츠의 경우, VP1은 신형 GPU에 비해 현저히 낮은 가속을 제공하여 호스트 CPU에 훨씬 더 큰 부담을 준다. 그러나 충분히 빠른 호스트 CPU는 하드웨어 지원 없이도 블루레이를 재생할 수 있다.

### PureVideo SIP 블록을 포함하는 GPU 표

### 엔비디아 VDPAU 기능 세트
**엔비디아 VDPAU 기능 세트**는 엔비디아 GPU의 다양한 하드웨어 디코딩 기능을 지원하는 다른 하드웨어 세대이다. 기능 세트 A, B, C의 경우 최대 비디오 너비 및 높이는 2048 픽셀, 최소 너비 및 높이는 48 픽셀이며, 모든 코덱은 현재 최대 8192 매크로블록(VC-1/WMV9의 경우 8190)으로 제한된다. 부분 가속은 VLD (비트스트림) 디코딩이 CPU에서 수행되고, GPU는 IDCT, 움직임 보상 및 디블로킹만 수행함을 의미한다. 완전 가속은 GPU가 VLD, IDCT, 움직임 보상 및 디블로킹을 모두 수행함을 의미한다.

#### 기능 세트 A
: H.264에 대한 완전 가속 및 MPEG-1, MPEG-2, VC-1/WMV9에 대한 부분 가속을 지원한다.

#### 기능 세트 B
: MPEG-1, MPEG-2, VC-1/WMV9 및 H.264에 대한 완전 가속을 지원한다.
: 모든 기능 세트 B 하드웨어는 다음 너비에 대한 H.264를 디코딩할 수 없다: 769-784, 849-864, 929-944, 1009-1024, 1793-1808, 1873-1888, 1953-1968, 2033-2048 픽셀.

#### 기능 세트 C
: MPEG-1, MPEG-2, MPEG-4 파트 2 (일명 MPEG-4 ASP), VC-1/WMV9 및 H.264에 대한 완전 가속을 지원한다.
: 전역 움직임 보상 및 데이터 파티셔닝은 MPEG-4 파트 2에 대해 지원되지 않는다.

#### 기능 세트 D
: 기능 세트 C와 유사하지만 최대 4032 × 4080 해상도의 H.264 및 최대 4032 × 4048 픽셀 해상도의 MPEG-1/MPEG-2 디코딩 지원이 추가되었다.

#### 기능 세트 E
: 기능 세트 D와 유사하지만 최대 4096 × 4096 해상도의 H.264 및 최대 4080 × 4080 픽셀 해상도의 MPEG-1/MPEG-2 디코딩 지원이 추가되었다. VDPAU 기능 세트 E를 지원하는 GPU는 손상된 비디오 스트림을 디코딩할 때 더 강력한 오류 처리를 제공하는 향상된 오류 은폐 모드를 지원한다. 이 기능 세트를 가진 카드는 PureVideo 하드웨어와 셰이더 배열에서 실행되는 소프트웨어를 조합하여 HEVC (H.265)를 부분/하이브리드 하드웨어 비디오 디코딩으로 디코딩한다.

#### 기능 세트 F
: HEVC 메인 (8비트) 및 메인 10 (10비트)과 VP9 프로파일 0 (8비트)의 완전 가속을 최대 4096 × 2304 픽셀 해상도로 지원한다.

#### 기능 세트 G
: HEVC 메인 12 (12비트)의 완전 가속을 최대 4096 × 4096 픽셀 해상도로 지원한다.

#### 기능 세트 H
: VP9 프로파일 2 (10비트)의 완전 가속 및 모든 HEVC 및 VP9 프로파일에 대한 최대 8192 x 8192 픽셀 (8K 해상도) 해상도를 지원한다.

#### 기능 세트 I

: 기능 세트 H와 동일하며 효율성이 향상되었다.

#### 기능 세트 J

: 세 가지 추가 HEVC 버전 2 프로파일(메인 4:4:4, 메인 4:4:4 10 및 메인 4:4:4 12)의 완전 가속을 지원한다.

#### 기능 세트 K
: 기능 세트 J와 동일하며 효율성이 향상되었다. 초기에는 AV1 디코딩 지원이 11세대 PureVideo HD GPU의 엔비디아 독점 NVDEC API에만 도입되었다. AV1 디코딩은 1년 이상 지난 2022년 1월에 오픈 소스 VDPAU API 기능 세트 K에 추가되었다.

## 같이 보기
* DirectX 비디오 가속 (DXVA) API – 마이크로소프트 윈도우 운영 체제용.
* VDPAU (Video Decode and Presentation API for Unix) - 엔비디아 – 리눅스/UNIX 운영 체제용 엔비디아 최적화 현재 미디어 API.
* Video Acceleration API (VA API) – 리눅스/UNIX 운영 체제용 대체 비디오 가속 API.
* OpenMAX IL (Open Media Acceleration Integration Layer) – 크로노스 그룹의 로열티 없는 크로스 플랫폼 미디어 추상화 API.
* X-Video Motion Compensation (XvMC) API – 리눅스/UNIX 운영 체제용 최초의 미디어 API로, 현재는 거의 사용되지 않는다.

### 하드웨어 비디오 하드웨어 기술

#### 엔비디아

* 지포스 256의 움직임 보상
* 고화질 비디오 프로세서
* 비디오 처리 엔진
* Nvidia NVENC
* Nvidia NVDEC
* 엔비디아 그래픽 처리 장치 목록

#### AMD

* 비디오 코어 넥스트 - AMD
* 통합 비디오 디코더 - AMD
* 비디오 셰이더 - ATI

#### 인텔

* 퀵 싱크 비디오 - 인텔
* 클리어 비디오 - 인텔
**퀄컴**

* 퀄컴 헥사곤

## 같이 보기
* DXVA
* AVIVO
* UVD
* 인텔 클리어 비디오

## 각주

## 외부 링크
* 엔비디아의 퓨어비디오 홈페이지
* 엔비디아의 퓨어비디오 HD 홈페이지

분류:엔비디아 IP 코어
분류:비디오 가속