Autoconnect request for webrtsp-camera-streamer

I would like to ask add autoconnect to webrtsp-camera-streamer snap for following plugs:

  • camera
  • media-control
  • opengl

Them required to get access to camera attached to CSI-2 interface on Raspberry PI devices and do hardware encoding with h264 codec.

opengl should be auto-connected automatically.

+1 for auto-connect of camera given the primary use-case of this snap. Regarding media-control could you please provide some more information on why this is required? Thanks.

1 Like

Regarding media-control could you please provide some more information on why this is required?

tbh, I don’t know. GStreamer pipeline just didn’t work without it when I did testing. It’s highly possible the reason is v4l2h264enc GStreamer element (i.e. it needs access to V4L2 API). I’m going to check one more time if it’s really required. Thanks!

yes, it’s not working without media-control. I see following in logs:

CameraStreamer[2117]: [0:03:17.123778447] [2117]  INFO Camera camera_manager.cpp:284 libcamera v0.2.0+120-eb00c13d
CameraStreamer[2117]: [0:03:17.124590888] [2146] ERROR MediaDevice media_device.cpp:483 /dev/media2[]: Failed to open media device at /dev/media2: Operation not permitted
CameraStreamer[2117]: [0:03:17.124720210] [2146]  INFO DeviceEnumerator device_enumerator.cpp:224 Unable to populate media device /dev/media2 (Operation not permitted), skipping
CameraStreamer[2117]: [0:03:17.124826042] [2146] ERROR MediaDevice media_device.cpp:483 /dev/media0[]: Failed to open media device at /dev/media0: Operation not permitted
CameraStreamer[2117]: [0:03:17.124865573] [2146]  INFO DeviceEnumerator device_enumerator.cpp:224 Unable to populate media device /dev/media0 (Operation not permitted), skipping
CameraStreamer[2117]: [0:03:17.124935781] [2146] ERROR MediaDevice media_device.cpp:483 /dev/media3[]: Failed to open media device at /dev/media3: Operation not permitted
CameraStreamer[2117]: [0:03:17.124978697] [2146]  INFO DeviceEnumerator device_enumerator.cpp:224 Unable to populate media device /dev/media3 (Operation not permitted), skipping
CameraStreamer[2117]: [0:03:17.125048905] [2146] ERROR MediaDevice media_device.cpp:483 /dev/media1[]: Failed to open media device at /dev/media1: Operation not permitted
CameraStreamer[2117]: [0:03:17.125086248] [2146]  INFO DeviceEnumerator device_enumerator.cpp:224 Unable to populate media device /dev/media1 (Operation not permitted), skipping
CameraStreamer[2117]: 0:00:03.715166148  2117   0x557e521b00 WARN            libcamerasrc gstlibcamerasrc.cpp:389:gst_libcamera_src_open:<libcamerasrc0> error: Could not find any supported camera on this system.
CameraStreamer[2117]: 0:00:03.715224064  2117   0x557e521b00 WARN            libcamerasrc gstlibcamerasrc.cpp:389:gst_libcamera_src_open:<libcamerasrc0> error: libcamera::CameraMananger::cameras() is empty

so it looks like media-control is mandatory for libcamera

Thanks for providing the extra info - yes I agree, it would appear that media-control is definitely needed as well.

+1 for auto-connect and use-of media-control for webrtsp-camera-streamer.

1 Like

+1 also from me for auto-connect camera and media-control interfaces as their use seems to be required and expected according to the snap name and functionality.

Thanks

1 Like