site  contact  subhomenews

Kernel 5.15.35 kernel compiled with v4l2loopback-dc module

April 26, 2022 — BarryK

I compiled the 5.15.34 kernel recently:

Yesterday I tested GUVCView webcam viewer:

I have previously posted about wearable video cameras, such as these at eye-height:

These can also be setup to stream video onto a computer screen.

I was thinking of buying a USB webcam; however, all of these considerations are overlooking something -- the modern smartphone.

Phones these days have incredible optics. This is despite the thin physical constraints -- that they are getting around by having multiple lenses. The pixel sizes are enormous, and the processing power is incredible. A lot of research goes into developing the cameras in phones, and mass production means relatively cheap.

This link is an interesting read:

There is another webpage that describes the post-processing that is done in smartphones, but I can't find that link now.

The above link is about still-photo shots. In the case of video, any processing has to be done fast, within 1/30 of a second in the case of 30fps. That heavy processing is also going to increase battery drain and the phone will get hotter.

Is the video processing of each frame as good as single shots? Probably not, though I don't have any definitive comparison information.

This link shows that they can do up to 4K at 60fps:

Anyway, smartphones, yes, they can be wearable, and can be used to make videos while hiking, etc.

What about a smartphone as a webcam, like the webcam in my baby laptop, and viewing on the computer screen with GUVCView?

I discovered a product called Droidcam, that does the same for smartphones, turns them into a webcam. Works for Android and iPhone. On a Linux computer, Droidcam will present /dev/video0, just like any webcam. Project homepage:

I have made a start to trying Droidcam. It has a kernel module, 'v4l2loopback-dc.ko', available from here:

I downloaded the source package, and took out just the code for the kernel module, made that into a package and put it into my kernel compiling package. Then compiled 5.15.35, along with the new module, and created a PET.

The kernel source, patches and build scripts are here:

The next step will be to compile the Droidcam userland executable.   

Tags: easy