Как включить VDPAU в ubuntu
VDPAU — API от nvidia, позволяющее использовать технологию PureVideo HD в Linux. А соответственно PureVideo HD это полностью аппаратное декодирование HD видео с кодеками H.264/X.264 и VC-1 (xvid, divx, wmv).
VDPAU поддерживается на всех видеокартах nvidia серии 9000 и позже (подробный список тут).
Правда на некоторых видеокартах, особенно Gigabyte, не написано что они поддерживают PureVideo HD, хотя запустить удалось без особых проблем.
Результат: декодирование x.264, FullHD 1920×1080 с 1-2% нагрузкой на процессор. Без VDPAU процессор не справляется, и видео идет рывками, 5-6 кадров в секунду.
Технология довольно новая (драйвер для linux выпустили год назад), нужно иметь подходящий видеодрайвер (nvidia 180, который ставит ubuntu подходит) и пропатченый плеер.
Все это можно взять из готовых репозиториев, так что поехали.
sudo -i
cat > /etc/apt/sources.list.d/vdpau.list <<«EOF»
deb http://ppa.launchpad.net/nvidia-vdpau/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/nvidia-vdpau/ppa/ubuntu jaunty main
EOF
#получаем открытый ключ для него
apt-key adv —keyserver keyserver.ubuntu.com —recv-keys CEC06767
#обновление программ
apt-get update
apt-get install mplayer smplayer
exit
Дальше можно проверять. Для консольного mplayer команда следующая:
Для графической оболочки smplayer нужно в настройках поставить видеовывод (vo) vdpau и на закладке дополнительно-настройки mplayer вписать
И я советую тотключить «позволять выпадение кадров», иначе будет медленно перематывать (без vdapu эффект обратный).
P.S. на Windows XP я не смог запустить PureVideo HD на этой же видеокарте. Как выяснилось, «обычные плееры» не умеют, только 2 платных плеера: Cyberlink PowerDVD и Nero Showtime. Но первый не понимает ничего кроме AVI, а второй вообще отказался работать. Если включить их через DirectShow, как пишут в интернете, никакого декодирования не получается. Это возможно, я не спорю, но на много сложнее чем в ubuntu 🙂
UPD: если при проигрывании появляются надписи типа «ffh264vdpau not found in libavcodec», то нужно поставить полную версию кодеков:
Ответить