VAAPI의 인텔 (R) 미디어 드라이버는 새로운 VA-API (비디오 가속도 API) 사용자 모드 드라이버로 인해 하드웨어 가속 디코딩, 인코딩 및 Gen 기반 그래픽 하드웨어의 비디오 게시물 처리를 지원하는 사용자 모드 드라이버입니다.
VAAPI 용 인텔 (R) 미디어 드라이버는 MIT 라이센스에 따라 배포됩니다. MIT & BSD-3-Clause에서 라이센스 사본을 얻을 수 있습니다.
우분투 16.04+
apt install autoconf libtool libdrm-dev xorg xorg-dev openbox libx11-dev libgl1-mesa-glx
다른 분포의 동등한 제품이 작동해야합니다.
<workspace>
|- media-driver
$ mkdir <workspace>/build_media
<workspace>
|- media-driver
|- build_media
$ cd <workspace>/build_media
$ cmake ../media-driver
$ make -j"$(nproc)"
$ sudo make install
다음 파일이 설치됩니다 (예 : Ubuntu에서).
-- Installing: /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
-- Installing: /etc/profile.d/intel-media.sh
-- Installing: /usr/lib/x86_64-linux-gnu/igfxcmrt64.so
IHD_DRV_VIDEO. 따라서 관련 LIBVA 환경 변수를 내보내십시오.
export LIBVA_DRIVERS_PATH=<path-contains-iHD_drv_video.so>
export LIBVA_DRIVER_NAME=iHD
미디어 드라이버에는 다음과 같이 세 가지 구성 요소가 포함되어 있습니다
미디어 드라이버는 두 개의 빌드 아래에 지원합니다
Ubuntu/Debian OSV에 대해서는 Intel-Media-VA-Driver-Non-Free (Full Feature Build) 및 Intel-Media-VA-Driver (Free Kernel Build) 2 개의 패키지를 제공합니다. 여기에서 무료는 오픈 소스 커널을 의미하지만 수수료가 지불 해야하는 것과는 관련이 없습니다. 자세한 내용은 빌드 옵션을 참조 할 수 있습니다.
이 두 빌드에서 미디어 구성 요소 기능을 공유 할 큰 테이블을 기대하고 있다면 아래 테이블은 정보를 잘 참조합니다.
코덱 | 빌드 유형 | BMG | lnl | mtlx | DG2/ATSM | DG1/SG1 | tglx | EHL/JSL | ICL | KBLX | bxtx | SKL | BDW |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AVC | 전체 기능 프리 커널 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e/es d/e | d/e/es d/e | d/e d/e | d/e/es d/e | d/e/es d/e | d/e/es d/e | d/e/es d/e | d/es 디 |
MPEG-2 | 전체 기능 프리 커널 | 디 디 | 디 디 | 디 디 | 디 디 | d/es 디 | d/es 디 | 디 디 | d/es 디 | d/es 디 | 디 디 | d/es 디 | d/es 디 |
VC-1 | 전체 기능 프리 커널 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | ||||
JPEG | 전체 기능 프리 커널 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | 디 디 |
VP8 | 전체 기능 프리 커널 | 디 디 | 디 디 | 디 디 | 디* 디* | 디 디 | d/es 디 | d/es 디 | 디 디 | 디 디 | 디 디 | ||
HEVC 8 비트 | 전체 기능 프리 커널 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e/es d/e | d/e/es d/e | d/e d/e | d/e/es d/e | d/es 디 | d/es 디 | d/es 디 | |
HEVC 8bit 422 | 전체 기능 프리 커널 | d/e d/e | d/e d/e | 디 디 | d/e d/e | d/es 디 | d/es 디 | 디 디 | d/es 디 | ||||
HEVC 8bit 444 | 전체 기능 프리 커널 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | ||||
HEVC 10 비트 | 전체 기능 프리 커널 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e/es d/e | d/e/es d/e | d/e d/e | d/e/es d/e | d/es 디 | 디 디 | ||
HEVC 10 비트 422 | 전체 기능 프리 커널 | d/e d/e | d/e d/e | 디 디 | d/e d/e | d/es 디 | d/es 디 | 디 디 | d/es 디 | ||||
HEVC 10 비트 444 | 전체 기능 프리 커널 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | ||||
HEVC 12 비트 | 전체 기능 프리 커널 | 디 디 | 디 디 | 디 디 | 디 디 | d/es 디 | d/es 디 | ||||||
HEVC 12bit 422 | 전체 기능 프리 커널 | 디 디 | 디 디 | 디 디 | 디 디 | 디 디 | 디 디 | ||||||
HEVC 12bit 444 | 전체 기능 프리 커널 | 디 디 | 디 디 | 디 디 | 디 디 | 디 디 | 디 디 | ||||||
VP9 8 비트 | 전체 기능 프리 커널 | 디 디 | 디 디 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | 디 디 | 디 디 | ||
vp9 8bit 444 | 전체 기능 프리 커널 | 디 디 | 디 디 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | ||||
VP9 10 비트 | 전체 기능 프리 커널 | 디 디 | 디 디 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | 디 디 | |||
VP9 10 비트 444 | 전체 기능 프리 커널 | 디 디 | 디 디 | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | d/e d/e | ||||
vp9 12bit | 전체 기능 프리 커널 | 디 디 | 디 디 | 디 디 | 디 디 | 디 디 | 디 디 | ||||||
vp9 12bit 444 | 전체 기능 프리 커널 | 디 디 | 디 디 | 디 디 | 디 디 | 디 디 | 디 디 | ||||||
AV1 8 비트 | 전체 기능 프리 커널 | d/e d/e | d/e d/e | d/e d/e | d/e 이자형 | 디 | 디 | ||||||
AV1 10 비트 | 전체 기능 프리 커널 | d/e d/e | d/e d/e | d/e d/e | d/e 이자형 | 디 | 디 | ||||||
VVC 8 비트 | 전체 기능 프리 커널 | 디 디 | |||||||||||
VVC 10 비트 | 전체 기능 프리 커널 | 디 디 |
참고 : 저전력 인코딩 (vaentrypointencslicelp) 및 셰이더 인코딩 (vaentrypointencslice)은 MTL 플랫폼의 Unified Interface (vaentrypointencslice)로 통합됩니다. HW 가속을 위해 vdenc/huc를 통해 GPU 자원을 고객에게 제공합니다.
더 해독 및 인코딩 기능 정보는 다음을 참조하십시오.
코덱 | 빌드 유형 | BMG | lnl | mtlx | DG2/ATSM | DG1/SG1 | tglx | EHL/JSL | ICL | KBLX | bxtx | SKL | BDW |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
블렌딩 | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | 예 |
CSC | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | 예 |
de-interlace | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예* 예* | 예 예 | 예 | 예 | 예 | 예 |
노이즈 | 전체 기능 프리 커널 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | |
루마 키 | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | 예 |
미러링 | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | 예 |
Procamp | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | 예 |
회전 | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | 예 |
스케일링 | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | 예 |
샤프닝 | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | 예 |
std/e | 전체 기능 프리 커널 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | |
TCC | 전체 기능 프리 커널 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | |
색상 채우기 | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | 예 |
크로마 앉아 | 전체 기능 프리 커널 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 예 | 예 | 예 | 예 | |
HDR10 TM | 전체 기능 프리 커널 | 예 | 예 | 예 | 예 | 예 | 예 | 예 | |||||
3dlut | 전체 기능 프리 커널 | 예 | 예 | 예 | 예 | 예 | 예 |
더 많은 기능 정보는 지원되는 비디오 처리 CSC/스케일링 형식을 참조하십시오.
미디어 드라이버는 아래에 설명 된대로 다른 빌드 유형을 지원합니다. 다음 설정을 참조하여 활성화 할 수 있습니다.
Media-Driver는 I915 KMD의 업스트림 버전을 완전히 지원하지 않기 때문에 다음 플랫폼을 지원하기 위해 특수 I915 커널 모드 드라이버 (KMD) 버전이 필요합니다 (상류에서 패치가 보류). 이러한 플랫폼을 활성화하려면 ENABLE_PRODUCTION_KMD=ON
(기본값 : OFF
) 구성 옵션을 지정해야합니다.
VAAPI 용 인텔 (R) 미디어 드라이버는 공식적으로 C ++ 11을 지원하는 GCC 컴파일러 v6.1 이상에 대해 구축 할 것을 권장합니다.
HUC 펌웨어는 CBR, VBR 등을 포함하여 AVC/HEVC/VP9/AV1 저전력 인코딩 비트 레이트 제어에 필요합니다. 기본 커널 구성은 TGL/RKL 및 레거시 플랫폼에 대한 HUC로드를 활성화하지 못했지만 ADL+ 플랫폼에서 활성화했습니다. 루트 아래에서 "options i915 enable_guc=2" > /etc/modprobe.d/i915.conf
로 HUC 설정을 변경할 수 있습니다. ADL+ 플랫폼의 경우, 관련 플랫폼 HUC BAINS가 /lib/firware/i915
에 존재하는 경우 커널이 HUC를 기본값으로로드합니다. 다른 플랫폼에서 사용할 수있는 Huc Firmwares는 다음과 같습니다.
i915.enable_guc=2
설정하십시오.i915.enable_guc=2
설정하십시오.i915.enable_guc=2
설정하십시오.i915.enable_guc=2
설정하십시오.i915.enable_guc=2
설정하십시오.i915.enable_guc=2
설정하십시오.더 알려진 다른 문제는 Media-Driver/Wiki "알려진 문제"페이지를 참조하십시오.