← Back to team overview

debcrafters-packages team mailing list archive

[Bug 2107304] Re: Intel MIPI Camera not working out of the box on 25.04 where it did on 24.10

 

I can confirm that the following command works on my Lenovo Thinkpad X12
Detachable:

```
$ sudo cheese -d "Intel MIPI Camera"
[0:27:30.096047541] [8031]  INFO Camera camera_manager.cpp:327 libcamera v0.4.0
[0:27:30.395656189] [8111]  INFO SimplePipeline simple.cpp:1581 No sensor found for /dev/media0

(cheese:8031): GStreamer-CRITICAL **: 15:41:30.627:
gst_structure_get_value: assertion 'structure != NULL' failed

(cheese:8031): GStreamer-CRITICAL **: 15:41:30.627: gst_structure_get_value: assertion 'structure != NULL' failed
[0:27:30.521238422] [8031]  INFO Camera camera_manager.cpp:327 libcamera v0.4.0
[0:27:30.534204723] [8113]  INFO SimplePipeline simple.cpp:1581 No sensor found for /dev/media0
[0:27:30.657142790] [8129]  INFO Camera camera.cpp:1202 configuring streams: (0) 2592x1944-MJPEG
[0:27:30.691203479] [8129]  INFO Camera camera_manager.cpp:327 libcamera v0.4.0
[0:27:30.704863193] [8134]  INFO SimplePipeline simple.cpp:1581 No sensor found for /dev/media0
[0:27:30.805630492] [8128]  INFO Camera camera.cpp:1202 configuring streams: (0) 2592x1944-MJPEG

(cheese:8031): cheese-WARNING **: 15:41:33.159: A lot of buffers are being dropped.: ../libs/gst/base/gstbasesink.c(3146): gst_base_sink_is_too_late (): /GstCameraBin:camerabin/GstViewfinderBin:vf-bin/ClutterGstVideoSink:cluttergstvideosink0:
There may be a timestamping problem, or this computer is too slow.
```

When I list devices, I get the following:

```
$ sudo v4l2-ctl --list-devices
ipu6 (PCI:0000:00:05.0):
        /dev/video0
        /dev/video1
        /dev/video2
        /dev/video3
        /dev/video4
        /dev/video5
        /dev/video6
        /dev/video7
        /dev/video8
        /dev/video9
        /dev/video10
        /dev/video11
        /dev/video12
        /dev/video13
        /dev/video14
        /dev/video15
        /dev/video16
        /dev/video17
        /dev/video18
        /dev/video19
        /dev/video20
        /dev/video21
        /dev/video22
        /dev/video23
        /dev/video24
        /dev/video25
        /dev/video26
        /dev/video27
        /dev/video28
        /dev/video29
        /dev/video30
        /dev/video31
        /dev/video32
        /dev/video33
        /dev/video34
        /dev/video35
        /dev/video36
        /dev/video37
        /dev/video38
        /dev/video39
        /dev/video40
        /dev/video41
        /dev/video42
        /dev/video43
        /dev/video44
        /dev/video45
        /dev/video46
        /dev/video47
        /dev/video48
        /dev/video49
        /dev/video50
        /dev/video51
        /dev/video52
        /dev/video53
        /dev/video54
        /dev/video55
        /dev/video56
        /dev/video57
        /dev/video58
        /dev/video59
        /dev/video60
        /dev/video61
        /dev/video62
        /dev/video63
        /dev/media0

Integrated RGB Camera: Integrat (usb-0000:00:14.0-4):
        /dev/video64
        /dev/video65
        /dev/video66
        /dev/video67
        /dev/media1
        /dev/media2
```

The gst-1.0-launch command fails:

```
$ gst-launch-1.0 libcamerasrc ! autovideosinkideosink
Setting pipeline to PAUSED ...
[0:33:23.867036475] [17163]  INFO Camera camera_manager.cpp:327 libcamera v0.4.0
[0:33:23.880040845] [17172]  INFO SimplePipeline simple.cpp:1581 No sensor found for /dev/media0
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstLibcameraSrc:libcamerasrc0: Internal data stream error.
Additional debug info:
../src/gstreamer/gstlibcamerasrc.cpp(662): gst_libcamera_src_task_enter (): /GstPipeline:pipeline0/GstLibcameraSrc:libcamerasrc0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.031851304
Setting pipeline to NULL ...
Freeing pipeline ...
```

If I load the v4l2loopback, I am able to see the loopback device in the
list of devices

```
$ sudo modprobe v4l2loopback devices=1 video_nr=0 card_label="My Virtual Cam"
$ $ sudo v4l2-ctl --list-devices
ipu6 (PCI:0000:00:05.0):
[... same as before... 
]
My Virtual Cam (platform:v4l2loopback-000):
        /dev/video68
```

gst-1.0-launch still fails

```
$ gst-launch-1.0 libcamerasrc ! videoconvert ! video/x-raw,format=YUY2,width=1024,height=768,framerate=30/1 ! v4l2sink device=/dev/video68
Setting pipeline to PAUSED ...
[0:37:52.011972554] [17261]  INFO Camera camera_manager.cpp:327 libcamera v0.4.0
[0:37:52.024982864] [17267]  INFO SimplePipeline simple.cpp:1581 No sensor found for /dev/media0
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstLibcameraSrc:libcamerasrc0: Internal data stream error.
Additional debug info:
../src/gstreamer/gstlibcamerasrc.cpp(662): gst_libcamera_src_task_enter (): /GstPipeline:pipeline0/GstLibcameraSrc:libcamerasrc0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.032034978
Setting pipeline to NULL ...
Freeing pipeline ...
```

If there is a way to keep working towards a solution for the next ubuntu
release, or even to run a command similar to "cheese" that lets you use
the webcam in a webbrowser, please let me know what to try next. :)

-- 
You received this bug notification because you are a member of
Debcrafters packages, which is subscribed to libcamera in Ubuntu.
https://bugs.launchpad.net/bugs/2107304

Title:
  Intel MIPI Camera not working out of the box on 25.04 where it did on
  24.10

Status in ffmpeg package in Ubuntu:
  Opinion
Status in ipu6-drivers package in Ubuntu:
  Confirmed
Status in libcamera package in Ubuntu:
  Confirmed

