Bug 412189 - No way to switch different cameras
Summary: No way to switch different cameras
Status: CONFIRMED
Alias: None
Product: kamoso
Classification: Applications
Component: general (show other bugs)
Version: 19.08.1
Platform: Arch Linux Linux
: NOR wishlist
Target Milestone: ---
Assignee: Aleix Pol
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-09-22 10:16 UTC by selfishjelly
Modified: 2022-06-08 17:54 UTC (History)
7 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
camera switch (228.92 KB, image/png)
2019-10-22 13:23 UTC, Aleix Pol
Details

Note You need to log in before you can comment on or make changes to this bug.
Description selfishjelly 2019-09-22 10:16:02 UTC
There is no option to select from different camera devices connected to a system (I vaguely remember there being one before, not sure)

STEPS TO REPRODUCE
1. connect more webcams to one device
2. open Kamoso

OBSERVED RESULT
Kamoso uses first camera (laptop integrated)

EXPECTED RESULT
Kamoso asks which camera to use / there is a button to switch cameras

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: 5.3.0-arch1-1-ARCH / 5.16.5-1
KDE Plasma Version: 5.16.5
KDE Frameworks Version: 5.62.0
Qt Version: 5.13.1
Comment 1 Nate Graham 2019-10-07 03:20:13 UTC
Are any of your webcams IR cameras? Kamoso specifically ignores those.
Comment 2 selfishjelly 2019-10-07 08:01:49 UTC
Oh, didn't realize there should be that option in current version, maybe it's only issue with my setup. 
It's regular (un)integrated webcam from some old laptop. Funny enough, I've removed IR filter to look into near IR but I hope we're not living in that dystopia yet.

    $ kamoso
    new device "Integrated Camera: Integrated C" "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.6/1-1.6:1.0/video4linux/video0" "/dev/video0"
    Playing device changed "/dev/video0"
    qrc:/qml/Mode.qml:5:28: Invalid property assignment: string expected - Assigning null to incompatible properties in QML is deprecated. This will become a compile error in future versions of Qt.
    error debugMessage: No file name specified for reading.
    error on: "filesrc location=\"\" ! decodebin ! imagefreeze ! videoconvert ! identity name=last" "../gstreamer/plugins/elements/gstfilesrc.c(524): gst_file_src_start (): /GstPipeline:pipeline0/GstFileSrc:filesrc0"
    error debugMessage: No file name specified for reading.
    error on: "filesrc location=\"\" ! decodebin ! imagefreeze ! videoconvert ! bulge name=last" "../gstreamer/plugins/elements/gstfilesrc.c(524): gst_file_src_start (): /GstPipeline:pipeline1/GstFileSrc:filesrc1"
    Stop

    Relevant dmesg:
    [ 1447.194577] usb 1-1.2: new high-speed USB device number 9 using ehci-pci
    [ 1447.350473] usb 1-1.2: New USB device found, idVendor=5986, idProduct=0137, bcdDevice= 0.05
    [ 1447.350478] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    [ 1447.350481] usb 1-1.2: Product: HP Webcam
    [ 1447.350484] usb 1-1.2: Manufacturer: Vimicro Co.,ltd
    [ 1447.357803] uvcvideo: Found UVC 1.00 device HP Webcam (5986:0137)
    [ 1447.363251] uvcvideo 1-1.2:1.0: Entity type for entity Processing 2 was not initialized!
    [ 1447.363258] uvcvideo 1-1.2:1.0: Entity type for entity Camera 1 was not initialized!
    [ 1447.363263] uvcvideo 1-1.2:1.0: Entity type for entity Extension 4 was not initialized!
    [ 1447.363510] input: HP Webcam: HP Webcam as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2/1-1.2:1.0/input/input25
Comment 3 Christoph Feck 2019-10-22 00:39:36 UTC
New information was added with comment #2; changing status for inspection.
Comment 4 Aleix Pol 2019-10-22 13:23:32 UTC
Created attachment 123408 [details]
camera switch

Are you sure you don't have this?
Comment 5 selfishjelly 2019-10-26 21:26:21 UTC
Sorry for the late reply
I'm 99.7% certain that there was no option to choose camera same as if it isn't even connected. To be absolutely sure and maybe to take a hilarious picture I wanted to look in the settings again with the webcam (left alone at home) but I ended up staying at dorm for another weekend and usb webcams are strangely not a common occurrence anymore. 

To the issue, it seems to be some bug with my setup (a bit messy arch installed on cerebooted thinkpad with webcam hw killswitch added) and not a missing important feature so if it doesn't affect many users I don't think it's really worth chasing down. Anyway, I can provide any logs if needed (hopefully, next week, with the second webcam).
Comment 6 physkets 2021-05-07 06:01:45 UTC
I have the same issue. I am sure that at some point in the past, it was possible to choose cameras.

I have a laptop that has an external webcam connected to it via a USB-Hub. Other programs like Firefox, Skype, etc. detect and can use this camera, but Kamoso does not list it as an option: only the integrated webcam.
Comment 7 H.H. 2021-05-11 12:35:22 UTC
For me, kamoso crashes at startup with the wrong default device, and it seems not to be configurable by command option. There should be an option like "-device /dev/video10"
Comment 8 Guilherme Dias da Fonseca 2021-06-25 13:35:08 UTC
I do have the option to switch the camera. When I click it, it gets selected but there's no dropdown list, which makes it impossible to switch with the mouse. However, if after selecting it I use the keyboard down arrow, then I can see the name of my other camera instead. Still, the video keeps showing my original camera, so the selection has no effect
Comment 9 Jean-Sébastien BEVILACQUA 2021-11-03 13:56:49 UTC
Hello,
Same problem for me.
I first thought that kamoso didn't recognize my camera but in fact, it's a UI problem with the dropdown list not working !
Select the dropdown and then use the keyboard and you will be able to select 2n camera.

Please fix this UI bug, it shouldn't be too hard.

Thanks
Jean-Sébastien
Comment 10 Joost Vandorp 2021-11-15 02:05:54 UTC
Hey everyone,

I've been trying to fix this issue as well. I have never worked with QT Framework or KDE before so I am not 100% sure how to fix this issue, especially part 1 of this bug. 

I found there are 2 bugs here:

1. QComboBox popup hides under a parent window, similar to what this user reported: https://bugreports.qt.io/browse/QTBUG-61804
  * see comment 9 on this bug report, https://bugs.kde.org/show_bug.cgi?id=412189#c9 
  * locally, I solved this in my fork by using buttons instead of the QComboBox

2. The Camera does not switch for me. The return on this line is the empty string: https://invent.kde.org/multimedia/kamoso/-/blob/master/src/device.cpp#L22

* I fixed it for myself my switching it back to using "device.path" instead of "object.id"

I made a short ~4 minute video to show you what is going on for me if anyone is interested.

https://www.youtube.com/watch?v=fJnKhqc2Vuc