Аппаратное видеоускорение на картах ATI и INTEL
Практически все знают про разработку NVidia - VDPAU (Video Decode and Presentation API for Unix) - реализация библиотеки для использования аппаратных средств работы с видео с X Window System (Linux, FreeBSD, Solaris). Она является альтернативой разработке Microsoft DxVA (DirectX Video Acceleration) API для Windows. Но не все знают о том, что существует также библиотека реализующая аппаратную обработку видео для видеокарт AMD(ATI) и Intel - XvBA (X-Video Bitstream Acceleration).
XvBA является следующем расширением Xv (X video extension). Это достаточно новая разработка по сравнению с VDPAU NVidia, поэтому список программ, которые поддерживают данную технологию ещё очень мал. XvBA работает через VA API (Video Acceleration API) - с ноября 2009 года. Поэтому реализация в программах будет выполняться именно через эту библиотеку.
Заявлена поддержка в программах FFmpeg, VLC и Mplayer. Кстати говоря, как и для VDPAU, для XvBA требуются проприетарные драйвера ati-drivers и соответствующая видеокарта(*). На момент написания заметки, пакеты ffmpeg-0.6 и vlc-1.1.4 имеют USE-флаг vaapi, включение которого позволяет начать использовать данную библиотеку. Что же касается Mplayer, то поддержка этой библиотеки не включена в основную ветку и реализуется отдельным патчем. Подробнее стоит смотреть на http://www.splitted-desktop.com/~gbeauchesne/mplayer-vaapi/. К счастью, для Gentoo существует оверлей gentoo-quebec (добавляем стандартным образом через layman). Потом всё просто: USE="vaapi" emerge -av =media-video/mplayer-1.0_rc4_p20091124-r2 (именно такая версия программы на момент написания).
Запускать нам предлагают следующей командой: mplayer -vo vaapi:xv -ao vaapi. Соответственно, в smplayer выбираем соответствующее устройство вывода.
Для Intel будет полезна заметка http://www.forum.free-x.de/wbb/index.php?page=Thread&threadID=242.
(*) Согласно Feature Matrix for Free Radeon Drivers есть начальная реализация аппаратного видеоускорения через проект Gallium для адаптеров на чипе r300 (ATI R300/R400/R500). Но при этом mplayer vaapi требует ati-drivers.
Я не пробовал произвести данную процедуру, поскольку уже давно на свободных драйверах xf86-video-ati. Но по заявлениям, снижает нагрузку на процессор на 20%-30%. Я пользуюсь xv и пока что не жалуюсь на просмотр HD Video. Правда были проблемы, но они решились установкой -nocache в mplayer/smplayer. Ну ещё можно учесть не слишком слабый процессор AMD Athlon II x4.
Надеюсь данная заметка кому-нибудь пригодиться. Уж больно не просто обстоят дела с настройкой видео и 3D в линукс.
- Для комментирования войдите или зарегистрируйтесь
Ashl1 написал(а): Запускать
Если запускать через smplayer, указав ему в настройка устройство вывода vaapi и в доп опция -va vaapi, то mplayer крашится >_<
Лог maplyer в студию.
Лог mplayer в студию.
Новый оверлей для mplayer vaapi
Кстати говоря. Есть другой оверлей: xhub. В нём версия поновее:
media-video/mplayer-1.0_rc4_p20100213-r50
Взято из: http://bugs.gentoo.org/308871
Ashl1 написал(а): Кстати
а чем 9999 не устраивает? ))) только так и живу с ffmpeg и mplayer ))
# emerge -av @live-rebuild
и все 9999 обновились без проблем )))Я про версии с поддержкой
Я про версии с поддержкой vaapi. media-video/mplayer-9999 из официального portage не имеет use-флага vaapi.
Здесь смысл именно в этом
Нету лога, крашится сразу же
Нету лога, крашится сразу же при запуске.
Притом, если запускать не через smplayer а самого по себе, то всё работает.
А вообще, vaapi поддерживается ещё в vlc. И vlc в дереве есть. Его и использую сейчас
Попробуйте снова.
Нужно правильно выбрать устройства. Правильный путь - указать их в настройках самого SMplayer: Основные -> Видео и Основные -> Звук.
В Видео выбираем:
Устройство вывода: определено пользователем: vaapi:xv
В Звуке выбираем:
Устройство вывода: определено пользователем: vaapi
Скажите, пожалуйста, свою версию SMPlayer и MPlayer.
Думаю, логи всё же можно собрать. Для этого выберите в Настройках -> Дополнительно -> Отчёты:
1. Отчёт вывода SMplayer
2. Сохранять отчёт SMPlayer в файл
3. Отчёт вывода MPlayer
4. Автосохранение отчёта MPlayer в файл - укажите путь к файлу!
Плюс ко всему, запустите SMplayer из консоли и посмотрите вывод, который он туда пишет.
Интересно, с какого перепугу,
Интересно, с какого перепугу, вдруг -va vaapi у вас стало устройством вывода звука.
Да и не надо считать всех собеседников идиотами.
Методом тыка, научился ронять mplayer и без smplayer`а. Отладчик показал что сегфолт происходит внутри drm`ного модуля intel при использовании видеофильтров.
1. Очепятка 2. Извините, что
1. Очепятка
2. Извините, что Вас обидел. Просто чуть больше описанных действий не повредят, я думаю?
3. Ясно. У меня ATI, поэтому я не наблюдал таких проблем.
Почему?
Никто не скажет, почему
media-video/mplayer
с приблудой vaapi нетв основном дереве?
Подключил овеплей xhub, пробовал установить патченый mplayer - "404 - not found".
Буду, значить,
media-video/vlc
пробовать.Потому что vaapi нет в
Потому что vaapi нет в официальном mplayer. Насколько мне это описали, то потому что патчи не правятся, поэтому не могут быть включены в официальный mplayer.
because the person patching for it submitted their patches, got a review, got told to fix some things, never did...
as far as i am aware anyway.
Да, с оверлея xhub не устанавливается. Написал ему письмо.
И проблемы с оверлеем gentoo-quebec. Надеюсь, что разрешаться: http://bugs.gentoo.org/show_bug.cgi?id=346551
Цитата: Правда были проблемы,
Кстати, да. Я тоже был немало удивлен, что именно отключение кеширования позволило мне смотреть видео 1920x1080 без малейших тормозов на моем P4, в то время как с включенной опцией притормаживали даже 1280x720...
Нейтральность - высшее достижение сознания!
а мне нет
как не странно щас вот запустил файл с разрешением 1920*1080 в опциях smplayer поставил -nocache не помогло периодически притормаживается процессор intel Q6600 4 ядра, зато vlc воспроизводит на ура
Вообще, опцию -nocache
Вообще, опцию -nocache рекомендует сам mplayer. Когда видео тормозит он выводит дополнительную информацию по решению данных проблем.
А вообще, да. Не стоит забывать, что у VLC, Mplayer и Kaffeine разные движки.
Ashl1 написал(а): Не стоит
у них разные фротэнды, а вот бэкэнд один - библиотеки ffmpeg ;)
Поясните, пожалуйста, сей момент.
Так так так. У меня чувствуется пробел в знаниях. Где можно подробнее почитать об этом? Или сможете пояснить подробнее?
Потому что я всегда был в уверенности, что Mplayer имеет свой движок, Kaffeine - Xine, именно поэтому в нём не поддерживаются субтитры ASS/SSA, VLC - свой. Но все они могут при этом работать и через ffmpeg. То есть я говорю о прослойке между FFMpeg и выводом на экран, что каждый плеер сам реализует.
Поясните, пожалуйста, сей момент.
vmustik написал(а): как не
1. не забыл отключить loop?
2. указал количество потоков декодирования?
нет
а можно поподробнее как это сделать?
vmustik написал(а): а можно
man mplayer
... он на русском, т.ч. без проблем читается целиком ;)