Please help with droidcam

Good day guys.

I have been trying for hours to get droidcam to work. Droidcam is a software that can use your cellphone as a webcam. very neat and handy if there is a shortage in webcams where you live.

I will give as much info as I can on my system and what I have done.

[ferret@ferret-ms7b07 ~]$ neofetch
**██████████████████ ████████ ferret@ferret-ms7b07 **
**██████████████████ ████████ -------------------- **
**██████████████████ ████████ OS: Manjaro Linux x86_64 **
**██████████████████ ████████ Host: MS-7B07 1.0 **
**████████ ████████ Kernel: 5.8.3-2-MANJARO **
**████████ ████████ ████████ Uptime: 8 hours, 16 mins **
**████████ ████████ ████████ Packages: 1322 (pacman) **
**████████ ████████ ████████ Shell: bash 5.0.18 **
**████████ ████████ ████████ Resolution: 1366x768 **
**████████ ████████ ████████ DE: Xfce 4.14 **
**████████ ████████ ████████ WM: Xfwm4 **
**████████ ████████ ████████ WM Theme: Matcha-sea **
**████████ ████████ ████████ Theme: Adwaita-dark [GTK2], Adwaita [GTK3] **
████████ ████████ ████████ Icons: Papirus-Maia [GTK2], Adwaita [GTK3] **
** Terminal: xfce4-terminal **
** Terminal Font: Monospace 12 **
** CPU: AMD Ryzen 3 3200G (4) @ 3.175GHz **
** GPU: AMD ATI 29:00.0 Picasso **
** Memory: 1606MiB / 3440MiB

strong text

[ferret@ferret-ms7b07 ~]$

That is my system

I have been following info on

droidcam/linux at master · aramg/droidcam · GitHub
GitHub - umlaeute/v4l2loopback: v4l2-loopback device
libjpeg-turbo/BUILDING.md at 2.0.5 · libjpeg-turbo/libjpeg-turbo · GitHub

[ferret@ferret-ms7b07 ~]$ lsmod
Module Size Used by
v4l2loopback 45056 0
videodev 274432 1 v4l2loopback
fuse 139264 3
snd_usb_audio 315392 2
snd_usbmidi_lib 40960 1 snd_usb_audio
snd_rawmidi 45056 1 snd_usbmidi_lib
mousedev 24576 0
snd_seq_device 16384 1 snd_rawmidi
mc 61440 2 videodev,snd_usb_audio
rfkill 28672 2
joydev 28672 0
input_leds 16384 0
squashfs 69632 0
loop 36864 0
edac_mce_amd 32768 0
kvm 847872 0
amdgpu 5853184 8
irqbypass 16384 1 kvm
crct10dif_pclmul 16384 1
crc32_pclmul 16384 0
ghash_clmulni_intel 16384 0
aesni_intel 372736 0
wmi_bmof 16384 0
crypto_simd 16384 1 aesni_intel
nls_iso8859_1 16384 1
snd_hda_codec_realtek 139264 1
nls_cp437 20480 1
snd_hda_codec_generic 98304 1 snd_hda_codec_realtek
cryptd 24576 2 crypto_simd,ghash_clmulni_intel
vfat 24576 1
ledtrig_audio 16384 2 snd_hda_codec_generic,snd_hda_codec_realtek
snd_hda_codec_hdmi 73728 1
glue_helper 16384 1 aesni_intel
fat 86016 1 vfat
rapl 16384 0
snd_hda_intel 57344 3
gpu_sched 40960 1 amdgpu
snd_intel_dspcfg 24576 1 snd_hda_intel
i2c_algo_bit 16384 1 amdgpu
pcspkr 16384 0
snd_hda_codec 167936 4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
ttm 122880 1 amdgpu
snd_hda_core 106496 5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
sp5100_tco 20480 0
snd_hwdep 16384 2 snd_usb_audio,snd_hda_codec
i2c_piix4 28672 0
drm_kms_helper 262144 1 amdgpu
k10temp 16384 0
tpm_crb 20480 0
snd_pcm 147456 5 snd_hda_codec_hdmi,snd_hda_intel,snd_usb_audio,snd_hda_codec,snd_hda_core
cec 73728 1 drm_kms_helper
r8169 98304 0
tpm_tis 16384 0
rc_core 61440 1 cec
ccp 118784 0
realtek 24576 1
snd_timer 45056 1 snd_pcm
tpm_tis_core 32768 1 tpm_tis
syscopyarea 16384 1 drm_kms_helper
libphy 151552 2 r8169,realtek
snd 114688 22 snd_hda_codec_generic,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_usb_audio,snd_usbmidi_lib,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_pcm,snd_rawmidi
sysfillrect 16384 1 drm_kms_helper
soundcore 16384 1 snd
tpm 77824 3 tpm_tis,tpm_crb,tpm_tis_core
sysimgblt 16384 1 drm_kms_helper
fb_sys_fops 16384 1 drm_kms_helper
rng_core 16384 2 ccp,tpm
gpio_amdpt 20480 0
pinctrl_amd 32768 0
evdev 28672 16
wmi 36864 1 wmi_bmof
mac_hid 16384 0
drm 589824 8 gpu_sched,drm_kms_helper,amdgpu,ttm
uinput 20480 0
agpgart 53248 2 ttm,drm
crypto_user 16384 0
ip_tables 36864 0
x_tables 53248 1 ip_tables
uas 32768 0
usb_storage 77824 1 uas
btrfs 1523712 2
blake2b_generic 20480 0
libcrc32c 16384 1 btrfs
crc32c_generic 16384 0
xor 24576 1 btrfs
hid_generic 16384 0
usbhid 65536 0
hid 143360 2 usbhid,hid_generic
raid6_pq 122880 1 btrfs
crc32c_intel 24576 3
xhci_pci 20480 0
xhci_pci_renesas 20480 1 xhci_pci
xhci_hcd 286720 1 xhci_pci
[ferret@ferret-ms7b07 ~]$

