Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

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

User Info


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

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Вспомогательные средства
SK-VideoADC-Plug и SK-iMX6-MB (v4l2, linux)
vitvrn
Добавлено 19.11.2013 17:15
0
Сообщение: 1
vitvrn
1

Пункты: 1161
Регистрация: 04.06.2013
Пол: Мужчина
Из: Воронеж
Здравствуйте.
Имеется SK-iMX6-MB с установленным модулем SK-iMX6S-OEM.
Пытаюсь подключить SK-VideoADC-Plug, чтобы брать изображение (пока статические снимки) с аналоговой видеокамеры.
В Manual_SK-iMX6S-OEM.pdf указано, что плаг подключать нужно к разъему X6, но он уже занят процессорным модулем.
Пробовал подключить плаг к X3 (как показано на картинке со страницы модуля SK-iMX53-OEM).
В итоге не видно устройства /dev/video0 (есть только /dev/video16, 17, 18 - но, как я понял, это выходные видеоустройства).
После попытки создать его командой
mknod /dev/video0 c 81 0
прочитать с него что-то (с помощью хотя бы cat) не выходит.

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

Но если драйвер есть, а нет только утилит, то хотя бы устройство должно определяться этим драйвером, верно?
Дальше планирую попробовать с помощью ffmeg какого-нибудь получить картинку (или чего-нибудь вроде vgrabjj, uvccapture).
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 19.11.2013 18:27 Редактировалось 19.11.2013 18:28 Сообщение: 2
sasamy
4.70

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

Пробовал подключить плаг к X3


Судя по схеме MB туда и надо подключать

Цитата

В итоге не видно устройства /dev/video0


modprobe mxc_v4l2_capture

Цитата

Дальше планирую попробовать с помощью ffmeg какого-нибудь получить картинку (или чего-нибудь вроде vgrabjj, uvccapture).


Этими утилитами вы ничего не получите, надо плагины Freescale для Gstreamer или можно из imx-test взять примеры. В buildroot этого нет, недавно доделал buildroot до актуальных версий с Yocto с hardfp, но нет платы с solo так что не могу гарантировать что работает на ней. Выложу чуть поздней - может быть на неделе если будет время или на выходных. Можете соброать корневую в Yocto (бранч dora-next) но надо апгрейдится на ядро версии 3.0.35-4.1.0. Вообще хотел подождать выхода стабильного релиза buildroot который должен скоро появиться и тогда выложить.
Спуститься к концу Подняться к началу
Персональная информация
vitvrn
Добавлено 20.11.2013 14:50 Сообщение: 3
vitvrn
1

Пункты: 1161
Регистрация: 04.06.2013
Пол: Мужчина
Из: Воронеж
Спасибо, появились /dev/video0,1.
Цитата

из imx-test взять примеры

Это которые L3.0.35_4.1.0_DEMO_IMAGE_BSP?
Попробовал оттуда mxc_v4l2_overlay.out из imx-test_3.0.35-4.1.0_armel.deb, пока что не получилось, выдает:
Цитата

Running test case: ./mxc_v4l2_overlay.out -iw 640 -ih 480 -ow 640 -oh 480 -fr 30 -m 0 -t 5 -fg
ERROR: v4l2 capture: slave not found!
g_display_width = 640, g_display_height = 480
g_display_top = 0, g_display_left = 0
Unable to open /dev/video0
autorun-v4l2.sh: FAIL test case: ./mxc_v4l2_overlay.out -iw 640 -ih 480 -ow 640 -oh 480 -fr 30 -m 0 -t 5 -fg


Буду ждать Вашу версию buildroot, а пока с плагинами для Gstreamer как попробовать завести камеру?
Скачал L3.0.35_4.1.0_MM_CODECS с той же страницы у freescale, извлек файлы libmfw_gst_v4lsink.so и libmfw_gst_v4lsrc.so (из IMX_MMCODEC_3.0.35_4.1.0_BUNDLE_CODA.tar.gz/ubuntu codecs/IMX_MMCODEC_3.0.7-2.tar.gz/binary/gstreamer0.10-plugins-fsl_3.0.7.oneiric.201307302303_armel.deb) в /usr/lib/gstreamer-0.10 на плате, но так с ходу не прокатило:
Цитата

(gst-plugin-scanner:5156): GStreamer-WARNING **: Failed to load plugin '/usr/lib/gstreamer-0.10/libmfw_gst_v4lsrc.so': libgstfsl-0.10.so.0: cannot open sharey
(gst-plugin-scanner:5156): GStreamer-WARNING **: Failed to load plugin '/usr/lib/gstreamer-0.10/libmfw_gst_v4lsink.so': libgstfsl-0.10.so.0: cannot open shary
ERROR: pipeline could not be constructed: no element "mfw_v4lsrc".
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 20.11.2013 15:21 Редактировалось 20.11.2013 15:26 Сообщение: 4
sasamy
4.70

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

Буду ждать Вашу версию buildroot,


Чтобы протестировать камеру - можете не ждать, а просто отключить поддержку MIPI в ядре - все равно он не разведен ни на одной местной плате

make ARCH=arm menuconfig
Device Drivers --->
MXC support drivers --->
MXC MIPI Support --->
< > MIPI CSI2 support

и в board-файле исправить

arch/arm/mach-mx6/board-mx6q_sabrelite.c

