Автор Тема: Аппаратное ускорение для Kodi (VPU CedarX)  (Прочитано 1790 раз)

Оффлайн anakod

Аппаратное ускорение для Kodi (VPU CedarX)
« : Февраль 24, 2016, 04:49:37 am »
Приветствую уважаемых форумчан. Уже третий день пытаюсь собрать Kodi с аппаратным ускорением под Lubuntu. Судя по информации в интернете, пока что тема эта весьма новая и плохо проработанная, народ выкручивается как может (и как не может: http://www.orangepi.org/wiki/2015-01-15/81.html).

1. Я взял официальную сборку Коди и применил к ней патчи из OpenElec:
https://github.com/jernejsk/OpenELEC-OPi2/blob/master/projects/H3/patches/kodi/

1.1 Аппаратный кодек собирал из этих исходников:
https://github.com/leviathanch/media-codec

Со следующими поправками:
\sunxi-cedarx\LIBRARY\config.h
#define CONFIG_CHIP    OPTION_CHIP_1680

\sunxi-cedarx\LIBRARY\config.mk
CONFIG_CHIP = $(OPTION_CHIP_1680)

Результат:
orangepi@OrangePI:~/kodi$ ./kodi.bin
/home/orangepi/kodi/kodi-xrandr: Failed to get size of gamma for output default
debug  : awplayer <ve.c:157>: xxxxxxx firstMemchunk.size(0)
warning: awplayer <ve.c:632>: no bestChunk
error  : awplayer <sbm.c:70>: pSbmBuf == NULL.
error  : awplayer <vdecoder.c:315>: create stream buffer fail.
warning: awplayer <vdecoder.c:601>: pSbm of video stream 0 is NULL, RequestVideoStreamBuffer fail.
warning: awplayer <vdecoder.c:601>: pSbm of video stream 0 is NULL, RequestVideoStreamBuffer fail.
warning: awplayer <vdecoder.c:601>: pSbm of video stream 0 is NULL, RequestVideoStreamBuffer fail.
warning: awplayer <vdecoder.c:601>: pSbm of video stream 0 is NULL, RequestVideoStreamBuffer fail.
Судя по всему не может выделить память. Но при этом аудио играет.

1.2 То же самое, но взял готовый скомпилированный кодек из архива (который поставлялся с OpenELEC)

Результат: На вид как будто все работает, ошибок нет, аудио играет, но вместо видео черный экран. Куда копать когда не выдается абсолютно никаких уведомлений даже предположений нет.

2. На всякий случай собрал версию из под плеера Zidoo X1
https://github.com/zidootech/zidoo-kodi-14.2

Итоговая версия работает (правда видео показывается с кусками рабочего стола по краям - т.е. как будто бы не фулскрин хоть интерфейс и рисуется на весь экран), но аппаратное ускорение не наблюдается. Вообще ветка плохо собиралась, судя по всему никем не поддерживается и выложена производителем плеера, как мне кажется, исключительно для галочки. Думаю это плохой путь.

Результат: Работает софтверно а не хардверно, и к тому же криво.

3. Собрал http://github.com/rellla/xbmca10, ориентируясь на инструкцию http://linux-sunxi.org/XBMC_(outdated)

Результат:
Судя по всему теперь что-то не так с OpenGL ES, но возможно я ошибаюсь? Кодеки проверить не вижу возможности.

orangepi@OrangePI:~/xbmca$ ./xbmc.bin 
ERROR: Unable to create GUI. Exiting
Ошибка сегментирования
orangepi@OrangePI:~/xbmca$

4. На всякий случай до кучи собирал еще https://github.com/fflayol/xbmc указанный в том же вики (типа If you want an only A20 version you can use this repository). Но оно тоже выдавало ошибку и если честно, не похоже что там вообще аппаратный кодек встроен, судя по коду.

Если что конфигурил со следующими параметрами:
./configure --disable-gl --enable-gles --enable-alsa --disable-optical-drive --disable-dvdcss --disable-joystick --disable-vtbdecoder --disable-vaapi --disable-debug --enable-codec=cedarx --disable-vdpau  --prefix=/usr/local
Другие комбинации тоже пробовал (несколько), XBMCA собирал с оригинальными параметрами указанными там.

Думаю посмотреть внимательней новый проект: http://linux-sunxi.org/Cedrus но тут вроде как меньше кодеков поддерживается чем в оригинальной менее опенсурсной версии.

Просьба помочь с направлением поиска или хотя бы подсказать с какой стороны лучше начинать копать, очень хотелось бы для полной и комплексной системы иметь рабочий Kodi на борту (при чем не в урезанном OpenELEC, а на полноценной Lubuntu\Ubuntu Mate).

Заранее большое спасибо.