Ник:
Пароль:

Контакты

Cтатус Skype: starterkit.ru
тел.: (+7 3412) 478-448
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
E-mail: info@starterkit.ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:2
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:6
Форум » starterkit.ru » Embedded Linux
buildroot-2021.05 на базе ядра 5.10.9 для i.mx8
sasamy
Добавлено 14.06.2021 10:41 Редактировалось 25.06.2021 15:45
0
Сообщение: 1
sasamy
4.77

Пункты: 60133
Регистрация: 14.08.2009
25.06.2021 обновлено https://disk.yandex.ru/d/V9mhb1Fn1TPRXw

Четыре дефолтных конфига:

sk_min_defconfig - минимальная система, быстро собирается
sk_gst_defconfig - gstreamer и оконная система Weston
sk_qt5_defconfig - gstreamer, qt5 и Weston
sk_web_defconfig - gstreamer, qt5, Weston и wpewebkit

После дефолтного конфига

make sk_min_defconfig

нужно выбрать свою плату в меню

make menuconfig

Bootloaders --->
Starterkit i.MX8MM board (SK-iMX8Mini-MB + HDMI) --->

и собрать

make

В этой версии для аппаратного ускорения обработки видео используется gstreamer-imx,
в /root после сборки есть скриптs с примерами использования.

1) Воспроизведение видео

play.sh big_buck_bunny_1080p_surround.avi

В в дефолтном конфиге c qt есть примеры плееров

/usr/lib/qt/examples/multimedia/video/qmlvideo/qmlvideo
/usr/lib/qt/examples/multimedia/video/qmlvideofx/qmlvideofx

2) Захват видео с 4 каналов tw6869 и отображение на экране

comp4.sh

3) Захват видео с 4 каналов, сжатие h264 и сохрание в отдельных файлах

rec4.sh

4) Захват видео с 4 каналов, формирование общей картинки, сжатие h264 и трансляция по протоколу rtsp

rtsp4.sh

Для просмотра трансляции в VLC

Media->Open Network Stream

network URL -> rtsp://192.168.0.136:9099/stream

5) Web-браузер с аппартным ускорением графики и видео в режиме киоска (полноэкранный режим)

cog.sh youtube.com

пример использования плагина wpewebkit для QML

skru.sh

это программа на qml но работает как классический скрипт с шебанг

#!/usr/bin/qml

Запись на плату после сборки

./flash_emmc.sh
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 25.06.2021 15:40 Редактировалось 26.06.2021 15:31 Сообщение: 2
sasamy
4.77

Пункты: 60133
Регистрация: 14.08.2009
Добавлена сборка веб-бразуера с аппаратным ускорением графики и видео. Сборка собирается достаточно долго - порядка 6 часов на 4 ядерном процессоре с 8 гигабайт памяти и может остановиться из-за оом-киллера из-за нехватки памяти - нужно просто повторно набрать make

В дефолтных конфигах размер образа ФС сделан минимально достаточный чтобы при отладке быстрей прошивать устройство, если вы что-то добавляете в сборку или нужно больше места на emmc - нужно указать размер образа, например

make menuconfig

Filesystem images --->
(1024M) exact size

При активном использовании GPU и VPU, например при просмотре видео в yotube в HD качестве процессору нужно дополнительное охлаждение - у меня на отладке приклеен радиатор, иначе всё начинает тормозить - для охлаждения система снижает частоты CPU, GPU, VPU.
Спуститься к концу Подняться к началу
Персональная информация
kosyak©
Добавлено 23.07.2021 12:38 Сообщение: 3
kosyak©
0

Пункты: 995
Регистрация: 20.09.2016
Как запустить qt приложение на весь экран?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 23.07.2021 20:06 Редактировалось 23.07.2021 22:21 Сообщение: 4
sasamy
4.77

Пункты: 60133
Регистрация: 14.08.2009
Цитата
Как запустить qt приложение на весь экран?


https://forum.qt.io/topic/40282/solved-how-to-make-full-screen-in-qt-quick

второй вариант: без Weston запускать с бекендом eglfs

killall weston
export QT_QPA_PLATFORM=eglfs

./qtapp

третий вариант: использовать kiosk shell в weston

прописать в конфиге /etc/xdg/weston/weston.ini

Цитата

[core]
# i.MX: Disable idle timeout
shell=kiosk-shell.so
idle-time=0
use-g2d=1
...


любое приложение будет работать в режиме киоска на полный экран
Спуститься к концу Подняться к началу
Персональная информация
kosyak©
Добавлено 28.09.2021 11:33 Сообщение: 5
kosyak©
0

Пункты: 995
Регистрация: 20.09.2016
Если сразу после загрузки попробовать открыть последовательный порт (например /dev/ttymxc0)
В консоль вываливается такое сообщение:
Код

[ 18.895077] imx-uart 30860000.serial: We cannot prepare for the RX slave dma!

и данные из последовательного порта не читаются

Где-то через минуту после загрузки в консоль вываливаются такие сообщения:
Код

[ 62.487088] imx-sdma 302c0000.dma-controller: external firmware not found, using ROM firmware
[ 62.487244] imx-sdma 302b0000.dma-controller: external firmware not found, using ROM firmware
[ 62.497868] imx-sdma 30bd0000.dma-controller: loaded firmware 4.5

И после этого последовательный порт начинает работать в нормальном режиме
Как бы побороть такое поведение?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 28.09.2021 15:09 Сообщение: 6
sasamy
4.77

Пункты: 60133
Регистрация: 14.08.2009
Цитата

Как бы побороть такое поведение?


сообщение про фирмварь видел но не замечал чтобы это на что-то влияло, консоль работает. Можно встроить фирмварь в ядро тогда драйвер её сразу найдёт ещё при загрузке ядра

Цитата

make linux-menuconfig

Device Drivers --->
Generic Driver Options --->
Firmware loader --->

(sdma/sdma-imx7d.bin) Build named firmware blobs into the kernel binary
(/home/user/buildroot-2021.05-sk/output/build/firmware-imx-8.11/firmware) Firmware blobs root directory


здесь /home/user/ - путь к buildroot на вашей системе
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux