Accelerated Video Playback/ru: Difference between revisions
Created page with "<syntaxHighlight lang=ini> hwdec=auto-safe vo=gpu profile=gpu-hq gpu-context=wayland ; Только для Wayland </syntaxHighlight>" |
Updating to match new version of source page |
||
| (14 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
<languages/> | <languages/> | ||
<div | <div class="mw-translate-fuzzy"> | ||
Ускорение воспроизведения видео в NixOS обычно осуществляется путем добавления соответствующих пакетов в | |||
{{nixos:option|hardware.opengl.extraPackages}}. | |||
</div> | </div> | ||
== | <span id="Installation"></span> | ||
== Установка == | |||
=== Intel === | === Intel === | ||
{{file|/etc/nixos/configuration.nix|nix|<nowiki> | {{file|/etc/nixos/configuration.nix|nix|<nowiki> | ||
{ | { | ||
hardware.graphics = { | hardware.graphics = { | ||
enable = true; | enable = true; | ||
extraPackages = with pkgs; [ | extraPackages = with pkgs; [ | ||
| Line 22: | Line 24: | ||
</div> | </div> | ||
Для поддержки 32-битной версии используйте {{nixos:option|hardware.graphics.extraPackages32}}: | |||
{{file|/etc/nixos/configuration.nix|nix|<nowiki> | {{file|/etc/nixos/configuration.nix|nix|<nowiki> | ||
{ | { | ||
hardware.graphics.extraPackages32 = with pkgs.pkgsi686Linux; [ intel-vaapi-driver ]; | hardware.graphics.extraPackages32 = with pkgs.pkgsi686Linux; [ intel-vaapi-driver ]; | ||
} | } | ||
</nowiki>}} | </nowiki>}} | ||
=== AMD === | === AMD === | ||
Конфигурация AMD (по крайней мере, для iGPU Ryzen 5) работает из коробки: | |||
{{file|/etc/nixos/configuration.nix|nix|<nowiki> | |||
{ | |||
hardware.graphics.enable = true; | |||
} | |||
</nowiki>}} | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
=== NVIDIA === | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
NVIDIA do not officially support accelerated video playback on Linux. A third-party implementation exists, but does not support Chrome<ref>https://github.com/elFarto/nvidia-vaapi-driver#chrome</ref>, and has significant limitations compared to the other implementations<ref>https://github.com/elFarto/nvidia-vaapi-driver#codec-support</ref>. | |||
</div> | </div> | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
NVIDIA users with a separate iGPU should generally prefer to use their iGPU for this, and therefore look to the above Intel and AMD sections instead. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Users with only an NVIDIA GPU can attempt to use the third party implementation; the package is added to <code>hardware.graphics.extraPackages</code> by default, but it requires some additional setup to be useful<ref>https://github.com/elFarto/nvidia-vaapi-driver#configuration</ref>: | |||
</div> | |||
{{file|/etc/nixos/configuration.nix|nix|<nowiki> | {{file|/etc/nixos/configuration.nix|nix|<nowiki> | ||
{ | { config, lib, ...}: { | ||
hardware. | environment.variables.LIBVA_DRIVER_NAME = "nvidia" | ||
# If used with Firefox | |||
environment.variables.MOZ_DISABLE_RDD_SANDBOX = "1"; | |||
programs.firefox.preferences = let | |||
ffVersion = config.programs.firefox.package.version; | |||
in { | |||
"media.ffmpeg.vaapi.enabled" = lib.versionOlder ffVersion "137.0.0"; | |||
"media.hardware-video-decoding.force-enabled" = lib.versionAtLeast ffVersion "137.0.0"; | |||
"media.rdd-ffmpeg.enabled" = lib.versionOlder ffVersion "97.0.0"; | |||
"gfx.x11-egl.force-enabled" = true; | |||
"widget.dmabuf.force-enabled" = true; | |||
# Set this to true if your GPU supports AV1. | |||
# | |||
# This can be determined by reading the output of the | |||
# `vainfo` command, after the driver is enabled with | |||
# the environment variable. | |||
"media.av1.enabled" = false; | |||
}; | |||
} | } | ||
</nowiki>}} | </nowiki>}} | ||
<span id="Testing_your_configuration"></span> | <span id="Testing_your_configuration"></span> | ||
== Проверьте вашу конфигурацию == | == Проверьте вашу конфигурацию == | ||
| Line 46: | Line 87: | ||
Вы можете протестировать вашу конфигурацию выполнив: | Вы можете протестировать вашу конфигурацию выполнив: | ||
<code>nix-shell -p libva-utils --run vainfo</code> | <code>nix-shell -p libva-utils --run vainfo</code> | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
See [https://wiki.archlinux.org/index.php/Hardware_video_acceleration#Verification Arch Linux wiki#Hardware video acceleration] for more information. | See [https://wiki.archlinux.org/index.php/Hardware_video_acceleration#Verification Arch Linux wiki#Hardware video acceleration] for more information. | ||
</div> | </div> | ||
< | <span id="Applications"></span> | ||
== | == Приложения == | ||
=== Chromium === | === Chromium === | ||
См. [[Chromium#Accelerated_video_playback]]. | См. [[Chromium#Accelerated_video_playback]]. | ||
=== Firefox === | |||
<div class="mw-translate-fuzzy"> | |||
=== Firefox === | === Firefox === | ||
</div> | </div> | ||
<!--T:13--> | |||
< | |||
=== MPV === | === MPV === | ||
Вы можете разместить следующую конфигурацию в {{ic|~/.config/mpv/mpv.conf}}: | |||
< | <!--T:14--> | ||
<syntaxHighlight lang=ini> | <syntaxHighlight lang=ini> | ||
hwdec=auto | hwdec=auto | ||
</syntaxHighlight> | </syntaxHighlight> | ||
<!--T:15--> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
See [https://wiki.archlinux.org/title/mpv#Hardware_video_acceleration Arch Linux wiki#mpv]. | See [https://wiki.archlinux.org/title/mpv#Hardware_video_acceleration Arch Linux wiki#mpv]. | ||