Bug description:
  From discourse post:
  https://discourse.ubuntu.com/t/intel-mipi-camera-not-working-out-of-the-box-on-25-04-where-it-did-on-24-10/59072/1

  The ipu6 camera on a Dell Precision 5480 worked out-of-the-box on
  Ubuntu 24.10, but no longer does on 25.04-beta.  It was suggested on
  Discourse that this might be a regression in libcamera.  I personally
  don't understand the v4l/libcamera stack well enough to triage /
  route.

  Here's what I'm seeing --

  `ffplay /dev/video0` produces a video test image instead of actual
  video.

  However, gstreamer is able to show a good video stream via --

  $ gst-launch-1.0 libcamerasrc ! video/x-raw,width=1024,height=768 !
  autovideosink

  This is on 25.04 beta with libcamera 0.4 --

  $ lsb_release -rd
  Description:    Ubuntu Plucky Puffin (development branch)
  Release:        25.04

  $ apt-cache policy libcamera-v4l2
  libcamera-v4l2:
    Installed: (none)
    Candidate: 0.4.0-5ubuntu1
    Version table:
       0.4.0-5ubuntu1 500
          500 http://us.archive.ubuntu.com/ubuntu plucky/main amd64 Packages

  The cam util spews several errors + warnings, but does find the camera
  --

  $ cam -l
  [0:35:00.604727833] [36429]  INFO Camera camera_manager.cpp:327 libcamera v0.4.0
  [0:35:00.618451974] [36436]  WARN CameraSensor camera_sensor_legacy.cpp:354 'ov01a10 3-0036': Recommended V4L2 control 0x009a0922 not supported
  [0:35:00.618464560] [36436] ERROR V4L2 v4l2_subdevice.cpp:1127 'ov01a10 3-0036': Unable to get rectangle 2 on pad 0/0: Inappropriate ioctl for device
  [0:35:00.618467885] [36436]  WARN CameraSensor camera_sensor_legacy.cpp:401 'ov01a10 3-0036': The PixelArraySize property has been defaulted to 1280x800
  [0:35:00.618470480] [36436] ERROR V4L2 v4l2_subdevice.cpp:1127 'ov01a10 3-0036': Unable to get rectangle 1 on pad 0/0: Inappropriate ioctl for device
  [0:35:00.618472866] [36436]  WARN CameraSensor camera_sensor_legacy.cpp:412 'ov01a10 3-0036': The PixelArrayActiveAreas property has been defaulted to (0, 0)/1280x800
  [0:35:00.618478424] [36436] ERROR V4L2 v4l2_subdevice.cpp:1127 'ov01a10 3-0036': Unable to get rectangle 0 on pad 0/0: Inappropriate ioctl for device
  [0:35:00.618480400] [36436]  WARN CameraSensor camera_sensor_legacy.cpp:420 'ov01a10 3-0036': Failed to retrieve the sensor crop rectangle
  [0:35:00.618482222] [36436]  WARN CameraSensor camera_sensor_legacy.cpp:426 'ov01a10 3-0036': The sensor kernel driver needs to be fixed
  [0:35:00.618484025] [36436]  WARN CameraSensor camera_sensor_legacy.cpp:428 'ov01a10 3-0036': See Documentation/sensor_driver_requirements.rst in the libcamera sources for more information
  [0:35:00.618621741] [36436]  WARN CameraSensorProperties camera_sensor_properties.cpp:473 No static properties available for 'ov01a10'
  [0:35:00.618625448] [36436]  WARN CameraSensorProperties camera_sensor_properties.cpp:475 Please consider updating the camera sensor properties database
  [0:35:00.618630274] [36436]  WARN CameraSensor camera_sensor_legacy.cpp:594 'ov01a10 3-0036': Failed to retrieve the camera location
  [0:35:00.618632937] [36436]  WARN CameraSensor camera_sensor_legacy.cpp:616 'ov01a10 3-0036': Rotation control not available, default to 0 degrees
  [0:35:00.619180138] [36436]  WARN IPAProxy ipa_proxy.cpp:160 Configuration file 'ov01a10.yaml' not found for IPA module 'simple', falling back to 'uncalibrated.yaml'
  [0:35:00.619189114] [36436]  WARN IPASoft soft_simple.cpp:96 IPASoft: Failed to create camera sensor helper for ov01a10
  Available cameras:
  1: 'ov01a10' (\_SB_.PC00.LNK1)

  v4l2-ctl sees many ipu6 video devices.  This looks wrong, but I'm not
  sure what it should look like, and don't have a working system to
  compare against.

  $ v4l2-ctl --list-devices
  ipu6 ():
          /dev/video1
          /dev/video2
          /dev/video3
          /dev/video4
          /dev/video5
          /dev/video6
          /dev/video7
          /dev/video8
          /dev/video9
          /dev/video10
          /dev/video11
          /dev/video12
          /dev/video13
          /dev/video14
          /dev/video15
          /dev/video16
          /dev/video17
          /dev/video18
          /dev/video19
          /dev/video20
          /dev/video21
          /dev/video22
          /dev/video23
          /dev/video24
          /dev/video25
          /dev/video26
          /dev/video27
          /dev/video28
          /dev/video29
          /dev/video30
          /dev/video31
          /dev/video32

  ipu6 (PCI:0000:00:05.0):
          /dev/media0

  Virtual Camera (platform:v4l2loopback-000):
          /dev/video0

  dmesg shows the following ipu6 logs --

  $ sudo dmesg | grep ipu6
  [   10.600627] intel-ipu6 0000:00:05.0: enabling device (0000 -> 0002)
  [   22.119139] pci 0000:00:05.0: deferred probe pending: intel-ipu6: IPU6 bridge init failed
  [   22.822604] intel-ipu6 0000:00:05.0: Sending BOOT_LOAD to CSE
  [   22.840063] intel-ipu6 0000:00:05.0: Sending AUTHENTICATE_RUN to CSE
  [   22.909654] intel-ipu6 0000:00:05.0: CSE authenticate_run done
  [   22.909664] intel-ipu6 0000:00:05.0: IPU6-v3[a75d] hardware version 5

  ProblemType: Bug
  DistroRelease: Ubuntu 25.04
  Package: libcamera0.4 0.4.0-5ubuntu1
  ProcVersionSignature: Ubuntu 6.14.0-15.15-generic 6.14.0
  Uname: Linux 6.14.0-15-generic x86_64
  ApportVersion: 2.32.0-0ubuntu5
  Architecture: amd64
  CasperMD5CheckResult: pass
  CurrentDesktop: ubuntu:GNOME
  Date: Sun Apr 13 21:06:13 2025
  InstallationDate: Installed on 2024-07-25 (263 days ago)
  InstallationMedia: Ubuntu 22.04.4 v0.7.8 "Custom Jammy Jellyfish" (20240617)
  ProcEnviron:
   LANG=en_US.UTF-8
   PATH=(custom, no user)
   SHELL=/usr/bin/zsh
   TERM=xterm-ghostty
   XDG_RUNTIME_DIR=<set>
  SourcePackage: libcamera
  UpgradeStatus: Upgraded to plucky on 2025-04-11 (3 days ago)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ffmpeg/+bug/2107304/+subscriptions