[PATCH] gst: provider: Do not hide v4l2deviceprovider
Umang Jain
umang.jain at ideasonboard.com
Mon May 6 16:33:53 CEST 2024
Hi Hou Qi
On 06/05/24 7:55 am, Hou Qi wrote:
> Currently libcameraprovider hides "v4l2deviceprovider" to avoid devices
> being duplicated. When running "gst-gst-device-monitor-1.0 Video",
> device monitor probes device providers one by one and sends bus message
> to gst-device-monitor to print device information.
>
> There is one case that libcameraprovider and v4l2deviceprovider both
> exit, libcameraprovider fails to probe device while v4l2deviceprovider
> probes successfully. "gst-device-monitor Video" will show nothing as
> v4l2deviceprovider is hidden and the bus message it uses to convey
> device information is dropped.
>
> To fix this issue, not to hide v4l2deviceprovider when do
> gst_libcamera_provider_init().
I think this just circumvents the issue rather than fixing it. I would
be more interested in knowing /why/ libcameraprovider can't probe it.
Can you explain on the use case / your case in this regards please? OR
Can you enable the debug and see if holds any clue on the problem ?
For e.g.
($) LIBCAMERA_LOG_LEVELS=0 GST_DEBUG=2 gst-device-monitor-1.0 Source/Video
Also, gst-device-monitor provides option to include hidden providers:
-i, --include-hidden Include devices from hidden device
providers.
>
> Signed-off-by: Hou Qi <qi.hou at nxp.com>
> ---
> src/gstreamer/gstlibcameraprovider.cpp | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/src/gstreamer/gstlibcameraprovider.cpp b/src/gstreamer/gstlibcameraprovider.cpp
> index ce3e0a08..454e7aaa 100644
> --- a/src/gstreamer/gstlibcameraprovider.cpp
> +++ b/src/gstreamer/gstlibcameraprovider.cpp
> @@ -227,10 +227,6 @@ gst_libcamera_provider_probe(GstDeviceProvider *provider)
> static void
> gst_libcamera_provider_init(GstLibcameraProvider *self)
> {
> - GstDeviceProvider *provider = GST_DEVICE_PROVIDER(self);
> -
> - /* Avoid devices being duplicated. */
> - gst_device_provider_hide_provider(provider, "v4l2deviceprovider");
> }
>
> static void
More information about the libcamera-devel
mailing list