Camera is recognised but no picture is captured

I’m not on the Dev team so I’m arms-length from the code. I only have hobby-experience and maybe half a dozen undergrad software courses to draw from. My favourite programming language is Solder.

I’ve escalated internally and my camera should be arriving soon. Looking forward to helping if I can.

1 Like

I don’t know if this is related but when I could not get my camera operating in KUbuntu 18.04 many LightBurn versions ago, but found it was functional in 16.04 I found it was related to gstreamer version. So to test it I extracted 7z version of LightBurn and created this script. It gets a version of gstreamer form 16.04 from my github repo( this requires git is installed ) and if it doesn’t find the ~/LightBurnLibs directory it creates it and then runs LightBurn with the gst_plugin_system_path set to that directory of gstreamer libs.

YMMV

#!/bin/bash
#
# if LightBurn update feature does not work, try installing libssl1.0-dev
#sudo apt install libssl1.0-dev

HERE=`pwd`

lbDIR=~/.local/share/LightBurn
lbDIR=~/LightBurn
lbCMD=$lbDIR/LightBurn
lbLibsDIR=~/LightBurnLibs
gstLibs=gstreamer-1.0

if [ ! -d $lbLibsDIR/$gstLibs ] ; then
  cd
  git clone http://github.com/dlarue/LightBurnLibs
  cd $HERE
fi

GST_PLUGIN_SYSTEM_PATH=${lbLibsDIR}/${gstLibs} $lbCMD
1 Like

Thank for the reply @JohnJohn – to clarify, was looking more for potential “inside” connections as Staff to inquire about library/code dependencies etc. – I’m looking at what @DougL replied with to see if that helps.

did you do an extended device listing to see if you can see what’s different between the two cameras other than pixel count? lsusb -v

Another option in Linux is the plugdev interface where you can setup a rule for a particular device, group of devices, etc and define actions related to device creation. /etc/udev/rules.d is where the rules reside and you can easily specify a device by its USB idProduce and idVendor numbers.

Hi everyone,

We only support Ubuntu 18.4 and 20.4 as those are both well within support ranges, and they run on newer hardware. LightBurn relies on the versions of GlibC and Gstreamer that come with these versions, if you don’t have these, you’re likely to have issues - particularly with camera. If you want to take a crack at using those versions on your particular flavor of Linux, feel free, but we will not be able to support those use cases.

1 Like

Will reproduce it the next days with 20.04, quite sure the problem existed before the update to 22.04 but just to be sure.

@Colin thanks for the reply … will go down the GlibC and Gstreamer path here – and hope to not have to try and downgrade Ubuntu. As a developer, I get the frustration of supporting lots of distros –

It would be great if there was some way the LB team could at least commit to testing the Long Term Support (LTS) releases of Ubuntu – and/or state on the website/docs which “flavors” and/or release versions are officially supported.

As @doppelgrau mentioned, from the various discussion threads, it looks like some folks have had the issue since moving from LTS 16.04 to LTS 18.04 … since the main version represents the release year, it seems like a long time to go (as a user) without updating the OS.

Anyway, hope that’s not seen as a complaint – I’m super appreciative of the Linux compatibility – and I get not wanting to support lots of distros – but if Ubuntu is going to be supported, it’d be great if there was a way to commit to supporting the LTS versions (released every 2 years). :grinning:

for a while LightBurn was saying they only supported 16.04 LTS but with only a minor tweak of the gstreamer system I’d been running on 18.04 LTS for a few years. And 18.04 is still getting updated and will into 2023. As you say, Lightburn now supports 18.04 AND 20.04 with 20.04 getting support into 2025.

Lots of the stuff I worked on also targeted 18.04 and only recently are some pointing to supporting 20.04. It can be a pain getting stuck in the middle but for a ‘working’ machine staying on a stable platform can be the way to go.

Might I recommend setting up a bootable ISO image in your grub bootloader for when you want to play with the latest Ubuntu software.

Advice taken and understood… but that wasn’t really my point :grinning: – I’m completely comfortable in admin decisions for my systems, and in this case, I needed to update the platform to solve other issues – I could not find any LightBurn documentation on Linux versions supported … I’m sure it’s there. Still, despite all my searching, I never found it. There are also some folks with camera issues on Windows and Mac, so initially it did not seem like an OS-specific problem.

So my main suggestion for the LB team are:

  • Make supported versions and/or any version limitations known – like perhaps on the Linux installation instructions page – since some users may already be on a version of Ubuntu later than the 2016 LTS release – the installation page says “Ubuntu 16+” – to me the “+” reads as “or later”.

  • If “Ubuntu” is a “supported” distro – then commit to running tests once every two years (with the Ubuntu LTS releases) to see what (if any) features break, and update the installation docs to include any known issues (like, Camera features do not work after 16.04)

Again, just suggestions – it is entirely likely that someone may feel safe in moving to the latest LTS version or already be on a newer version when discovering and downloading LightBurn. It is easy now, in 2022, to say that version 22.04 may be “cutting edge” during the same release year – but I think it’s fair to say that one would not expect that 2016 was the last known (non-work around) version for camera support.

Hope that makes sense … trying to just make helpful suggestions … had I known the camera wouldn’t work in my version, I might have made different OS decisions :grinning:

All the above said, it sounds like the next step is to figure out what GStreamer libraries need to be installed… thank you for providing part of the clues to this puzzle. :grinning:

Hey, I was pleasantly surprised to see a LightBurn Staff member say that 18.04 and 20.04 were supported versions. That’s a big deal in my book since I’ve seen it mentioned that the Linux user base for LightBurn is small and isn’t financially much help to fun development or at least that was what it was like a couple of years ago.

Valid point and yes it should be updated to say was was said here, that 18.04 and 20.04 were supported.

As for camera support in Linux it’s quite varied since there are many different camera interfaces. Consumer stuff like USB web cams usually run though the VideoForLinux2 interface last I poked at it but there are a few types of image chips and methods of encoding. Best bet is to find out what’s unique about the camera you are trying to use and then try to figure out where the problem lies. I don’t expect much from the LightBurn devs until there can be fingers pointed at where the problem lies.

And if you’ve got 22.04 installed, I would go for booting a 20.04 ISO and testing there. Something like this in /boot/grub/grub.cfg or better is in /etc/default/grub??? is how I do it so I’m not booting from a USB and it’s pretty quick boot.

menuentry ‘Lubuntu 20.04 ISO’ {
insmod part_gpt
insmod ext2
set isofile=‘complete_path_to_iso/lubuntu-20.04-desktop-amd64.iso’
loopback loop (hd0,gpt1)$isofile
linux (loop)/casper/vmlinuz boot=casper maybe=ubiquity iso-scan/filename=$isofile noprompt noeject
initrd (loop)/casper/initrd
}

We had an internal knowledge session today regarding Linux support, and how we communicate that to you folks (our lovely users).

We will be improving our clarity in our documentation in the next little while, and are always open to suggestions (via our Fider.io Page). Linux users are a small but mighty group of LightBurners and we strive to be clear and available to everyone should questions arise.

Given the super wide area of Linux flavours, building and maintaining a broad amount of OS coverage would be ideal, but does come at a cost . It’s a fine balancing act keeping all OS’es fully compatible (especially with the hellscape that is OS camera permissions/library support) while also developing new features and tools for everyone to use.

2 Likes

Just tried 20.04.5 LTS from a USB-Stick so 100% pure System, only installed Lightburn.
Same behavior. The camera for my laser is recognized but only black picture, an other camera on my PnP does work.

So the problem is not 22.04 but something else.

1 Like

At least now the devs know it’s happening on a system they have been testing on.

Have you tried the different camera settings in the Edit/Settings/Display & Units window?
There’s Camera Resolution( Default, Highest ) and there’s Camera View( B&W, Full Color ).