The loopback is there.

[ferret@ferret-ms7b07 ~]$ sudo pacman -Q libjpeg
**[sudo] password for ferret: **
libjpeg-turbo 2.0.5-1
[ferret@ferret-ms7b07 ~]$

Libjpeg-turbo is installed

[ferret@ferret-ms7b07 linux]$ pwd
/home/ferret/Downloads/droidcam-1.4/linux
[ferret@ferret-ms7b07 linux]$ make
g++ -std=c++11 -x c++ -Wall -fPIC -no-pie src/droidcam-cli.c src/connection.c src/settings.c src/decoder.c src/decoder_snd.c src/decoder_v4l2.c src/av.c src/usb.c -I/opt/libjpeg-turbo/include /opt/libjpeg-turbo/libgetconf LONG_BIT/libturbojpeg.a pkg-config --libs --cflags libswscale libavutil -lspeex -lasound -lpthread -lm -lusbmuxd -o droidcam-cli
g++: error: /opt/libjpeg-turbo/lib64/libturbojpeg.a: No such file or directory
make: *** [Makefile:37: droidcam-cli] Error 1
[ferret@ferret-ms7b07 linux]$

I still get this error

I think it might have something to do with the dependencies because when I try to install dependencies:

[ferret@ferret-ms7b07 ~]$ sudo pacman -S libavutil-dev
**[sudo] password for ferret: **
error: target not found: libavutil-dev
[ferret@ferret-ms7b07 ~]$ sudo pacman -S libswscale-dev
error: target not found: libswscale-dev
[ferret@ferret-ms7b07 ~]$ sudo pacman -S libasound2-dev
error: target not found: libasound2-dev
[ferret@ferret-ms7b07 ~]$ sudo pacman -S libspeex-dev
error: target not found: libspeex-dev
[ferret@ferret-ms7b07 ~]$ sudo pacman -S libusbmuxd-dev
error: target not found: libusbmuxd-dev
[ferret@ferret-ms7b07 ~]$ sudo pacman -S libplist-dev
error: target not found: libplist-dev
[ferret@ferret-ms7b07 ~]$

None of them is found.

I’m lost. Please help. I have been going at this for hours

Better follow the HowTo posted in this forum:

1 Like

Thank you. I’ll try that

Format your post correctly, see How to provide good information

Those dependencies probably are taken from Ubuntu, Fedora or other non-Arch Linux. In Manjaro those packages may appear under other names or include inside other packages.

Ah. I’ll look into it

Here is how I installed it and use it.

I use the aur dkms package which adds the module for all the kernels(5.8 and 5.4 for me) too.

Then for loading the kernel module and getting 720p I use the following command:
sudo insmod /lib/modules/`uname -r`/kernel/drivers/misc/v4l2loopback-dc.ko.xz width=1280 height=720

Then connecting the phone, running the app, connecting from the PC with droidcam-gui works for me everywhere (including OBS, skype, zoom etc.).

Guys. I tried both solutions. And I’m about to pass out XD I will try again with a fresh mind after some sleep.

This was the suggestion fromfreggel.doe

Summary

