Перейти к содержанию
    

Allwinner T113-s3 уделал HiFi4 DSP. Смеяться или плакать?

On 7/27/2022 at 4:45 PM, sasamy said:

это утверждение заставило меня проверить на a40i - на майнстримном ядре устанавливается первичный формат nv12 и не используется ротатор

 

Это в свою очередь сподвигло меня копать дальше... И накопал!  Удалось с H264 заставить работать выпрямление без использования  ротатора.

Причины были в следующем:

 

1. Самое главное :  ширина DDR была указана неверно в регистре  MACC_VE_CTRL (биты 16..17).  Было указано DDRTYPE_DDR3_32BITS, а надо DDRTYPE_DDR3_16BITS.  Для T113-s3.

Без этого декодер работает на прямом первичном формате неправильно.

 

2. Обязательно явно задать VE_PRIMARY_FB_LINE_STRIDE (линуксовый копипаст приводил выше)

 

После этого декодирование идеально, и никакой внешний буфер с ротатором - НЕ нужен!

 

vo.gif vo.gif vo.gif

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 27.07.2022 в 13:00, repstosw сказал:

После этого декодирование идеально, и никакой внешний буфер с ротатором - НЕ нужен!

А что с мешаниной кадров?

В 27.07.2022 в 13:00, repstosw сказал:

DDRTYPE_DDR3_16BITS

Хех, думал в Т113 все-таки 32 бита шина, а вон оно как... Жаль. По сути, как А13 получается, а не А10...

Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 7/27/2022 at 8:53 PM, mantech said:

А что с мешаниной кадров?

   

Эта проблема ушла сама собой, так как регистр буфера-ротатора более не нужен.

Тот исходник после декодирования возвращает указатель актуального буфера - использую его как базовый адрес для дисплейного буфера - устанавливаю по VSync или прерыванию TCON.

Процессор курит.  Всё делают декодер и TCON.

Адреса должны быть выровненны на 4K

 

Вот бы ещё H265 сделать... :i-m_so_happy:

Изменено пользователем repstosw

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 27.07.2022 в 14:16, repstosw сказал:

Процессор курит.  Всё делают декодер и TCON.

Я так понял, это в случае полноэкранного режима, когда декодер связан напрямую со слоем V ?

В 27.07.2022 в 14:16, repstosw сказал:

Вот бы ещё H265 сделать...

А он чем лучше?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 7/27/2022 at 9:43 PM, mantech said:

Я так понял, это в случае полноэкранного режима, когда декодер связан напрямую со слоем V ?

Да.  Но если поиграться с регистрами TCON, то слой можно позиционировать в любое место дисплея и масштабировать.

Делал это на V3s, работало. Здесь рисуется пара вертикальных полосок и базовый адрес плоскости меняется - создаётся иллюзия, что график перерисовывается весь. А на самом деле - нет. Нагрузки минимальны.

  

JPG.gif.3624dd23e94c7d8630fb753ee8425421.gif

 

On 7/27/2022 at 9:43 PM, mantech said:

А он чем лучше?

 

Жмёт на 10% меньше и современнее :lol2:

 

 

 

Изменено пользователем repstosw

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 7/27/2022 at 3:19 PM, repstosw said:

Здесь рисуется пара вертикальных полосок и базовый адрес плоскости меняется - создаётся иллюзия, что график перерисовывается весь. А на самом деле - нет. Нагрузки минимальны.

На GPU поинтересней выглядит, пример на майнстримном ядре, все драйверы открытые

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 28.07.2022 в 12:43, sasamy сказал:

На GPU поинтересней выглядит

Что за работу в этом случае делает GPU?

В 28.07.2022 в 12:43, sasamy сказал:

все драйверы открытые

В смысле? Mali таки расковыряли реверсеры?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 7/28/2022 at 1:57 PM, mantech said:

Mali таки расковыряли реверсеры?

достаточно давно но не все, на a40i работает

 

Quote

Lima covers the Utgard family (Mali-400/450) used on most Allwinner SoCs that have Mali GPUs.

 

https://linux-sunxi.org/Mali_Open_Source_Driver

 

On 7/28/2022 at 1:57 PM, mantech said:

Что за работу в этом случае делает GPU?

 

в общем случае платформо независимая абстракция оконной системы EGL и выскокоуровневая библиотека для работы с графикой OpeGL - что на ней сделано зависит от тулкита/фреймворка, 2D графика давно вся на 3D GPU отрисовывается. 2D ускорители если и используют то для композиторов  чтобы энергопотребление снизить  - например при просмотре видео. Приводил пример с выводом видео через оконную систему

 

gst-launch-1.0 filesrc location="./big_buck_bunny_1080p_h264.mov" ! qtdemux !
parsebin ! v4l2slh264dec ! video/x-raw,format=NV12 ! waylandsink fullscreen=1

 

Теоретически weston (оконная система) в данном случае должен напрямую кадры в видеослой DE2 отправлять через dma-buf. Можно это сделать напрямую с отключенной оконной системой

 

gst-launch-1.0 filesrc location="./big_buck_bunny_1080p_h264.mov" ! qtdemux !
parsebin ! v4l2slh264dec ! video/x-raw,format=NV12 ! kmssink

 

Но это тоже от системы зависит - на прыщеконтроллерах  всё равно ручной писанины много так что можно приспособить 2D ускорители, на ОС смысла с ними возиться нет особого.

Изменено пользователем sasamy

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 7/27/2022 at 8:00 PM, repstosw said:

После этого декодирование идеально, и никакой внешний буфер с ротатором - НЕ нужен!

vo.gif vo.gif vo.gif

 

Для декодирования MPEG2 тоже теперь он не нужен.

 

On 7/28/2022 at 8:57 PM, mantech said:

В смысле? Mali таки расковыряли реверсеры?

 

Добро пожаловать в мир игр и OpenGL.

Даже с открытым Линуксовым кодом будет ой как непросто перетащить всё в железо.

Изменено пользователем repstosw

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 28.07.2022 в 14:22, sasamy сказал:

в общем случае платформо независимая абстракция оконной системы EGL и выскокоуровневая библиотека для работы с графикой OpeGL - что на ней сделано зависит от тулкита/фреймворка, 2D графика давно вся на 3D GPU отрисовывается.

Это я все знаю, я спрашивал про то, чем именно в данном примере поможет ускоритель? Как я понимаю, там отрисовывается синусоида по пикселям, если это осциллограф, а не видеоролик в виде его, а чем может помочь ускоритель в пиксельной отрисовке, вот это мне не понятно...

В 28.07.2022 в 15:44, repstosw сказал:

Добро пожаловать в мир игр и OpenGL.

Ой, спасибо не надо))))))  Эт не мое совсем..  Вот сейчас лежат на столе 5 тачпанелей усб от разных производителей, и они не совместимы друг с другом от слова совсем, хотя все HID-совместимые, репорт у них 100километровый и все в кашу намешано, вот попробуй разберись... А это реальная задача от заказчика, так что не до игрушек)))

Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 7/28/2022 at 11:34 PM, mantech said:

А это реальная задача от заказчика, так что не до игрушек)))

 

Сочувствую

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 28.07.2022 в 18:28, repstosw сказал:

Сочувствую

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Заинтересовала вот такая штука: https://linux-sunxi.org/ACE_Register_guide

 

Буду благодарен, если кто-то подскажет, где можно накопать на неё более подробнее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 29.07.2022 в 10:43, repstosw сказал:

Заинтересовала вот такая штука

Что-то очень странное, особенно, если судить по описанию полей...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...