IMX519 and uv4l

I just got my kickstarter “High-Resolution Autofocus Camera for Raspberry Pi” package, and after following the instructions I can use libcamera on my Pi (using a Pi 1 v1.2 B+ because I guess I like to take things slowly :slight_smile: ).

So the camera is working fine, but my use case, which I naively thought would be a simple plug & play matter not really considering the amount of moving parts, was to use uv4l server to serve webrtc video, as I have done in the past with other, lower resolution cameras on this same pi.

The problem is, it just does not work. Since the IMX519 driver is a kernel space one, and it gets loaded on boot, I tried to do

uv4l --external-driver --device-name video0 --server-option '--port=9000'

which runs:

<notice> [core] Trying to load the the Streaming Server plug-in...
<notice> [server] HTTP/HTTPS Streaming & WebRTC Signalling Server v1.1.130 built on Jan 16 2022
<warning> [server] SSL is not enabled for the Streaming Server. Using unsecure HTTP.
<notice> [core] Streaming Server loaded!
<notice> [server] Web Streaming Server listening on port 9000
<notice> [driver] Using video device /dev/video0
<notice> [webrtc] WebRTC Renderer extension successfully loaded
<notice> [server] WebRTC, Signalling Server and STUN Server extensions successfully loaded

but if I try to run webrtc video using the demo web app from uv4l, the pi just hangs, dead in the water. No errors that I can find on logs after a reboot.

I am using a freshly installed bullseye raspberryOS, followed the instructions on https://www.arducam.com/downloads/arducam-imx519-start-guide.pdf for it. Tried with both the default 64 and 128 MB of GPU memory (256 seems to break other things on the OS).

I confess not having dug deep into this, as it might just be that I’m doing something inherently stupid or unattainable, but I really wanted this to work, so my questions are; should this work? and if not, is there something that can be done/is being done/I can do myself to resolve this?

Thank you

Yes, the driver of IMX519 is now in the kernel space, but it only supports outputting RAW Bayer format, most software does not support it, and the Bayer format image has not undergone any processing, it is not suitable for human eye viewing. So we use libcamera to Access it, libcamera will get the RAW Bayer format and do ISP processing.
If you still want to use the video node to access it, maybe v4l2loopback can do it:
2.2. Create a virtual video node