문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
linux:vaapi [2016/01/10 23:58] kwon37xi [MPlayer] |
linux:vaapi [2023/12/22 14:59] (현재) kwon37xi |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== Linux VAAPI/VDPAU ====== | ====== Linux VAAPI/VDPAU ====== | ||
* 그래픽 카드의 GPU를 사용하여 고성능으로 동영상 Video 재생 | * 그래픽 카드의 GPU를 사용하여 고성능으로 동영상 Video 재생 | ||
- | * **vaapi는 개발이 중단된 것으로 보이며 VDPAU를 사용하면 된다. Intell, ATI도 VAAPI 지원하게 변경된듯** | ||
* nVidia에서는 VDPAU 라고 함. | * nVidia에서는 VDPAU 라고 함. | ||
+ | * [[https:// | ||
+ | * https:// | ||
+ | * https:// | ||
* Intell, ATI 는 VAAPI | * Intell, ATI 는 VAAPI | ||
* [[windows: | * [[windows: | ||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
+ | * https:// | ||
+ | |||
+ | ===== vainfo ===== | ||
+ | <code sh> | ||
+ | sudo apt install vainfo | ||
+ | |||
+ | vainfo | ||
+ | |||
+ | # 해당 기기의 가속 가능한 코덱 정보 출력 | ||
+ | libva info: VA-API version 1.8.0 | ||
+ | libva info: Trying to open / | ||
+ | libva info: Found init function __vaDriverInit_1_8 | ||
+ | libva info: va_openDriver() returns 0 | ||
+ | vainfo: VA-API version: 1.8 (libva 2.8.0) | ||
+ | vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 20.2.0 () | ||
+ | vainfo: Supported profile and entrypoints | ||
+ | VAProfileMPEG2Simple | ||
+ | VAProfileMPEG2Main | ||
+ | VAProfileH264Main | ||
+ | VAProfileH264High | ||
+ | VAProfileJPEGBaseline | ||
+ | VAProfileH264ConstrainedBaseline: | ||
+ | VAProfileVP8Version0_3 | ||
+ | </ | ||
===== Intel ===== | ===== Intel ===== | ||
- | * Ubuntu Intel Graphic Card 에서는 '' | ||
+ | * [[linux: | ||
+ | * Intel CPU Gen 8 이상 | ||
+ | <code sh> | ||
+ | # 기본으로 intel-media-va-driver 가 설치되는데 non-free 버전으로 교체 | ||
+ | sudo apt install intel-media-va-driver-non-free libva-drm2 libva-x11-2 | ||
+ | </ | ||
+ | * Intel CPU Gen 7 이하 | ||
+ | <code sh> | ||
+ | sudo apt install i965-va-driver-shaders libva-drm2 libva-x11-2 | ||
+ | </ | ||
+ | |||
+ | <code sh> | ||
+ | # Utilities | ||
+ | sudo apt install intel-gpu-tools | ||
+ | |||
+ | # intel gpu 사용상황 확인 - Video 항목의 % 가 올라가면 GPU Video Encoding 을 사용하는 것이다. | ||
+ | sudo intel_gpu_top | ||
+ | </ | ||
===== AMD Radeon ===== | ===== AMD Radeon ===== | ||
* '' | * '' | ||
줄 17: | 줄 60: | ||
===== NVidia ===== | ===== NVidia ===== | ||
+ | * [[linux: | ||
* Proprietary 드라이버 설치 | * Proprietary 드라이버 설치 | ||
- | * '' | + | * '' |
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | ==== nvidia-vaapi-driver ==== | ||
+ | * https:// | ||
+ | |||
+ | <code sh> | ||
+ | sudo apt install nvidia-vaapi-driver | ||
+ | </ | ||
+ | * 해당 github 문서에서 firefox 에서 활성화 하는 법 등이 문서화 돼 있음. | ||
===== MPlayer ===== | ===== MPlayer ===== | ||
* 기본 MPlayer는 vdpau를 지원하고 있으므로 특별한 작업 불필요. | * 기본 MPlayer는 vdpau를 지원하고 있으므로 특별한 작업 불필요. | ||
줄 32: | 줄 86: | ||
===== VLC ===== | ===== VLC ===== | ||
* [[: | * [[: | ||
+ | * 3.x 부터는 VDPAU 만 지원하고 VAAPI 는 지원안한다고 함. | ||
* [[http:// | * [[http:// | ||
* **환경설정 -> 입력 & 코덱설정 -> 하드웨어 가속 디코딩**에서 적합한 드라이버 선택. | * **환경설정 -> 입력 & 코덱설정 -> 하드웨어 가속 디코딩**에서 적합한 드라이버 선택. | ||
+ | ===== mpv ===== | ||
+ | * [[linux: | ||
+ | ===== Browser ===== | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ==== Google Chrome 91 이상 버전 / Ubuntu | ||
+ | |||
+ | |||
+ | === Nvidia === | ||
+ | <code sh> | ||
+ | sudo apt install libva-drm2 libva-x11-2 | ||
+ | </ | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | <code sh> | ||
+ | sudo dpkg -i vdpau-va-driver_0.7.4-7ubuntu1_ppa2_20.04.1_amd64.deb \ | ||
+ | libvdpau1_1.4-2_ubuntu20.04.1_amd64.deb | ||
+ | | ||
+ | sudo apt-mark hold libvdpau1 # libvdpau1 이 구버전이라서 버전업 중단시킴. | ||
+ | </ | ||
+ | * nvidia 의 경우 VP9 지원을 하는 GPU더라도, | ||
+ | * 단, **Youtube의 경우 VP9 을 끄면, 4K 동영상은 지원안하는 것**으로 보임. 1080p 까지만 지원. | ||
+ | * 보통 nvidia 탑재 PC는 사양이 높기 때문에, 1080p 의 경우 가속을 하건 안하건 큰 차이가 안남. | ||
+ | * 따라서 굳이 GPU 가속 설정 할 필요가 없어보임. | ||
+ | |||
+ | === Chrome 91 이상 버전 GPU 가속 활성화 === | ||
+ | * Chrome 91 이상 버전에서 GPU Acceleration 활성화 해서 실행 | ||
+ | <code sh> | ||
+ | # X11 은 --use-gl=desktop, | ||
+ | google-chrome-stable --use-gl=desktop --enable-features=VaapiVideoDecoder | ||
+ | # 위 옵션 주기 말고, 설정파일로 하기도 가능 | ||
+ | </ | ||
+ | * '' | ||
+ | < | ||
+ | Video Decode: Hardware accelerated | ||
+ | </ | ||
+ | * [[https:// | ||
+ | * 하드웨어 가속을 할 경우 [[google: | ||
+ | * '' | ||
+ | |||
+ | ==== Firefox ==== | ||
+ | * vaapi 만 지원한다. | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * 위의 Intel GPU 관련 드라이버를 설치하고 | ||
+ | * '' | ||
+ | * [[linux: | ||
+ | MOZ_ENABLE_WAYLAND=1 | ||
+ | </ | ||
+ | * [[linux: | ||
+ | |||
+ | ==== firefox - nvidia-vaapi-driver ==== | ||
+ | * [[https:// | ||
+ | * '' | ||
+ | <code sh> | ||
+ | #!/bin/sh | ||
+ | |||
+ | DRI_PATH=${HOME}/ | ||
+ | |||
+ | echo " | ||
+ | flatpak override --user --reset org.mozilla.firefox | ||
+ | |||
+ | echo " | ||
+ | flatpak override --user --env=LIBVA_DRIVER_NAME=nvidia \ | ||
+ | --env=LIBVA_DRIVERS_PATH=${DRI_PATH} \ | ||
+ | --env=LIBVA_MESSAGING_LEVEL=1 \ | ||
+ | --env=MOZ_DISABLE_RDD_SANDBOX=1 \ | ||
+ | --env=NVD_BACKEND=direct \ | ||
+ | org.mozilla.firefox | ||
+ | |||
+ | # uncomment the following if you use keepass running on the host | ||
+ | # flatpak override --user --filesystem=xdg-run/ | ||
+ | |||
+ | echo " | ||
+ | mkdir -p ${DRI_PATH} | ||
+ | cp / | ||
+ | |||
+ | cat <<" | ||
+ | |||
+ | Now open about: | ||
+ | |||
+ | EOF | ||
+ | </ | ||
+ | * '' | ||
+ | <code sh> | ||
+ | flatpak info --show-runtime org.mozilla.firefox | ||
+ | # 결과가 22.08 이라면 | ||
+ | flatpak install org.freedesktop.Platform.ffmpeg-full// | ||
+ | </ | ||
+ | * OS 와 동일한 nvidia 드라이버는 아마도 자동 설치 돼 있을것임(안 되면 flatpak update 해볼것) | ||
+ | ==== Browser GPU 가속여부 확인 ==== | ||
+ | * Intel : '' | ||
+ | * Nvidia : '' | ||
+ | * 4K 동영상을 틀어보면, |