I captured v4l2 using C. This is probably the only language I would choose for this. There are many low level calls in the driver. You need to map the kernel memory to your application and copy buffers. You must also set up a ton of configuration for the device. If you need to, I would consider writing a C library and using Platform Invoke. Another option is to write two programs and send data to your C # application through some kind of IPC.
source share