Teams Media Optimizations on Windows Virtual Desktop
Does Microsoft Teams really work on Windows Virtual Desktop? This session will go through the requirements, setup and result of a Teams Media optimizations on WVD. We will also try this on a GPU powered VM and spot the differences.
This is the topic for my session on WVDTechFest on February 24. But I will also write a blog about it!
So my session is about the Teams Media Optimizations for WVD released last year. This feature is highly requested when more and more companies implement WVD as a work from home solution. But will it work? I have tested many variants of wvd setups and this is my conclusion.
What is Teams media optimizations for WVD?
Microsoft has built an internal channel for media between the Teams client in WVD and the Msrdc client in local Windows 10. This channel gives the possibility to bypass the roundtrip that occur when using video and sound in Teams on WVD. Instead of sending the camera images with msrdc to the wvd, in to teams, over to Microsoft Teams cloud. You can send it directly from msrdc client to the remote caller (if you are in a Call).
If you start a meeting with many participants, the traffic will not be directly towards the other remote hosts. But the media will go directly towards the Teams cloud and then distributed to all participants.
An important thing to note is that the return channel will always be the Teams client in the WVD.
So the media optimization will mostly optimize your own media transmission. The receiving will how ever be offloaded from the sending witch will give some optimization in itself.
There are three components working together in this process. First the Teams client process that handles all the media signals for the call or meeting. Teams is then using a the Remote Desktop WebRTC Redirector Service (aka Teams WebSocket Service) to make it possible to redirect media traffic that is better suited to exit from the local machine rather than the WVD. Finally the Remote desktop client (msrdc) that redirects media traffic directly towards remote call partners or Teams cloud.
How to install Teams on WVD with Media Optimization
First, open the docs page about installing Teams on WVD to verify that nothing has changed lately. Use Microsoft Teams on Windows Virtual Desktop. The process is otherwise not that complex:
- Add regkey IsWVDEnvironment Dword = 1 under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Teams
- Install Visual C++ (Not always necessary, but why not)
- Install Teams Websocket service
- Install Teams Machine Wide Installer with:
msiexec /i Teams_windows_x64.msi ALLUSER=1 ALLUSERS=1
(ALLUSER=1 is important, it makes it optimized for VDI)
To redirect audio and video devices correctly you also need to add three RDP client properties. This can be done in Azure portal on your host pool.
- audiocapturemode:i:1 enables audio capture from the local device and redirects audio applications in the remote session.
- audiomode:i:0 plays audio on the local computer.
- camerastoredirect:s:* redirects all cameras
Finally you can also configure Fallback. If a client is unable to use Media Optimizatons, what will happen. I have not found any use for this yet, but who knows. This can be done both on computer level or for specific users by regkey.
- 0 – Fallback mode is enabled (Default when missing)
- 1 – Disable fallback mode
- 2 – Enable audio only
To verify that media optimization is enabled, you open up Teams av verify version:
- Restart the Teams application.
- Select your user profile image, then select About.
- Select Version.
- If media optimizations loaded, the banner will show you WVD Media optimized.
How good is it?
Teams media optimization is really a great benefit for users that make Calls to each other, and if they reside on the same LAN it is terrific! But when joining a Teams Meet, the effect is not that great. In fact, I did not feel or notice any performance or quality improvements when using Media Optimization in an Teams meeting. In fact, it was the other way around.
When connecting to a meeting with Teams Media Optimization enabled I constantly had black small view of remote participants cameras. Quite annoying. Without Teams media Optimization the small view works with quite good experience.
WVD with GPU
In my test environment, I had two different sizes of machines. Two D4s_V4 from D series for general purpose and two NV4as_v4 from NV series with GPU accelerated compute. The NV series is one of my favourites, so good experience on WVD. Se my previous tests in Windows Virtual Desktop with GPU -Real World Performance. The results on the NV series when it comes to Teams on WVD is the same. It performs great and give the user a much better experience when using media (like you do in teams).
Limitations and issues
I have some customers that has done pilot with Teams on WVD with media Optimizations. I have also done numerous tests in my test environment lastly, I have vacuumed the web and forums for people reporting issues. What I found was this:
- Reports of No camera in Teams, this is nothing alarming. could be due to incompatibility or selecting the wrong camera in settings.
- Reports of Media Optimizations missing after following the guide. I found out that the Teams cashes has to be wiped from the users profile to get it to work for some perople that had used it without Media Optimizations.
- Reports of bad quality. This is always a difficult thing. You need to give the end users the correct expectations. It will not be perfect on a WVD.
- Reports of black cameras for meeting participants. This is something I also experienced during my tests. This is quite annoying and if you disable media optimization it works again. But this is something I have also noticed when having meetings in my teams client on my desktop, some times cameras on some people is disabled just for me, but other users can see them. Might be some kind of optimization to get the best performance for the presenter?
- Firewall alerts. When using Teams Media Optimization, the same firewall dialog that can occur for teams in clients will now occur for msrdc process. This can be hard to handle when users connect from unmanage devices.
- Raise of helpdesk calls. When running a pilot of this at a customer, we saw an increase of helpdesk calls related to Teams. Mainly problems with cameras and not being able to see participants.
If you are going to introduce Microsoft Teams on WVD, make sure you use GPU powered WVD´s. Right now the Media Optimization will bring better user experience when using it for calls. But for now the meeting experience is not quite that good. The components are under development and it will probably change.