Tried all four combinations with the “Lens Calibration”, all the same behavior (black nothing).

I don’t know what the settings have to do with “Lens Calibration” but I just went and changed my settings to Default(from Highest) and B&W(from Color) and didn’t see any differences either. I restarted LightBurn incase it was required and still saw now change in the camera window once I select a camera.

But since I started from the commandline I did see these settings showup:
"FaceTime HD Camera (Built-in): " “/dev/video0”
res: 160 x 120
res: 176 x 144
res: 320 x 240
res: 352 x 288
res: 480 x 360
res: 640 x 480
res: 960 x 544
res: 1024 x 576
res: 1280 x 720
default: -1 x -1
Setting res: 1280 x 720

So maybe start from the commandline and see if that exposes any interesting information about your particular camera.

Choose Lens Calibration stating page as a tool to get a picture, probably any other option will also work.

Regarding the command line: see the thread, what additional information is missing? Just to avoid to spam this thread with the same information again and again.

FWIW, I’m booting Ubuntu 20.04.1 from iso and installed LightBurn 1.2.04.

I pulled out a half dozen cameras and 2 of them presented a black screen. I then installed LightBurn 7z file( into ~/LightBurn ), installed git and ran the bash script which gets some old gstreamer libs into ~/LightBurnLibs and both cameras showed images.

One camera would only show the image for 20-30 seconds and then would freeze with the console output looking like this:

"WebCam Instant " "/dev/video2"
res: 176  x  144
res: 352  x  288
default: -1  x  -1
Setting res: 352  x  288
Unable to query the parameter info: "Invalid argument"
Unable to query the parameter info: "Invalid argument"
Unable to query the parameter info: "Invalid argument"
CameraBin error: "Internal data stream error."

and this:

ubuntu@ubuntu:~/LightBurn$ v4l2-ctl -d /dev/video2 --list-formats-ext
ioctl: VIDIOC_ENUM_FMT
	Type: Video Capture

	[0]: 'JPEG' (JFIF JPEG, compressed)
		Size: Discrete 176x144
		Size: Discrete 352x288

The other camera which starts working and stays working after the old gstreamer libs:


"USB Camera (0553:0002)" "/dev/video2"
res: 160  x  120
res: 176  x  144
res: 320  x  240
res: 352  x  288
default: -1  x  -1
Setting res: 352  x  288
Unable to query the parameter info: "Invalid argument"
Unable to query the parameter info: "Invalid argument"
Unable to query the parameter info: "Invalid argument"

and this:


ubuntu@ubuntu:~/LightBurn$ v4l2-ctl -d /dev/video2 --list-formats-ext
ioctl: VIDIOC_ENUM_FMT
	Type: Video Capture

	[0]: 'CPIA' (GSPCA CPiA YUV, compressed)
		Size: Discrete 160x120
		Size: Discrete 176x144
		Size: Discrete 320x240
		Size: Discrete 352x288
1 Like

That’s an interesting “data point”.
Is the build system still 16.04? Maybe there are now some incompatible changes in some libraries.

Would be an interesting experiment, if building on 20.04 LTS changes the behavior.

What “build system” are you referring to?

LightBurn now supports 18.04 and 20.04 so I would think they are building on the lower and testing on 20.04.

My script gets gstreamer libs from 16.04…

#!/bin/bash
#
# if LightBurn update feature does not work, try installing libssl1.0-dev
#sudo apt install libssl1.0-dev

HERE=`pwd`

lbDIR=~/.local/share/LightBurn
lbDIR=~/LightBurn
lbCMD=$lbDIR/LightBurn
lbLibsDIR=~/LightBurnLibs
gstLibs=gstreamer-1.0

if [ ! -d $lbLibsDIR/$gstLibs ] ; then
  cd
  git clone http://github.com/dlarue/LightBurnLibs
  cd $HERE
fi

GST_PLUGIN_SYSTEM_PATH=${lbLibsDIR}/${gstLibs} $lbCMD

1 Like