Smartphone as Webcam with Free Software?

Bernhard E. Reiter bernhard at
Thu Apr 30 07:51:39 UTC 2020

Hi Dmitry,

thanks for your helpful response!

Am Mittwoch 29 April 2020 18:10:22 schrieb Dmitry Alexandrov:
> "Bernhard E. Reiter" <bernhard at> wrote:

> >
> >
> > they are all a few years old
> So what?

this indicates: the chance of this being a less common use case is higher.
Of course there are very good old and stable pieces of software,
so this is just an heuristic.

> > and all offer wifi
> > And no USB solution on sight?
> Both of them stream video over RTSP, i. e. over TCP/IP which which is
> medium-agnostic.  So feel free to use USB.

This is a good idea. I lack experience how easy it is to set up
an IP connection between a regular Android phone and a GNU/Linux system.
Do you have good pointers for documentation?
(I wildly guess it is using USB tethering, though I do not want
to use the internet connection of the phone. )

> > but non of them an encrypted stream.
> Why do you need encryption if you are going to use USB connection?

Good point, for USB this is not needed.

> > Has somebody seen better instructions for making this work?
> I have not tried pl.hypeapp.endoscope but net.majorkernelpanic.spydroid
> have worked out of a box for me.  No instructions needed.

What about connecting this incoming stream to your application, e.g. firefox, 
if you are going to join a jitsi meet or bigbluebutton video conference?
(Just installing jitsi meet app on the phone is often a bad option as elder 
phones will not be able to cope with the several incoming streams from the 
CPU side.)

For me personally, I'll probably get it sorted out at some point.
It would be cool if we had instructions that can be used by more people.

So steps are
 a) make an network connection via USB cable between phone and GNU desktop
 b) run an app like endoscope or spydroid (recommended from fdroid)
 c) protect your network (what needs to be done on the phone? desktop?)
 d) connect incoming stream to application

Am Mittwoch 29 April 2020 19:44:09 schrieb Dmitry Alexandrov:
> Yet, there is thing to be concerned about in your use-case — it is missing
> _authorization_.  And itʼs much more serious issue, since
> net.majorkernelpanic.spydroid listens on _any_ interface — even global if
> your little machine has one.  And it does not provide a user interface to
> configure it the other way.
> So youʼd better command a machine, where ‘Spydroid’ will be running, to
> accept connections to its port only from USB (‘rndis’ in *droid lingo). 
> Something like that, if I am not mistaken:
> 	# iptables -I INPUT ! -i rndis+ -p tcp --dport 8086 -j REJECT
> 	# ip6tables -I INPUT ! -i rndis+ -p tcp --dport 8086 -j REJECT

As spydroid will run on the android device, this would probably need another 
application to manipulate the firewall rules?

Best Regards,

FSFE -- Founding Member     Support our work for Free Software: | contribute
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: This is a digitally signed message part.
URL: <>

More information about the Discussion mailing list