Webcam Pass-through

Workspaces supports passing a webcam feed directly into the Kasm sessions.


To enable this feature:

  1. Set the allow_kasm_webcam Group Setting to true prior to launching the session.

  2. Launch a Kasm session.

  3. Open the control panel on the left side of the session, and select Webcam. Please note that you may be prompted to grant browser permissions to access the webcam.


You can select the webcam device to be used and adjust its settings by navigating to Webcam Settings in the Control Panel

More Details

This feature works by connecting to the local webcam via the browser’s Media Capture and Streams API. This process intercepts the video feed and directs it into a virtual webcam device mapped within the container. All programs within the session container that use the /dev/video0 interface should be able to access this virtual webcam.

Host Level Requirements

To enable the webcam feature in Kasm, it is necessary to meet a critical host level requirement: the v4l2loopback kernel module must be installed and running on the host system. This kernel module facilitates the streaming of video content by creating multiple V4L2 loopback devices, making it possible for the video feed to be intercepted and redirected into a virtual webcam device mapped within the container.

As part of the installation process, Kasm installs this kernel module on the following distributions:

  • Ubuntu 18.04

  • Ubuntu 20.04

  • Ubuntu 22.04

  • Debian 10

  • Debian 11

  • Debian 12

However, this feature is not limited to the aforementioned distributions; it’s supported on any distribution, provided the v4l2loopback kernel module is installed and active. If the module is already installed, its installation can be skipped using the --skip-v4l2loopback parameter.

For distributions where Kasm does not pre-install this module, users will need to refer to their specific distribution’s documentation or community resources for detailed installation instructions for the v4l2loopback module. In such a scenario, the module needs to be installed before the Kasm installation.


To check the status of the virtual webcam devices created by Kasm, you can consult the agent logs. These logs should provide you with a comprehensive rundown of the virtual devices, their respective statuses, and any operational anomalies that might have occurred.

It’s important to note that if there were pre-existing webcam devices on the host system, the Kasm installation will not create new virtual devices. This is because the v4l2loopback kernel module recognizes the existing devices and opts not to duplicate these within the system. If you don’t observe any new devices after the Kasm installation, it’s likely due to the presence of these pre-existing devices.


The overall system resource consumption in using Kasm, specifically in terms of CPU and memory usage, scales in relation to the number of sessions utilizing virtual webcam devices and the frame rate and quality settings chosen.

As an example, a single session operating with default settings might utilize around 3% of the CPU’s capacity. In contrast, if there are five concurrent sessions, this could potentially consume up to 20% of the CPU. However, bear in mind that these figures are estimations, and actual usage can vary based on numerous factors such as hardware specifications, other system loads, and specific application demands.

Importantly, the frame rate selected by the user has a direct correlation with the utilization of internet bandwidth. Higher frame rates translate to a higher image transfer each second, which in turn demands more bandwidth.