ERROR: pipeline doesn't want to preroll.

Date: 2025-06-06 04:23 pm (UTC)
From: [personal profile] nagmat84

Hans, first of all thank you for your great work. I ported your work to Gentoo and I was finally able to grab a video from the X1C cam with QCam from libcamera. I ported your kernel patches to 6.14.x-getoo and patches for Intel's usbio to Gentoo, I packaged libcamera 0.5.0 for Gentoo and at least the kernel/libcamera part seems to work. Yeah! I wished I could help more, but I am not much of a kernel programmer or embedded developer.

While qcam can grab a video from the OVTI08F4 sensor, GStreamer and Piperwire do not seem to work, in particular no user-land application (Kamoso, Firefox/Chrome, IMs) shows a camera.

gst-device-monitor-1.0 shows

Probing devices...

[0:20:00.491185629] [5667]  INFO Camera camera_manager.cpp:326 libcamera v0.5.0
[0:20:00.511750844] [5669] ERROR V4L2 v4l2_subdevice.cpp:1196 'ov08x40 4-0010': Unable to get rectangle 2 on pad 0/0: Inappropriate ioctl for device
[0:20:00.511779781] [5669]  WARN CameraSensor camera_sensor_legacy.cpp:401 'ov08x40 4-0010': The PixelArraySize property has been defaulted to 3856x2416
[0:20:00.511793232] [5669] ERROR V4L2 v4l2_subdevice.cpp:1196 'ov08x40 4-0010': Unable to get rectangle 1 on pad 0/0: Inappropriate ioctl for device
[0:20:00.511802727] [5669]  WARN CameraSensor camera_sensor_legacy.cpp:412 'ov08x40 4-0010': The PixelArrayActiveAreas property has been defaulted to (0, 0)/3856x2416
[0:20:00.511813631] [5669] ERROR V4L2 v4l2_subdevice.cpp:1196 'ov08x40 4-0010': Unable to get rectangle 0 on pad 0/0: Inappropriate ioctl for device
[0:20:00.511821823] [5669]  WARN CameraSensor camera_sensor_legacy.cpp:420 'ov08x40 4-0010': Failed to retrieve the sensor crop rectangle
[0:20:00.511830041] [5669]  WARN CameraSensor camera_sensor_legacy.cpp:426 'ov08x40 4-0010': The sensor kernel driver needs to be fixed
[0:20:00.511836688] [5669]  WARN CameraSensor camera_sensor_legacy.cpp:428 'ov08x40 4-0010': See Documentation/sensor_driver_requirements.rst in the libcamera sources for more information
[0:20:00.512216657] [5669]  WARN CameraSensorProperties camera_sensor_properties.cpp:463 No static properties available for 'ov08x40'
[0:20:00.512228592] [5669]  WARN CameraSensorProperties camera_sensor_properties.cpp:465 Please consider updating the camera sensor properties database
[0:20:00.512241917] [5669]  WARN CameraSensor camera_sensor_legacy.cpp:501 'ov08x40 4-0010': No sensor delays found in static properties. Assuming unverified defaults.
[0:20:00.515100062] [5669]  WARN IPAProxy ipa_proxy.cpp:177 Configuration file 'ov08x40.yaml' not found for IPA module 'simple', falling back to 'uncalibrated.yaml'
[0:20:00.515153213] [5669] ERROR V4L2 v4l2_subdevice.cpp:1196 'ov08x40 4-0010': Unable to get rectangle 0 on pad 0/0: Inappropriate ioctl for device
[0:20:00.515165374] [5669]  WARN CameraSensor camera_sensor_legacy.cpp:880 'ov08x40 4-0010': The analogue crop rectangle has been defaulted to the active area size

Device found:

        name  : \_SB_.PC00.LNK1
        class : Source/Video
        caps  : video/x-raw, format=RGBA, width=160, height=120
                ...
                video/x-raw, format=BGRx, width=[ 2, 3848, 2 ], height=[ 2, 2416, 2 ]
        gst-launch-1.0 libcamerasrc camera-name="\\_SB_.PC00.LNK1" ! ...

When I try gst-launch-1.0 libcamerasrc camera-name="\\_SB_.PC00.LNK1" ! xvimagesink I get the following result

LC_ALL=C gst-launch-1.0 libcamerasrc camera-name="\\_SB_.PC00.LNK1" ! xvimagesink
Setting pipeline to PAUSED ...
ERROR: from element /GstPipeline:pipeline0/GstAutoVideoSrc:autovideosrc0/
GstPipeWireSrc:autovideosrc0-actual-src-pipewir: stream error: no more input formats
Additional debug info:
../pipewire-1.4.2/src/gst/gstpipewiresrc.c(748): on_state_changed (): /
GstPipeline:pipeline0/GstAutoVideoSrc:autovideosrc0/
GstPipeWireSrc:autovideosrc0-actual-src-pipewir
ERROR: pipeline doesn't want to preroll.
Failed to set pipeline to PAUSED.
Setting pipeline to NULL ...
ERROR: from element /GstPipeline:pipeline0/GstAutoVideoSrc:autovideosrc0/
GstPipeWireSrc:autovideosrc0-actual-src-pipewir: Internal data stream error.
Additional debug info:
../gstreamer-1.24.11/libs/gst/base/gstbasesrc.c(3177): gst_base_src_loop (): /
GstPipeline:pipeline0/GstAutoVideoSrc:autovideosrc0/
GstPipeWireSrc:autovideosrc0-actual-src-pipewir:
streaming stopped, reason not-negotiated (-4)
ERROR: pipeline doesn't want to preroll.
Freeing pipeline ...

I googled this error messages found an article in the SUSE help forum which pointed back to your article "IPU6 camera support in Fedora 41". I checked all the referenced patches

However, all those patches are already included in the upstream versions which I use as the base for my Gentoo packages.

[personal profile] hans: Do you have any educated guess what might be missing? Or could you give me a hint how I could debug the problem?

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

hansdegoede: me (Default)
Hans de Goede

May 2025

S M T W T F S
    123
45678910
11121314151617
1819202122 2324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 15th, 2025 12:36 pm
Powered by Dreamwidth Studios