[ferret@ferret-ms7b07 droidcam-dkms-git]$ cd ~
[ferret@ferret-ms7b07 ~]$ cd droidcam
[ferret@ferret-ms7b07 droidcam]$ makepkg -is
==> WARNING: The package group has already been built, installing existing packages…
==> Installing droidcam package group with pacman -U…
loading packages…
warning: droidcam-1:1.4-2 is up to date – reinstalling
warning: v4l2loopback-dc-dkms-1:1.4-2 is up to date – reinstalling
resolving dependencies…
looking for conflicting packages…

Packages (2) droidcam-1:1.4-2 v4l2loopback-dc-dkms-1:1.4-2

Total Installed Size: 0.21 MiB
Net Upgrade Size: 0.00 MiB

:: Proceed with installation? [Y/n] y
(2/2) checking keys in keyring [##############################################] 100%
(2/2) checking package integrity [##############################################] 100%
(2/2) loading package files [##############################################] 100%
(2/2) checking for file conflicts [##############################################] 100%
(2/2) checking available disk space [##############################################] 100%
:: Running pre-transaction hooks…
(1/1) Remove upgraded DKMS modules
==> dkms remove --no-depmod -m v4l2loopback-dc -v 1.4 -k 5.6.19-3-rt12-MANJARO
rmdir: failed to remove ‘extramodules’: Not a directory
==> dkms remove --no-depmod -m v4l2loopback-dc -v 1.4 -k 5.8.3-2-MANJARO
rmdir: failed to remove ‘extramodules’: Not a directory
==> Unable to remove module v4l2loopback-dc/1.4 for kernel 5.4.60-2-MANJARO: Not found in dkms status output.
==> Unable to remove module v4l2loopback-dc/1.4 for kernel 5.7.17-2-MANJARO: Not found in dkms status output.
==> Unable to remove module v4l2loopback-dc/1.4 for kernel 5.9.0-1-MANJARO: Not found in dkms status output.
:: Processing package changes…
(1/2) reinstalling v4l2loopback-dc-dkms [##############################################] 100%
(2/2) reinstalling droidcam [##############################################] 100%
:: Running post-transaction hooks…
(1/3) Arming ConditionNeedsUpdate…
(2/3) Install DKMS modules
==> dkms install --no-depmod -m v4l2loopback-dc -v 1.4 -k 5.6.19-3-rt12-MANJARO
==> dkms install --no-depmod -m v4l2loopback-dc -v 1.4 -k 5.8.3-2-MANJARO
==> depmod 5.8.3-2-MANJARO
==> depmod 5.6.19-3-rt12-MANJARO
==> Unable to install module v4l2loopback-dc/1.4 for kernel 5.4.60-2-MANJARO: Missing kernel modules tree.
==> Unable to install module v4l2loopback-dc/1.4 for kernel 5.7.17-2-MANJARO: Missing kernel headers.
==> Unable to install module v4l2loopback-dc/1.4 for kernel 5.9.0-1-MANJARO: Missing kernel modules tree.
(3/3) Updating the desktop file MIME type cache…
[ferret@ferret-ms7b07 droidcam]$

And this solution was from audialche

Summary

[ferret@ferret-ms7b07 droidcam-dkms-git]$ makepkg -is
==> Making package: droidcam-dkms-git 6.7.9.r69.1f2460a-1 (Sun 06 Sep 2020 11:53:52)
==> Checking runtime dependencies…
==> Checking buildtime dependencies…
==> Retrieving sources…
-> Updating droidcam-dkms-git git repo…
Fetching origin
-> Found droidcam-6.7.9.r69.1f2460a.zip
-> Found dkms.conf
-> Found icon2.png
-> Found droidcam.desktop
-> Found Makefile.dkms
==> Validating source files with md5sums…
droidcam-dkms-git … Skipped
droidcam-6.7.9.r69.1f2460a.zip … Passed
dkms.conf … Passed
icon2.png … FAILED
droidcam.desktop … Passed
Makefile.dkms … Passed
==> ERROR: One or more files did not pass the validity check!
[ferret@ferret-ms7b07 droidcam-dkms-git]$

Somehow, I’m still missing the headers. I can’t see why but it might be because I’m just too tired.

You need to install the matching headers beforehand:

$ sudo pacman -Syu linux54-headers linux57-headers linux59-headers

If you’re using linux-latest or linux-lts for kernel management better use their counterparts:

$ sudo pacman -Syu linux-latest-headers linux-lts-headers
2 Likes

Thank you so much IT FANALLY WORKS!! I could kiss you

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.