microsoft / microsoft/WSL

Include web-camera drivers to WSL2 kernel

Open
#8,655 15 comments 44 reactions 0 assignees View on GitHub
feature
Dominant language
C++
Stars
33.7k
Forks
1.8k
Avg merge
3d 17h
Merged PRs (30d)
116

Description

**Is your feature request related to a problem? Please describe.**
I'm building a software for video processing. I use video from web-camera(s) connected to my laptop. Basically I capture video from `/dev/video*` and use it in my video streaming pipelines.
[Usbpid-win](https://docs.microsoft.com/en-us/windows/wsl/connect-usb) is a cool solution. However it doesn't help because there are no camera drivers in the kernel. Therefore `/dev/video*` files weren't created. Attaching any camera to WSL gives me nothing because my pipelines do not work.

**Describe the solution you'd like**
Include camera drivers support to the default WSL kernel. Then `/dev/video*` devices must be created after attaching camera to WSL via `usbpid`.
I believe web-cameras should be supported by default in WSL.

**Describe alternatives you've considered**
Alternative solution is to build own kernel from scratch and inlcude necessary drivers.
I've found this solution really helpful https://github.com/Katzeee/Notes/blob/master/about-programing/wsl2-using-usb.md
However it takes a lot of time, easy to make a mistake and hard to explain to colleagues why they have to do such complex things.

**Additional context**
I'm using Ubuntu 22.04

Contributor guide

Open the contributing guide

Research direction

The issue names no repository files or tests. Start by reviewing the default WSL2 kernel configuration and the linked usbpid setup, then determine which camera drivers are needed; done means an attached webcam creates /dev/video* in WSL and supports the user's video pipelines.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux, ubuntu
Domain
operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.