static struct fsl_mxc_capture_platform_data capture_data[] = {
{
.csi = 0,
.ipu = 0,
.mclk_source = 0,
.is_mipi = 0,
}, {
.csi = 1,
.ipu = 0,
.mclk_source = 0,
.is_mipi = 0, // 1
},
};
.....

// imx6q_add_mipi_csi2(&mipi_csi2_pdata);

и пересобрать ядро. По крайней мере должно заработать в imx-test (mxc_v4l2_tvin.out), но в этой сборке нет их нового плагина tvsrc, а старый с которым с некоторым шаманством на i.mx53 заводился деинтерлейсинг поломан - там нет опций с которыми раньше работало.
Спуститься к концу Подняться к началу
Персональная информация
vitvrn
Добавлено 20.11.2013 19:19 Сообщение: 5
vitvrn
1

Пункты: 1161
Регистрация: 04.06.2013
Пол: Мужчина
Из: Воронеж
Пересобрал ядро (buildroot'ом из виртуальной машины со starterkit.ru) с этими исправлениями, плюс несколько модулей заменил в /lib/modules/3.0.35/kernel/drivers/media/video/mxc/capture, которые стали ругаться с новым ядром при запуске modprobe mxc_v4l2_capture.
Но все равно не открывался /dev/video0:
Цитата

# ./mxc_v4l2_tvin.out -ow 640 -oh 480 -ol 10 -ot 20 -f YU12
ERROR: v4l2 capture: slave not found!
[|/quote]
Потом додумался помимо modprobe mxc_v4l2_capture сделать modprobe adv7180_tvin - тогда наконец-то заработало.

А gstreamer пока не завелся.
Докинул ему еще libgstfsl-0.10.so.0.0.1, стал выдавать такую ошибку:
[quote]
# gst-launch mfw_v4lsrc device=/dev/video0 ! mfw_v4lsink
ERROR: pipeline could not be constructed: no element "mfw_v4lsrc".
Спуститься к концу Подняться к началу
Персональная информация
vitvrn
Добавлено 20.11.2013 19:19 Сообщение: 6
vitvrn
1

Пункты: 1161
Регистрация: 04.06.2013
Пол: Мужчина
Из: Воронеж
Цитата
Пересобрал ядро (buildroot'ом из виртуальной машины со starterkit.ru) с этими исправлениями, плюс несколько модулей заменил в /lib/modules/3.0.35/kernel/drivers/media/video/mxc/capture, которые стали ругаться с новым ядром при запуске modprobe mxc_v4l2_capture.
Но все равно не открывался /dev/video0:

# ./mxc_v4l2_tvin.out -ow 640 -oh 480 -ol 10 -ot 20 -f YU12
ERROR: v4l2 capture: slave not found!
[|/quote]
Потом додумался помимо modprobe mxc_v4l2_capture сделать modprobe adv7180_tvin - тогда наконец-то заработало.

А gstreamer пока не завелся.
Докинул ему еще libgstfsl-0.10.so.0.0.1, стал выдавать такую ошибку:
Цитата

# gst-launch mfw_v4lsrc device=/dev/video0 ! mfw_v4lsink
ERROR: pipeline could not be constructed: no element "mfw_v4lsrc".
[/quote]
Спуститься к концу Подняться к началу
Персональная информация
MalVal
Добавлено 21.11.2013 08:01 Сообщение: 7
MalVal
0

Пункты: 3131
Регистрация: 04.06.2013
Цитата
А gstreamer пока не завелся

https://community.freescale.com/message/341530#341530
там рекомендуют использовать tvsrc вместо mfw_v4lsrc. Правда исходников на плагин нет, есть собранная libmfw_gst_tvsrc.so.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 21.11.2013 08:16 Редактировалось 21.11.2013 08:19 Сообщение: 8
sasamy
4.70

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

Правда исходников на плагин нет, есть собранная libmfw_gst_tvsrc.so.


Исходники тоже есть (gst-fsl-plugins-3.10.9-1.0.0/src/misc/tvsrc/src)

http://starterkit-org.googlecode.com/files/gst-fsl-plugins-3.10.9-1.0.0.tar.gz
Спуститься к концу Подняться к началу
Персональная информация
vitvrn
Добавлено 21.11.2013 15:36 Редактировалось 21.11.2013 17:03 Сообщение: 9
vitvrn
1

Пункты: 1161
Регистрация: 04.06.2013
Пол: Мужчина
Из: Воронеж
Спасибо!
С этим плагином получилось примерно то, чего хотел.
Те бинарники, что я брал из ubuntu codecs, видимо, не подходят сюда (libmfw_gst_v4lsink.so стал требовать библиотек от иксов в конце концов, и дальше я пробовал *sink, бывшие в КФС изначально).
Получил кадр с видео потока, сжатый в jpeg:
Цитата

gst-launch-0.10 tvsrc num-buffers=4 ! jpegenc ! filesink location=/tmp/screenshot.jpg

num-buffers=4 потому, что на первых кадрах, пока камера включается, картинка не очень; но в этом случае приходится первые 3 вырезать из файла.

P.S. Кстати, со старым ядром (там, где есть поддержка MIPI) тоже работает.
Спуститься к концу Подняться к началу
Персональная информация
MalVal
Добавлено 14.01.2014 16:38 Сообщение: 10
MalVal
0

Пункты: 3131
Регистрация: 04.06.2013
vitvrn,
раз получилось запустить, можно подробнее просто библиотеку закинули или целиком gst-fsl-plugins-3.10.9-1.0.0 получилось собрать?
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Вспомогательные средства