Вопрос в том, как использоать nouveau с vdpau для того чтобы включить аппаратное декодирование (ускорение). Судя по информации с
nouveau.freedesktop.org аппаратное ускорение может быть задействовано со свободным видеодрайвером nouveau.
Собственно устанавливаем все необходимое для воспроизведения и использования vdpau:
#aptitude install mesa-vdpau-drivers
#aptitude install mplayer2
#aptitude install libavcodec-extra
$ mkdir /tmp/nouveau
$ cd /tmp/nouveau
$ wget https://raw.github.com/imirkin/re-vp2/master/extract_firmware.py
$ wget http://us.download.nvidia.com/XFree86/Linux-x86/325.15/NVIDIA-Linux-x86-325.15.run
$ sh NVIDIA-Linux-x86-325.15.run --extract-only
$ python2 extract_firmware.py # this script is for python 2 only
# mkdir /lib/firmware/nouveau
# cp -d nv* vuc-* /lib/firmware/nouveau/
Проверяем:
mplayer -vo vdpau -vc ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau,ffodivxvdpau, <file>
Итог: загрузка процессора (CPU) нисколько не изменилась по сравнению с той, что была без ускорения. Что я делаю не так?
Вызывает подозрение вот этот вывод:
Cannot find codec 'h264_vdpau' in libavcodec...
Video decoder init failed for codecs.conf entry "ffh264vdpau".
Гле взять ffh264vdpau, мне не известно, подозреваю, что его просто выпилили из libavcodec.
sudo dpkg -l |grep libavcodec
ii libavcodec-extra 6:11.4-1~deb8u1 all Libav codec library (additional codecs meta-package)
ii libavcodec-extra-56:amd64 6:11.4-1~deb8u1 amd64 Libav codec library (additional codecs)
ii libavcodec-extra-56:i386 6:11.4-1~deb8u1 i386 Libav codec library (additional codecs)
rc libavcodec56:amd64 6:11.4-1~deb8u1 amd64 Libav codec library
rc libavcodec56:i386 6:11.4-1~deb8u1 i386 Libav codec library
Видеокарта поддерживает технологию NVIDIA PureVideo HD.
lspci |grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation G96 [GeForce 9400 GT] (rev a1)
Если запустить файл без прямого указания на кодек, то автоматически выбирается это:
Selected video codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 [libavcodec]
Selected audio codec: FLAC (Free Lossless Audio Codec) [libavcodec]
Загрузка процессора (CPU) по-прежнему высокая.