Overview

This article provides an overview and best-practice recommendations for the use of webcams on IGEL OS within remote sessions such as Citrix, VMware Horizon, and RDP.

In general, webcam support on IGEL OS can be divided into three categories:

Unoptimized

The raw data from the webcam is sent over the network via USB redirection. The raw data from the webcam is highly affected by network latency between the client and the server and takes up a lot of bandwidth, requires the correct drivers on the server-side, increases the server's CPU and RAM load.

Example: Native USB Redirection for RDP sessions

Optimization type 1

In this case, the video and audio data is compressed on the client side. This optimization type makes the webcam stream far more efficient and reliable, although the data stream must still pass via the VDI server in addition to the cloud servers of the particular communication software (Teams, Zoom, etc.).

Examples: HDX RealTime Webcam redirection for Citrix sessions, Real Time Audio Video (RTAV) for VMware Horizon sessions

Optimization type 2

In this case, the video and audio data is also compressed on the client side. However, unlike type 1, this optimization type offloads the data stream from the VDI server and sends it directly to Teams/Zoom/etc. in the cloud, i.e. "single-hop". This allows for the best performance and also removes the server load, but relies on the correct optimization pack being present on the client and is specific to each communication suite. It may also require a more complex network configuration because the endpoint has to be able to communicate directly with the communication cloud server and not only the VDI server.

Examples: Microsoft Teams optimization and Zoom Media plugin for Citrix sessions

In the case of optimization type 1 or type 2, it is important to ensure that the agent/component on the server side is installed and is compatible with the client-side version. For details on the latter, see the "Component Versions" section of the IGEL OS release notes.

General Recommendations

For optimal performance of webcams on IGEL OS, the correct optimization pack has to be enabled for the specific application, e.g. Microsoft Teams optimization, Zoom Media plugin, Cisco Webex Teams VDI, etc. However, optimization packs are not available for all session types.

USB Redirection

If no optimization pack exists for your session type or the optimization pack available does not function correctly, you can try to use USB redirection – either the Native USB Redirection or the less frequently used Fabulatech USB Redirection (not both together), – but ONLY as a LAST RESORT, when no other solution is possible.

In general, where USB redirection is available as an option inside the VDI session options, it should be disabled for the webcam devices.

  • Set Default rule to Deny
  • OR, if the Default rule is Allow (NOT recommended), go to Device Rules and add Deny rules for the specific Vendor ID and Product ID of the webcam.

     How to Find Out Vendor and Product IDs

    To get Vendor/Product IDs, use the command lsusb in the terminal. You can also use the System Information tool, see Using “System Information” Function.

This is necessary because USB redirection will block the webcam from being correctly optimized (if optimization is possible).

Always check the IGEL OS release notes for specific remarks, especially in the case of private builds. Always try to use the latest firmware, see IGEL download server.

In certain cases, some of the settings described later on in this article may not be visible even though you have selected the correct firmware version for the profile in the UMS. In this case, update the UMS to the latest version.

Citrix

Option 1: Unified Communications (Best Choice)

Microsoft Teams Optimization

Path: Sessions > Citrix > Citrix Global > Unified Communications > VDI Solutions > Microsoft Teams optimization (enabled by default)

  • Available as of IGEL OS version 11.04.100.
  • Depends on the version of Citrix Workspace App used. For best results, the latest version should be preferred. For the Citrix Workspace App versions included, see IGEL OS release notes.

For server-side requirements for Microsoft Teams optimization, see Microsoft Teams installation.

To troubleshoot Microsoft Teams optimization in Citrix, see:

Zoom Media Plugin

Path: Sessions > Citrix > Citrix Global > Unified Communications > VDI Solutions > Zoom Media Plugin

  • Available as of IGEL OS version 11.04.100
  • For the Zoom Media Plugin versions included, see IGEL OS release notes.

For more information about Zoom Media Plugin, including server-side requirements, see Getting started with VDI.

Cisco Webex Meetings / Teams VDI

Path: Sessions > Citrix > Citrix Global > Unified Communications > Cisco > Cisco Webex Meetings VDI or Cisco Webex Teams VDI

  • Available as of IGEL OS version 11.04.100
  • For the Cisco Webex Meetings / Teams VDI versions included, see IGEL OS release notes.

For more information about Cisco Webex products for VDI, including supported environments, see:

Cisco JVDI Client

Path: Sessions > Citrix > Citrix Global > Unified Communications > Cisco >  Cisco JVDI client

For more information about Cisco JVDI client, see Deployment and Installation Guide for Cisco Jabber Softphone for VDI.

Skype for Business

Path: Sessions > Citrix > Citrix Global > Unified Communications > Skype for Business > HDX RealTime Media Engine (enabled by default)

  • Skype for Business webcam redirection relies on the Citrix HDX Realtime Media Engine (client-side counterpart to the Lync Optimization Pack).
  • This setting is the same as Sessions > Citrix > Citrix Global > HDX Multimedia > HDX RealTime Media Engine.

IMPORTANT: Skype for Business Online will be retired by Microsoft on July 31, 2021. After this, it will no longer be available, and Microsoft Teams must be used instead.

Option 2: HDX RealTime Webcam Redirection (Should Only Be Used If Optimization Packs under Option 1 Are Not Applicable)

For other VDI programs which require the use of a webcam (e.g. the browser), HDX RealTime Webcam redirection can be used. This option enables the compression of audio and video on the client side, which is redirected to an HDX virtual webcam on the server side. It also allows for the resolution of the webcam to be defined manually.

Only One Option at a Time for a Particular Device

  • HDX RealTime Webcam redirection and HDX RealTime Media Engine should not be enabled at the same time.
  • If you use HDX or an application-specific optimization pack (e.g. Zoom Media plugin), Native USB Redirection / Fabulatech USB Redirection should be disabled.
Settings on the Server SideSettings on the Client Side

The following policy settings must be enabled:

  • Multimedia conferencing (enabled by default)
  • Windows Media Redirection (enabled by default)

For details, see https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/multimedia/webcam-compression.html.

  1. Go to Sessions > Citrix > Citrix Global > HDX Multimedia.
  2. Enable Multimedia redirection (enabled by default).
  3. Enable HDX RealTime Webcam redirection.
  4. Configure the webcam resolution, 352 x 288 by default, and other settings if required.

    Certain webcam models may only support specific resolutions. For more information, see How to Configure Webcam settings When Webcams are Not Redirected Through HDX Real-Time.
  5. If the USB redirection is enabled (not recommended), use Device Rules to forbid the forwarding of the webcam via USB redirection. See the section above.

Dependencies

  • HDX RealTime Webcam Redirection is only supported for 32-bit applications on the server side (limitation of Citrix Receiver/Workspace App for Linux). Deploy a 32-bit browser to verify the webcam redirection online, e.g. www.webcamtests.com. See also https://support.citrix.com/article/CTX223199.
  • Webcam redirection generally works with or without HDX RealTime Media Engine (RTME). However, to avoid conflicts and for the better performance of webcam redirection, disabling RTME (enabled by default) is highly recommended.
  • Webcam usage is limited to one application. For instance, when Skype is running with a webcam and GoToMeeting is started, you have to exit Skype to use the webcam with GoToMeeting.
 Supported Video Conferencing Applications
  • Adobe Connect
  • Cisco Webex and Webex for Teams (Give preference to the optimization pack for Cisco Webex Meetings / Teams VDI instead, see above)
  • GoToMeeting
  • Google Hangouts and Hangouts Meet
  • IBM Sametime
  • Microsoft Skype for Business 2015, 2016, and 2019 (Give preference to the optimization pack for Skype for Business instead, see above)
  • Microsoft Lync 2010 and 2013
  • Microsoft Skype 7 or higher
  • Media Foundation-based video applications on Windows 8.x or higher and Windows Server 2012 R2 and higher
HDX RealTime Webcam Redirection is NOT supported for Microsoft Teams. Use Microsoft Teams optimization instead, see above.

Does Webcam Audio Work but Video Doesn't?

 Try to increase the graphics memory in the BIOS to 512 MB.

For more detailed information about HDX RealTime Webcam, see:

VMware Horizon

Option 1 (Best Choice)

Zoom Media Plugin

Path: System > Registry > vmware > view > vdzoom > enable

  • Available as of IGEL OS version 11.04.200
  • For the Zoom Media Plugin versions included, see IGEL OS release notes.

Zoom Media Plugin will NOT function if you enable HTML5 multimedia redirection (System > Registry > vmware > view > html5mmr, disabled by default). 

For more information about Zoom Media Plugin, including server-side requirements, see Getting started with VDI.

Cisco Webex Teams VDI

Path: Sessions > Horizon Client > Horizon Client Global > Unified Communications > Cisco > Cisco Webex Teams VDI

  • Available as of IGEL OS version 11.04.100
  • For the Cisco Webex Teams VDI versions included, see IGEL OS release notes.

For more information, see Overview of Webex Teams for VDI.

Cisco JVDI Client

Path: Sessions > Horizon Client > Horizon Client Global> Unified Communications > Cisco >  Cisco JVDI client

For more information about Cisco JVDI client, see Deployment and Installation Guide for Cisco Jabber Softphone for VDI.

Skype for Business

Path: Sessions > Horizon Client > Horizon Client Global > Unified Communications > Skype for Business > Virtualization Pack Skype for Business (enabled by default)

IMPORTANT: Skype for Business Online will be retired by Microsoft on July 31, 2021. After this, it will no longer be available, and Microsoft Teams must be used instead.

Option 2: Real-Time Audio-Video (RTAV)

Real-time Audio-Video (RTAV) is the optimization pack for audio and video calls inside VMware Horizon sessions. RTAV compresses audio and video on the client side and sends it to the Horizon server, where a VMware Virtual Webcam instance is created. 

Like for Citrix sessions, USB redirection should be disabled if RTAV is to be used.

 Enable Sessions > Horizon Client > Horizon Client Global > Multimedia > Real Time Audio Video (RTAV).

RTAV is only available when connecting via PCoIP or VMware Blast.
Note that only one webcam will be redirected (limitation of Horizon client for Linux). If multiple webcams are available on the client, the preferred webcam can be defined in the IGEL Setup under System > Registry > vmware.view.rtav-webcam-id.

For more information about RTAV, see Configuring Real-Time Audio-Video.

Microsoft Teams

Microsoft Teams can be used with RTAV in "Fallback Mode". This configuration is not an optimal solution as the data makes multiple hops between the Horizon client, server, and Microsoft Teams server. For more information, see Configuring Microsoft Teams with Real-Time Audio-Video.

Microsoft Teams media optimization (single-hop or "Optimized Mode") in Horizon sessions is currently only supported with the Horizon client for Windows 10 in conjunction with Horizon 8 (2006). For more information, see Microsoft Teams Optimization with VMware Horizon.

RDP

There is currently no optimization available for webcam redirection in RDP sessions. It may be possible to redirect webcams via USB redirection, e.g. Native USB Redirection. However, each webcam has to be individually tested for if it functions with this method. It often depends on the webcam itself and its Windows driver whether they can cope with the higher latencies that occur with USB redirections compared to the real USB bus.

In some situations, webcams may not be redirected correctly due to network latency, bandwidth limitations, or the lack of compatible drivers on the server.

Unoptimized Webcam Support

  • Note that because USB redirection is not designed for redirecting video devices, the bandwidth usage and server CPU load may increase significantly. 
  • For this reason, it is recommended to use webcams that output directly H.264 or H.265 streams, and not MJPEG, in order to reduce the data volume.

Native USB Redirection

  1. Enable Sessions > RDP > RDP Global > Native USB Redirection > Enable native USB redirection.
  2. Set the Default rule to Deny.
  3. Under Device Rules, add the specific Vendor ID and Product ID of the device to be redirected.

    To find out the Vendor ID and Product ID of the connected USB device, use the command lsusb (or lsusb | grep -i [search term]) in the terminal. You can also use the System Information tool, see Using “System Information” Function.

On RDS servers, the following may be helpful:

 Disable the setting Do not allow supported Plug and Play device redirection under Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Device and Resource Redirection.

For Microphone (e.g. Headset)

 Enable Sessions > RDP > RDP Global > Mapping > Audio > Audio recording.



Custom Partition as a Local Alternative

You can also use Custom Partitions for Microsoft Teams or Zoom, e.g. in order to save backend resources, which may be a good choice in slow RDP backends. The Custom Partition is locally installed but is easy to access in the remote session.

For how to open up the webcam in Windows 10, see Open the Camera in Windows 10.

For a video overview on using webcams and other USB devices in remote sessions, see:
English

German