среда, 28 октября 2015 г.

Часть 6. Аппаратное ускорение видео с VA-API (Mplayer)

 Во второй части инструкции по настройке ElementaryOS мы включили аппаратное ускорение Flash-видео путем установки нужных драйверов и принудительного включения ускорения на GPU. Теперь же включим аппаратное ускорение для обычных видеоплееров при воспроизведение видеофайлов кодированных при помощи таких кодеков - MPEG-2, VC-1/WMV3, H.263 (он же Xvid и MPEG-4 SP/MPEG-4 ASP) и H.264

Аппаратное ускорение значительно снизит нагрузку на CPU при просмотре видео, уберет лаги при просмотре высококачественного видео и позволит ноутбукам дольше работать от батареи.

По этой ссылке можно узнать какие видеоускорители и кодеки поддерживают VA-API, если вы выполнили вторую часть инструкции и у вас похожее железо (серия Intel HD Graphics), то драйвера вам ставить не нужно, можно лишь проверить командой установлен ли VDPAU драйвер и какая видеокарта его использует:
cat /var/log/Xorg.0.log | grep -i vdpau

Займемся установкой:
1. Устаноим VA-API драйвер (если у вас Intel HD Graphics и вы выполнили все шаги во второй части, то это можно пропустить и перейти сразу к шагу 2):
Для Intel HD Graphics:
sudo apt-get install i965-va-driver

Для видеочипов AMD Radeon (перед этим у вас должны быть установлены проприетарные драйвера!):
sudo apt-get install xvba-va-driver

Для пользователей видеочипов nVidia как я понял - ничего делать не нужно, их драйвера по-умолчанию поддерживают VA-API и ничего до устанавливать не надо.

2. В стандартных репозиториях есть MPlayer, однако без поддержки VA-API, по этому мы добавим репозиторий со сборкой MPlayer'a поддерживающего VA-API:
sudo add-apt-repository ppa:sander-vangrieken/vaapi
А затем установим его:
sudo apt-get update
sudo apt-get install mplayer-vaapi

3. Теперь установим плеер на базе MPlayer (SMPlayer, Gnome MPlayer, KMPlayer и др.). Я выбрал SMPLayer:
sudo apt-get install smplayer

4. Включим аппаратное ускорение указанных здесь видеокодеков. Запустим плеер, перейдем в настройки > Настройки > Основные > вкладка "Видео" > устройство вывода - изменить на vaapi.

5. В первой части инструкции мы устанавливали плеер VLC, для него так же можно включить аппаратное ускорение. Запустим VLC, сверху выберем Инструменты > Настройки (или нажать Ctrl + P), сбоку выберем "Ввод / кодеки" > hardware accelerated decoding выставляем на "Программный интерфейс VA".

6. Смотрим видео, наслаждаемся минимальной загрузкой процессора и более длительной работой устройства от аккумулятора.
Проверить работу ускорения видео на GPU достаточно легко, для этого можно скачать любое видео с указанными в начале кодеками в качестве 1080p и посмотреть загрузку процессора с выключенным vaapi, а затем с включенным.

P.S. Мне очень нравится стандартный видеоплеер в дистрибутиве ElementaryOS как своей простотой так и "живым" предпросмотром кусочков видео при перемотке, но пока я не знаю как сделать так, что бы он использовал VA-API. Если кто-то знает как или имеет какие либо предположения - делитесь в комментариях к этой записи.

1 комментарий:

  1. При данных настройках и кодеках у тебя нет тиринга и мерцания в видео при полноэкранном просмотре?

    ОтветитьУдалить