DroidCam is a freemium application which allows you to use your phone as a web camera (thus getting a better picture quality for meetings than ordinary webcams)

So, needless to say, it’s very helpful.

Now, I have been facing a number of issues with this application for a few days and I felt it would be best if I just share stuff regarding how I make it work seamlessly, it won’t look good when you are late for a meeting because you are troubleshooting droidcam, so here’s how I use it.

  1. v4l2loopback package can cause a lot of problems, so, I would suggest you to download it from source, you can do that using this script given below (this also installs droidcam on your linux computer)

This isn’t the most efficient script there is, but it works.

First, run the command

vim installation_droidcam.sh && chmod +x installation_droidcam.sh

(you might have vi editor installed by default, so if you don’t have vim, just replace vim with vi, if neither are available, run sudo apt install vim, I personally use featherpad)

Now, paste the below script into your text editor (this doubles as a reinstallation script too, but if you want the latest and greatest, you would have to replace the installation commands of droidcam given below with whatever is available here on the official website

#!/bin/bash

cd ~

pkill droidcam

sudo /opt/droidcam-uninstall

# installation script for droidcam
# if you want the latest version, go to
# https://www.dev47apps.com/droidcam/linux/
cd /tmp/
wget -O droidcam_latest.zip https://files.dev47apps.net/linux/droidcam_2.1.3.zip
# sha1sum: 2646edd5ad2cfb046c9c695fa6d564d33be0f38b
unzip droidcam_latest.zip -d droidcam
cd droidcam && sudo ./install-client
# end of installation script


cd ~

sudo rm -r v4l2loopback

pkill droidcam


gh repo clone umlaeute/v4l2loopback

cd v4l2loopback

make && sudo make install $ sudo depmod -a

cd ~

sudo modprobe v4l2loopback

Now, save the script and exit it.

Everything required for droidcam to work has been installed on your laptop (you would still have to install Droidcam (green) on your android device and set it up over there tho, I am not gonna guide with that)

Here’s a video for that by Mental Outlaw

Now, you would have to edit the desktop entry for droicam on your laptop to include sudo modprobe v4l2loopback command, because this needs to be running for droidcam to work. So, to do that, we will create another script

run vim /home/$USER/droidcam_start_menu_libre_desktop_file.sh && chmod +x /home/$USER/droidcam_start_menu_libre_desktop_file.sh and paste the below script and save it

#!/bin/bash

sudo modprobe v4l2loopback

/usr/local/bin/droidcam

After this, menulibre if you don’t have it already by doing sudo apt install menulibre and edit the desktop file entry for droicam such that it looks like the image below (make sure you Tick Run in Terminal) as you need to have v4l2loopback running in the background for droidcam to work.

In the command text box, you much have /home/$USER/droidcam_start_menu_libre_desktop_file.sh (location of the script we just created) and now save it.

And that’s it!

From now on, you would be able to start droidcam (while keeping droicam on on your android device) The terminal would open, enter your password and you can now connect and use your phone as a second camera (a much better second camera)

I haven’t been very articulate, so doubts are welcome

desktop entry should look like this

  • LalSalaamComrade@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    5 months ago

    Creating a script with privilege escalation is a terrible idea. How do I know if this does not install binaries in the root in some unknown directory?

    You don’t need to do all of this - there’s probably a simpler and better way to do this. Maybe create a service, or something similar?

      • LalSalaamComrade@lemmy.ml
        link
        fedilink
        English
        arrow-up
        0
        ·
        5 months ago

        You’re running a script that you downloaded off the internet, which isn’t deterministic, with a sudo command, as opposed to using a relatively deterministic binary on a substitute server from the distro maintainers themselves. The better solution is to just use the Flatpak version of OBS, which comes with a DroidCam plugin, or Nix, or maybe Guix, if that’s what you prefer.