Jump to content
    

No URI handler implemented for "rtsp".

Добрый день. Собрал своё ядро Linux 5.10.9

Добавил gstreamer  а также плагин для gst  BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP=y

пытаюсь достучаться до ip камеры

 

Цитата

# gst-launch-1.0 playbin uri=rtsp://192.168.10.20:554/live/ch01_0
Setting pipeline to PAUSED ...
ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: No URI handler implemented for "rtsp".
Additional debug info:
../gst/playback/gsturidecodebin.c(1449): gen_source_element (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0
ERROR: pipeline doesn't want to preroll.
Failed to set pipeline to PAUSED.
Setting pipeline to NULL ...
Freeing pipeline ...

Для "rtsp" не реализован обработчик URI. - ни как не могу понять чего не хватает в моей сборке? Накидал на коленке приложение в винде на QML, указал такой же источник

source: "rtsp://192.168.10.20:554/live/ch01_0"

Камера в винде работает. В Linux-e не хочет Linux с камерой работать не хочет. Какого-то пакета в окружении ядра не хватает или в самом ядре?

 

Share this post


Link to post
Share on other sites

В 12.06.2023 в 19:25, gosha-z сказал:

V4L2 в ядре вообще есть?

в make linux-menuconfig сделал поиск "v4l2"

Цитата

 

V4L2_FLASH_LED_CLASS=y

VIDEO_V4L2=y
VIDEO_V4L2_I2C=y
VIDEO_V4L2_SUBDEV_API=y
V4L2_FWNODE=m
VIDEOBUF2_V4L2=m

 V4L2_H264 [=n]

V4L2_JPEG_HELPER [=n]

V4L2_MEM2MEM_DEV [=n]  

VIDEOBUF2_V4L2 [=m] 

 VIDEO_AU0828_V4L2 [=n] 

VIDEO_EM28XX_V4L2 [=n] 

 VIDEO_MXC_PXP_V4L2 [=n]  

VIDEO_V4L2_MXC_INT_DEVICE [=n]       

VIDEO_V4L2_TPG [=n]

 

     

 

В 12.06.2023 в 19:25, gosha-z сказал:

С помощью v4l2-ctl можете снять raw image?

а как с помощью v4l2-ctl снимать имеджи с ip камеры?

Share this post


Link to post
Share on other sites

On 6/13/2023 at 6:50 AM, ericN said:

а как с помощью v4l2-ctl снимать имеджи с ip камеры?

v4l2-ctl --device path/to/video_device --set-fmt-video=width=width,height=height,pixelformat=format --stream-mmap --stream-to=path/to/output --stream-count=number_of_frames_to_capture

Share this post


Link to post
Share on other sites

1) Что такое "path/to/video_device"? Это uri? Как команда должна выглядеть в моём случае? Так?

v4l2-ctl --device rtsp://192.168.10.20:554/live/ch01_0

C width и height понятно.

2) Что такое pixelformat? Какие бывают пиксель форматы в ip? Как его задать?

3) --stream-to - это я понял файл... т.е. имедж файл куда будет записан имедж изображение захваченное с камеры, допустим сделать так --stream-to = ~/images/capt.bmp

тогда что такое --stream-count=number_of_frames_to_capture? В файл capt.bmp будет захвачено несколько имеджей изображений и они забиндятся в один bmp? Или такой командой будет захвачено не имедж, а видео?

Share this post


Link to post
Share on other sites

5 minutes ago, ericN said:

1) Что такое "path/to/video_device"? Это uri? Как команда должна выглядеть в моём случае? Так?

v4l2-ctl --device rtsp://192.168.10.20:554/live/ch01_0

C width и height понятно.

2) Что такое pixelformat? Какие бывают пиксель форматы в ip? Как его задать?

3) --stream-to - это я понял файл... т.е. имедж файл куда будет записан имедж изображение захваченное с камеры, допустим сделать так --stream-to = ~/images/capt.bmp

тогда что такое --stream-count=number_of_frames_to_capture? В файл capt.bmp будет захвачено несколько имеджей изображений и они забиндятся в один bmp? Или такой командой будет захвачено не имедж, а видео?

dev/video1 например. Вы же хотите стянуть равку с камеры ? Равок будет столько, сколько укажите в count

 

Share this post


Link to post
Share on other sites

В 10.01.2024 в 09:55, карамболь сказал:

dev/video1 например.

А что такое dev/video1? Нет, я понимаю, что в /dev/*** все устройства. Например в каком-нибудь телефоне есть у процессора CSI и на нем две камеры - фронтальная и тыльная, они будут /dev/cam0 и /dev/cam1. Но я спрашиваю про ip камеру. IP камер в dev нет.

 

В 10.01.2024 в 09:55, карамболь сказал:

Равок будет столько, сколько укажите в count

по рукой нет пока рабочей платы... не могу проверить... если --stream-to = ~/images/capt.bmp, то как несколько равок лягут в один файл?

Share this post


Link to post
Share on other sites

On 6/11/2023 at 9:38 AM, ericN said:

Добавил gstreamer  а также плагин для gst  BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP=y

возможно распространённая ошибка с buildroot - дополнительная опция у пакета добавляется после того как он уже собран  и снова запускается сборка а не пересборка всего пакета - в таком случае ничего не меняется потому что пакет BR2_PACKAGE_GST1_PLUGINS_GOOD для buildroot уже собран

On 6/11/2023 at 9:38 AM, ericN said:

Какого-то пакета в окружении ядра не хватает или в самом ядре?

с ядром это вряд ли связано - ошибка gstreamer, он не находит uri handler - это такой интерфейс в плагинах который говорит гстримеру что если встретишь такой идентификатор у источника данных обращайся ко мне я его буду обрабатывать. Например кастомный плагин для устройств  v4l2 imx

https://github.com/Freescale/gstreamer-imx/commit/e73587ba9e52dccaadcac6f68cbb50dc942e7953#diff-521be8529eb8e6755e3b03f3bda3ca522d7c4d39d03afddbb49e8e6a7502bcaeR541

они нужны для упрощения интеграции gstreamer в другие проекты чтобы автоматически строить конвееры обработки, в gstreamer можно спокойно обходиться и без них просто полный конвеер написать с указанием нужных плагинов

https://stackoverflow.com/questions/71824807/play-rtsp-stream-from-webcam-using-gstreamer/71837243#71837243

лично я в buildroot просто включаю все плагины base good bad у которых нет внешних зависимостей, те что с внешними зависимостями выборочно смотрю что мне надо из этого

Ещё попробуйте включить если не включен в меню gstreamer

[*]   enable plugin registry

не уверен что в нём дело - у меня он всегда включен

Edited by sasamy

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...