Bug 505059

Summary: Webcam image initialised but not updating (moving live image)
Product: [Applications] kamoso Reporter: Adam Reviczky <reviczky>
Component: generalAssignee: Aleix Pol <aleixpol>
Status: REPORTED ---    
Severity: normal CC: m.kurz
Priority: NOR    
Version First Reported In: 25.04.0   
Target Milestone: ---   
Platform: Debian unstable   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: Screenshot of Kamoso stuck on initial image from webcam
Screenshot from webcamtests.com about the Webcam Information

Description Adam Reviczky 2025-05-31 13:00:26 UTC
Created attachment 181929 [details]
Screenshot of Kamoso stuck on initial image from webcam

SUMMARY

Starting Kamoso will show a correct initial image but it is stuck showing that image and not a live picture from the camera.

STEPS TO REPRODUCE
1. Open Kamoso

OBSERVED RESULT

See attached screenshot of the application showing an initial image.
No live feed or updated image is then shown.

EXPECTED RESULT

Showing a live webcamera image.

SOFTWARE/OS VERSIONS
Operating System: Debian GNU/Linux 13
KDE Plasma Version: 6.3.4
KDE Frameworks Version: 6.13.0
Qt Version: 6.8.2
Kernel Version: 6.14.8-asahi-1-cy8aer0 (64-bit)
Graphics Platform: Wayland
Processors: 4 × Apple Avalanche (M2), 4 × Apple Blizzard (M2)
Memory: 15.3 GiB of RAM
Graphics Processor 1: Apple M2
Graphics Processor 2: llvmpipe
Product Name: Apple MacBook Air (13-inch, M2, 2022)
U-Boot Version: 2025.04-g1c04616dd38a-dirty

ADDITIONAL INFORMATION

Console output:
kamoso
QSocketNotifier: Can only be used with threads started with QThread
[0:16:33.012835923] [24977]  INFO Camera camera_manager.cpp:327 libcamera v0.4.0
[0:16:33.013266884] [24994] ERROR DmaBufAllocator dma_buf_allocator.cpp:119 Could not open any dma-buf provider
kf.kirigami: Failed to find a Kirigami platform plugin

(kamoso:24977): GStreamer-CRITICAL **: 13:38:20.300: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:20.300: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:20.313: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:21.659: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:23.018: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:24.377: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:25.736: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:27.096: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:28.455: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:28.828: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:29.814: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:31.173: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:32.538: _gst_util_uint64_scale_int: assertion 'num >= 0' failed
Stop

(kamoso:24977): GStreamer-CRITICAL **: 13:38:33.660: _gst_util_uint64_scale_int: assertion 'num >= 0' failed

(kamoso:24977): GStreamer-CRITICAL **: 13:38:33.664: _gst_util_uint64_scale_int: assertion 'num >= 0' failed
qrc:/qml/Main.qml:134: TypeError: Cannot read property 'recordingTime' of null

Device:
v4l2-ctl --list-devices

apple-isp (no bus info):
	/dev/media0

FaceTime HD Camera (platform:22a000000.isp):
	/dev/video0

The webcam works fine with gstreamer:
GST_V4L2_USE_LIBV4L2=1 gst-launch-1.0 v4l2src ! xvimagesink

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Redistribute latency...
ERROR: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: Output window was closed
Additional debug info:
../sys/xvimage/xvimagesink.c(586): gst_xv_image_sink_handle_xevents (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0
Execution ended after 0:00:05.531599002
Setting pipeline to NULL ...
Freeing pipeline ...
Comment 1 Adam Reviczky 2025-05-31 13:03:41 UTC
Created attachment 181930 [details]
Screenshot from webcamtests.com about the Webcam Information

The webcam also works fine in the browser via https://webcamtests.com/ giving a correct live image.
Comment 2 Adam Reviczky 2025-11-03 20:24:52 UTC
The underlying cause can be tracked at: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/4957