Как запустить OV5647_mipi на iMX8QXP
Привет, у меня есть комплект iMX8QXP, и я хочу получить поток с камеры ov5647.
ДИСТРО = fsl-imx-wayland.
Контакт моей камеры ov5647 подключен к:
MIPI_CSI0_ACM_MCLK_OUT MIPI_CSI0_MCLK_OUT ALT0
MIPI_CSI0_CKN MIPI_CSI0_CLK_N ALT0MIPI_CSI0_CKP MIPI_CSI0_CLK_P ALT0MIPI_CSI0_DN0 MIPI_CSI0_DATA0_N ALT0MIPI_CSI0_DN1 MIPI_CSI0_DATA_DATA_MIPI_CSI0_DATA_MIPI2_CSI0_DATA_DATA
MIPI_CSI0_DN3 MIPI_CSI0_DATA3_N ALT0 MIPI_CSI0_DP0 MIPI_CSI0_DATA0_P ALT0 MIPI_CSI0_DP1 MIPI_CSI0_DATA1_P ALT0 MIPI_CSI0_DP2 MIPI_CSI_DATA_DATA_DATA_CSI0_DATA_DP2_CSI_DATA_DP2_CSI_DATA_DATA
Но контакты I2C не подключены. Это проблема? Могу ли я получить данные с камеры без инициализации через i2c?
Поэтому я не могу найти эти контакты (с именами сигналов контактных площадок) в./include/dt-bindings/pinctrl/pads-imx8qxp.h, и если я напишу эти контакты в формате контактной площадки, я получаю ошибку вместо записи MIPI_CSI0_ACM_MCLK_OUT. Я думаю, что эти контакты посвящены, и я не могу мультиплексировать. Я могу использовать scfw напрямую без изменений.
Итак, мой файл dts о камере mipi csi:
&iomuxc {
imx8qxp-mek {
pinctrl_mipi_csi0: mipicsi0grp{
fsl,pins = <
SC_P_MIPI_CSI0_MCLK_OUT_MIPI_CSI0_ACM_MCLK_OUT 0xC0000041
SC_P_MIPI_CSI0_GPIO0_01_LSIO_GPIO3_IO07 0xC0000041
SC_P_MIPI_CSI0_GPIO0_00_LSIO_GPIO3_IO08 0xC0000041
>;
};
pinctrl_parallel_csi: parallelcsigrp {
fsl,pins = <
SC_P_CSI_D00_CI_PI_D02 0xC0000041
SC_P_CSI_D01_CI_PI_D03 0xC0000041
SC_P_CSI_D02_CI_PI_D04 0xC0000041
SC_P_CSI_D03_CI_PI_D05 0xC0000041
SC_P_CSI_D04_CI_PI_D06 0xC0000041
SC_P_CSI_D05_CI_PI_D07 0xC0000041
SC_P_CSI_D06_CI_PI_D08 0xC0000041
SC_P_CSI_D07_CI_PI_D09 0xC0000041
SC_P_CSI_MCLK_CI_PI_MCLK 0xC0000041
SC_P_CSI_PCLK_CI_PI_PCLK 0xC0000041
SC_P_CSI_HSYNC_CI_PI_HSYNC 0xC0000041
SC_P_CSI_VSYNC_CI_PI_VSYNC 0xC0000041
SC_P_CSI_EN_LSIO_GPIO3_IO02 0xC0000041
SC_P_CSI_RESET_LSIO_GPIO3_IO03 0xC0000041
>;
};
};
};
&isi_0 {
interface = <6 0 2>; /* INPUT: 6-PARALLEL CSI */
parallel_csi;
status = "okay";
};
&cameradev {
parallel_csi;
status = "okay";
};
¶llel_csi {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
port@0 {
reg = <0>;
parallel_csi_ep: endpoint {
remote-endpoint = <&ov5647_ep>;
};
};
};
&isi_2 {
interface = <2 0 2>;
status = "okay";
};
&isi_1 {
status = "disabled";
};
&isi_3 {
status = "disabled";
};
&isi_4 {
status = "disabled";
};
&isi_5 {
status = "disabled";
};
&isi_6 {
status = "disabled";
};
&isi_7 {
status = "disabled";
};
&i2c0_csi0 {
clock-frequency = <100000>;
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
ov5647_mipi: ov5647_mipi@36 {
compatible = "ovti,ov5647_mipi";
reg = <0x36>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_mipi_csi0>;
clocks = <&clk IMX8QXP_24MHZ>;
clock-names = "csi_mclk";
csi_id = <0>;
pwn-gpios = <&gpio3 7 GPIO_ACTIVE_LOW>;
rst-gpios = <&gpio3 8 GPIO_ACTIVE_HIGH>;
mclk = <24000000>;
mclk_source = <0>;
mipi_csi;
status = "okay";
port {
ov5647_mipi_ep: endpoint {
remote-endpoint = <&mipi_csi0_ep>;
};
};
};
/delete-node/max9286_mipi@6A;
};
&mipi_csi_0 {
/delete-property/virtual-channel;
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
mipi_csi0_ep: endpoint {
remote-endpoint = <&ov5647_mipi_ep>;
data-lanes = <1 2>;
};
};
};
&i2c0_cm40 {
#address-cells = <1>;
#size-cells = <0>;
ov5647: ov5647@36 {
compatible = "ovti,ov5647";
reg = <0x36>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_parallel_csi>;
clocks = <&clk IMX8QXP_PARALLEL_CSI_MISC0_CLK>;
clock-names = "csi_mclk";
pwn-gpios = <&gpio3 2 GPIO_ACTIVE_LOW>;
rst-gpios = <&gpio3 3 GPIO_ACTIVE_HIGH>;
csi_id = <0>;
mclk = <24000000>;
mclk_source = <0>;
status = "okay";
port {
ov5647_ep: endpoint {
remote-endpoint = <¶llel_csi_ep>;
};
};
};
};
Затем я открываю поддержку ov5647_mipi через make menuconfig:
make menuconfig> Драйверы устройств> Поддержка мультимедиа> Устройства платформы V4L> Поддержка функций камеры MXC /V4L2 RPR> Поддержка камеры Omnivision ov5647 с использованием mipi > (*). Я добавляю y сюда.
Чем я загружаюсь, в / dev нет нового видео. (с драйвером ov5647 или без него не меняет размер видео. Есть видео12 и видео13)
И я меняю поддержку камеры Omnivision ov5647 с помощью mipi на m (модуль сборки), и я insmod ov5647_camera_mipi.ko
модуль загружен и strace вот так:
brk(NULL) = 0x1b168000
faccessat(AT_FDCWD, "/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=43413, ...}) = 0
mmap(NULL, 43413, PROT_READ, MAP_PRIVATE, 3, 0) = 0xffff8ba94000
close(3) = 0
openat(AT_FDCWD, "/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\300$\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=88392, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xffff8ba92000
mmap(NULL, 151928, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xffff8ba4c000
mprotect(0xffff8ba61000, 61440, PROT_NONE) = 0
mmap(0xffff8ba70000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0xffff8ba70000
close(3) = 0
openat(AT_FDCWD, "/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\260C\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1405888, ...}) = 0
mmap(NULL, 1477872, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xffff8b8e3000
mprotect(0xffff8ba33000, 65536, PROT_NONE) = 0
mmap(0xffff8ba43000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x150000) = 0xffff8ba43000
mmap(0xffff8ba49000, 11504, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xffff8ba49000
close(3) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xffff8b8e1000
mprotect(0xffff8ba43000, 12288, PROT_READ) = 0
mprotect(0xffff8ba70000, 4096, PROT_READ) = 0
mprotect(0x42f000, 4096, PROT_READ) = 0
mprotect(0xffff8baa1000, 4096, PROT_READ) = 0
munmap(0xffff8ba94000, 43413) = 0
brk(NULL) = 0x1b168000
brk(0x1b189000) = 0x1b189000
uname({sysname="Linux", nodename="imx8qxpmek", ...}) = 0
openat(AT_FDCWD, "/lib/modules/4.19.35-1.1.0+g0f9917c56d59/modules.softdep", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/proc/cmdline", O_RDONLY|O_CLOEXEC) = 3
read(3, "root=/dev/mmcblk1p2 ro rootwait "..., 4095) = 88
read(3, "", 4007) = 0
close(3) = 0
newfstatat(AT_FDCWD, ".", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/home/ov5647_camera_mipi.ko", {st_mode=S_IFREG|0644, st_size=28736, ...}, 0) = 0
openat(AT_FDCWD, "/home/ov5647_camera_mipi.ko", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177E", 2) = 2
lseek(3, 0, SEEK_SET) = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=28736, ...}) = 0
mmap(NULL, 28736, PROT_READ, MAP_PRIVATE, 3, 0) = 0xffff8ba97000
finit_module(3, "", 0) = 0
munmap(0xffff8ba97000, 28736) = 0
close(3) = 0
exit_group(0) = ?
+++ exited with 0 +++
и я попробовал video12 и video13, чтобы открыть камеру через lvds с помощью следующих команд:
Команда:
gst-launch-1.0 -v videotestsrc pattern = ball \! видео /x-raw, ширина =320, высота =240 \! videoconvert \! тройник \! v4l2sink device=/dev/video12 Вывод:
root@imx8qxpmek:/home# gst-launch-1.0 -v videotestsrc pattern = мяч \
! video/x-raw,width=320,height=240 \! videoconvert \! тройник \! v4l2sink device=/dev/video12 Установка для конвейера значения PAUSED ... ОШИБКА: конвейер не хочет приостанавливать работу. ОШИБКА: from element /GstPipeline:pipeline0/GstV4l2Sink:v4l2sink0: Устройство '/dev/video12' не является устройством вывода. Дополнительная отладочная информация: ../../../git/sys/v4l2/v4l2_calls.c(687): gst_v4l2_open (): /GstPipeline:pipeline0/GstV4l2Sink:v4l2sink0: Возможности: 0x4204000 Установка NULL для конвейера... Освобождение трубопровод...
корень @imx8qxpmek:/home#
Команда:
gst-launch-1.0 -v videotestsrc pattern = ball \! видео /x-raw, ширина =320, высота =240 \! videoconvert \! тройник \! v4l2sink device=/dev/video12 Вывод:
Установка для конвейера состояния ПРИОСТАНОВЛЕНА... Конвейер ПРЕДУПРЕЖДАЕТ... /GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0.GstPad:src: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(целое)240, частота кадров = (дробь)30/1, многоракурсный режим = (строка) моно, чересстрочный1 /GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw, format=(string)NV12, ширина = (int) 320, высота =(int)240, частота кадров = (дробь)30/1, multiview-mode=(строка) моно, interlace-mod1 /GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:src: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate=(дробь)30/1, multiview-mode=(string)mono, interlace1 /GstPipeline:pipeline0/GstTee:tee0.GstTeePad:src_0: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate=(дробь)30/1, мультиэкран -mode = (строка) моно, interlace-mode=(string1 /GstPipeline:pipeline0/GstV4l2Sink:v4l2sink0.GstPad:sink: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate=(дробь)30/1, multiview-mode=(строка)mono, interlace-mode=(1 /GstPipeline:pipeline0/GstTee:tee0.GstPad:sink: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate=(дробь)30/1, multiview-mode=(string)mono, interlace-mode=(string)pro1 /GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad: сток: caps = video /x-raw, format = (строка) NV12, ширина = (int) 320, высота =(int)240, частота кадров = (дробь)30/1, multiview-mode=(string)mono, interlac1 /GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate=(дробь)30 / 1, multiview-mode = (строка) моно, interlace-mo1 Конвейер ПРЕДНАЗНАЧЕН... Установка для конвейера ИСПОЛЬЗОВАНИЯ... Новые часы: GstSystemClock
^ Прерывание Чендлинга. -------------------------------------> CTRL + C Прерывание: остановка конвейера... Выполнение завершено после 0:01:03.000609625 Установка состояния конвейера на ПАУЗА... Установка состояния конвейера на ГОТОВ... Установка состояния конвейера на NULL ... Освобождение конвейера...
команда:
gst-launch-1.0 -e имя glvideomixer = микс фона = 3 сток_0::xpos=192 сток_0::ypos=0 сток_0:: ширина =640 сток_0:: высота =480 сток_0::zorder=1! "видео /x-raw, ширина =1024, высота =768"! glimagesink rotate-method=horizontal-flip v4l2src device=/dev/video13! видео /x-raw, ширина =640, высота =480! mix.sink_0 &
выход:
Установка для конвейера состояния ПРИОСТАНОВЛЕНИЕ... Конвейер активен и не требует PREROLL ... Получен контекст из элемента 'раковина': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"(GstGLDisplayWayland)\ gldisplaywayland0"; Настройка конвейера на PLAYING ... Новые часы: GstSystemClock ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error. Дополнительная отладочная информация: ../../../../git/libs/gst/base/gstbasesrc.c(3072): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: потоковая передача остановлена, причина не- согласованный (-4) EOS при выключении включен - ожидание EOS после ошибки Ожидание EOS...
команда:
gst-launch-1.0 -e имя glvideomixer = микс фона = 3 сток_0::xpos=192 сток_0::ypos=0 сток_0:: ширина =640 сток_0:: высота =480 сток_0::zorder=1! "видео /x-raw, ширина =1024, высота =768"! glimagesink rotate-method=horizontal-flip v4l2src device=/dev/video12! видео /x-raw, ширина =640, высота =480! mix.sink_0 &
Выход:
Установка конвейера на ПАУЗА... ОШИБКА: конвейер не хочет останавливаться. Получен контекст из элемента 'раковина': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"(GstGLDisplayWayland)\ gldisplaywayland0"; ОШИБКА: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Device '/dev/video12' не является устройством захвата. Дополнительная отладочная информация: ../../../git/sys/v4l2/v4l2_calls.c(679): gst_v4l2_open (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Возможности: 0x4204000 Установка NULL для конвейера... Освобождение трубопровод...
Помогите, пожалуйста. Жду вашего предложения.
Изменить 1:
Я меняю файл dts вот так:
&iomuxc {
imx8qxp-mek {
pinctrl_mipi_csi0: mipicsi0grp{
fsl,pins = <
SC_P_MIPI_CSI0_MCLK_OUT_MIPI_CSI0_ACM_MCLK_OUT 0xC0000041
SC_P_MIPI_CSI0_GPIO0_01_LSIO_GPIO3_IO07 0xC0000041
SC_P_MIPI_CSI0_GPIO0_00_LSIO_GPIO3_IO08 0xC0000041
>;
};
pinctrl_parallel_csi: parallelcsigrp {
fsl,pins = <
SC_P_CSI_D00_CI_PI_D02 0xC0000041
SC_P_CSI_D01_CI_PI_D03 0xC0000041
SC_P_CSI_D02_CI_PI_D04 0xC0000041
SC_P_CSI_D03_CI_PI_D05 0xC0000041
SC_P_CSI_D04_CI_PI_D06 0xC0000041
SC_P_CSI_D05_CI_PI_D07 0xC0000041
SC_P_CSI_D06_CI_PI_D08 0xC0000041
SC_P_CSI_D07_CI_PI_D09 0xC0000041
SC_P_CSI_MCLK_CI_PI_MCLK 0xC0000041
SC_P_CSI_PCLK_CI_PI_PCLK 0xC0000041
SC_P_CSI_HSYNC_CI_PI_HSYNC 0xC0000041
SC_P_CSI_VSYNC_CI_PI_VSYNC 0xC0000041
SC_P_CSI_EN_LSIO_GPIO3_IO02 0xC0000041
SC_P_CSI_RESET_LSIO_GPIO3_IO03 0xC0000041
>;
};
};
};
&isi_0 {
interface = <6 0 2>; /* INPUT: 6-PARALLEL CSI */
parallel_csi;
status = "disable";
};
&cameradev {
mipi_csi_0;
status = "okay";
};
¶llel_csi {
#address-cells = <1>;
#size-cells = <0>;
status = "disable";
port@0 {
reg = <0>;
parallel_csi_ep: endpoint {
remote-endpoint = <&ov5647_ep>;
};
};
};
&isi_2 {
interface = <2 0 2>;
status = "okay";
};
&isi_1 {
status = "disabled";
};
&isi_3 {
status = "disabled";
};
&isi_4 {
status = "disabled";
};
&isi_5 {
status = "disabled";
};
&isi_6 {
status = "disabled";
};
&isi_7 {
status = "disabled";
};
&i2c0_csi0 {
clock-frequency = <100000>;
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
ov5647_mipi: ov5647_mipi@36 {
compatible = "ovti,ov5647_mipi";
reg = <0x36>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_mipi_csi0>;
clocks = <&clk IMX8QXP_24MHZ>;
clock-names = "csi_mclk";
csi_id = <0>;
pwn-gpios = <&gpio3 7 GPIO_ACTIVE_LOW>;
rst-gpios = <&gpio3 8 GPIO_ACTIVE_HIGH>;
mclk = <24000000>;
mclk_source = <0>;
mipi_csi;
status = "okay";
port {
ov5647_mipi_ep: endpoint {
remote-endpoint = <&mipi_csi0_ep>;
};
};
};
/delete-node/max9286_mipi@6A;
};
&mipi_csi_0 {
virtual-channel;
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
mipi_csi0_ep: endpoint {
remote-endpoint = <&ov5647_mipi_ep>;
data-lanes = <1 2>;
};
};
};
&i2c0_cm40 {
#address-cells = <1>;
#size-cells = <0>;
ov5647: ov5647@36 {
compatible = "ovti,ov5647";
reg = <0x36>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_parallel_csi>;
clocks = <&clk IMX8QXP_PARALLEL_CSI_MISC0_CLK>;
clock-names = "csi_mclk";
pwn-gpios = <&gpio3 2 GPIO_ACTIVE_LOW>;
rst-gpios = <&gpio3 3 GPIO_ACTIVE_HIGH>;
csi_id = <0>;
mclk = <24000000>;
mclk_source = <0>;
status = "disabled";
port {
ov5647_ep: endpoint {
remote-endpoint = <¶llel_csi_ep>;
};
};
};
};
теперь мне кажется, модули: root @imx8qxpmek: / # find -name "ov5647"./sys/bus/i2c/drivers/ov5647_mipi./sys/firmware/devicetree/base/i2c@37230000/ov5647@36./sys/firmware / devicetree / base / i2c@58226000 / ov5647_mipi@36./sys/module/ov5647_camera_mipi
а когда ls / dev теперь есть два / dev / video. (видео0 и видео1).
Почему сейчас два видеоканала?
Также есть ошибка в моем файле dts. Это что:
корень @imx8qxpmek: / # dmesg | grep ov5
[3.667601] ov5647_mipi 16-0036: Ошибка применения настройки, все наоборот [ 3.674673] ov5647_mipi: зонд 16-0036 завершился неудачно с ошибкой -22
Я жду помощи.
Изменить 2: я удалил
SC_P_MIPI_CSI0_GPIO0_01_LSIO_GPIO3_IO07 0xC0000041
SC_P_MIPI_CSI0_GPIO0_00_LSIO_GPIO3_IO08 0xC0000041
из файла dts. (Я думаю, был конфликт контактов)
root@imx8qxpmek:/# dmesg | grep ov5
[ 3.641815] ov5647_mipi 16-0036: 16-0036 supply DOVDD not found, using dummy regulator
[ 3.649866] ov5647_mipi 16-0036: Linked as a consumer to regulator.0
[ 3.656255] ov5647_mipi 16-0036: 16-0036 supply DVDD not found, using dummy regulator
[ 3.664175] ov5647_mipi 16-0036: 16-0036 supply AVDD not found, using dummy regulator
[ 4.751720] ov5647_read_reg:write reg error:reg=300a
[ 4.756696] camera ov5647_mipi is not found
root@imx8qxpmek:/#
Также я пробую video0, video1 и video12 с помощью этой команды:
root@imx8qxpmek:/# gst-launch-1.0 v4l2src device=/dev/video12 glimagesink
Setting pipeline to PAUSED ...
ERROR: Pipeline doesn't want to pause.
Got context from element 'sink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayWayland\)\ gldisplaywayland0";
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Device '/dev/video12' is not a capture device.
Additional debug info:
../../../git/sys/v4l2/v4l2_calls.c(679): gst_v4l2_open (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
Capabilities: 0x4204000
Setting pipeline to NULL ...
Freeing pipeline ...
root@imx8qxpmek:/#
Но видео13 другое:
root@imx8qxpmek:/# gst-launch-1.0 v4l2src device=/dev/video13 glimagesink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Got context from element 'sink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayWayland\)\ gldisplaywayland0";
Caught SIGSEGV
Setting pipeline to PLAYING ...
New clock: GstSystemClock
#0 0x0000ffffbce2a1a0 in __GI___poll (fds=0x13944c50, nfds=2,
#1 0x0000ffffbcf4b22c in ?? () from /usr/lib/libglib-2.0.so.0
#2 0x0000ffffbcf4b640 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#3 0x0000ffffbd0da5bc in gst_bus_poll () from /usr/lib/libgstreamer-1.0.so.0
#4 0x0000000000404828 in ?? ()
#5 0x00000000004036a8 in ?? ()
#6 0x0000ffffbcd89264 in __libc_start_main (main=0x4032c0, argc=4,
#7 0x0000000000403d44 in ?? ()
Spinning. Please run 'gdb gst-launch-1.0 4434' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
Теперь снова жду помощи!!