[Arm64-baikalm] Аппаратное декодирование видео

Nikolay Zhuravlev n.zhuravlev на edelweiss.msk.ru
Вт Май 25 13:12:19 MSK 2021


On Tue, May 25, 2021 at 05:16:43AM +0000, Чемякин Андрей Владимирович wrote:
> Добрый день!
> 
> Кто может объяснить историю возникновения проблемы указанной в wki (https://www.altlinux.org/Baikal-M)? Цитирую:
> 
> Аппаратное декодирование видео недоступно. Бинарные драйверы от Байкал Электроникс намертво привязаны к определенным версиям системных библиотек (glib2, pcre, libxml, и проч), так что невозможно обеспечить их функционирование в каком-либо дистрибутиве, кроме Debian 10
> 

Инфа устарела. В частности, мы ("Эдельвейс") немного допилили открытые
драйвера panfrost, там есть поддержка декодирования видео, через gpu,
и есть поддержка OpenGL. Правда, не работает WebGL. Пока непонятно,
почему - никто не разбирался. Кроме этого, есть еще закрытые драйвера от ARM,
которые как-то работают с Wayland/Weston:

- Бинарные библиотеки OpenGL и OpenCL c поддержкой Wayland/Weston:
    OpenGL ES 1.1, 2.0, 3.0.
    OpenCL 1.1.

- Бинарная библиотека OpenMAX IL и GStreamer-плагин для работы с
   видеодекодером. Поддерживаемые кодеки:
    VP8
    VP6
    Sorenson Spark (реализация стандарта Н.263)
    AVS
    MPEG4
    MPEG2
    MPEG1
    WMV9
    VC1
    H264
    HEVC (H265)

У закрытых драйверов есть некоторые ограничения, типичные для бинарных
блобов. Несколько неудобно, что они поддерживают только Wayland, а не
Иксы. Поддерживают только GStreamer, а не ffmpeg, допустим. 

Поэтому, собственно, был большой интерес именно к поддержке в открытых
драйверах panfrost.  Набор патчей c поддержкой графического ядра Mali
T628 для Mesa 20.2, Mesa 21 уже есть.

> Поясняю. Аппаратное декодирование для нас важно, т.е. сам чип
> планируется использовать для обработки видео в клиенте SIP, а также
> в некоторых других приложениях.

Там в железе нет аппаратной поддержки кодирования видео - только
декодер, насколько я понимаю. Если только удастся ядро GPU как-то
для этого задействовать. Либо надеяться на восемь ядер ЦПУ.

-- 
WBR, Nick Zhuravlev
Software Developer
www.edelweiss-tech.ru



Подробная информация о списке рассылки Arm64-baikalm