Hacker News new | past | comments | ask | show | jobs | submit login

Ugh I wish v4l2loopback was in the upstream kernel...



Well... actually for this use case we need something significantly improved. v4l2loopback has several flaws relevant to user-space camera drivers (which are also relevant to modern MIPI cameras).

The most important one is that it is cumbersome for the application that feeds the virtual camera to know whether its output is used at all - e.g. for power-saving. The correct solution is V4L2_EVENT_PRI_CLIENT_USAGE, but there is no way to use it e.g. from within a GStreamer pipeline or from a call to ffmpeg. You need something like v4l2-relayd, which is a separate application, that starts and stops the GStreamer pipeline based on such events.

Also, there is no way to implement controls (gain, resolution, color temperature, etc.) on the virtual camera that could be passed through to the app that feeds the camera.

There is also akvcam, but it implements image processing in the kernel, which is gross.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: