By Fredrik Brattstig @virtualbrat
23 February 2023
Last week IGEL had an excellent turnout for its DisruptEUC in Munich. In-person events are back again and DisruptEUC was bigger than ever! One of the benefits of being at an in-person event is the small talks in between sessions, or having people from the audience approaching after a session presentation. Meeting peers and discussing technology.
I had multiple discussions about Citrix HDX Webcam redirection where IGEL customers had some challenges configuring IGEL OS and getting it to work properly, so I decided to write up a HowTo.
For the sake of it, there are multiple ways to forward a Webcam to a Citrix session. What are the differences of Citrix HDX Webcam redirection and Citrix HDX Optimization for Microsoft Teams?
Citrix HDX Webcam redirection will be using an agent on the client side to pick up the webcam feed and forward the feed to the backend Citrix VDA. It will allow you to use the Webcam in any application on VDA side. For about a year or more, Citrix added support for 64-bit applications on the VDA to utilize the HDX-redirected webcam when using Linux endpoints (previously only 32-bit applications were supported).
Read more about HDX Webcam redirection here: https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/multimedia/webcam-compression.html
(BTW, I asked Citrix to update the documentation that CWA for Linux supports 32 and 64-bit apps)
Citrix HDX Optimization for Microsoft Teams is a special implementation allowing Microsoft Teams to access the camera, but also the audio devices attached to the IGEL OS endpoint exclusively, plus making the IGEL OS endpoint to make peer-to-peer communications during a video call. This technology offloads the CPU resources used on the Citrix VDA, by having the IGEL OS endpoint render the video and Audio locally. Citrix HDX Optimization also works for Zoom VDI and Cisco WebEx.
Read more about Citrix HDX Teams Optimisation here: https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/multimedia/opt-ms-teams.html
Let’s get to the configuration of IGEL OS for HDX Webcam Redirection and how to get it to work with 32- and 64-bit applications running in the VDA!
There are a few parameters to set in IGEL OS for this to work properly. First of all you need to have a licensed IGEL OS endpoint, as we will be using H.264 codecs, and those are only enabled when IGEL OS is fully licensed. It will not work with IGEL OS Starter License.
You will need to enable HDX RealTime Webcam Redirection. Here you can also play with the characteristics of your HDX webcam parameters in your upcoming session. For the demo video below I was using the configured values you see in the screenshot above. I set the Resolution grade to Best as this will give the best webcam picture quality. At the same time, the higher resolution grade you set, the more CPU and bandwidth resources will be utilized. You need to find out the right setting for your endpoints and use case.
Now, for the tricky part in getting 64-bit applications to function with HDX Webcam redirection. We need to set a few items in the IGEL OS registry:
We need to enable HDX Webcam H264 native and HDX Webcam H264 encoding, and we also need to set the g-streamer version to use. The gstreamer-version is default set to “bcr”, I changed it to “either” to make it work successfully.
HDX Webcam H264 native and HDX Webcam H264 encoding will be found in System->Registry->ica->wfclient. gstreamer-version is found in System->Registry->sessions->pnlogin0
ica.wfclient.hdxh264enablenative enabled ica.wfclient.hdxh264inputenabled enabled sessions.pnlogin0.gstreamer_version either
That’s it! Let’s have a look at how it works and the user experience you can expect!
In the below video I’m using HDX Webcam redirection in combination with Citrix HDX Optimization for Microsoft Teams
When doing the test below I was using IGEL OS 11.08.255, which includes Citrix Workspace App for Linux 2203, and the Citrix VDA is a Session Host 2019 with the 2209 VDA version.
Happy ANY APP video conferencing!