This is the first in a series of blog topics to introduce you to improvements we have made in RDP in Windows 7 and WS2008 R2 to enhance your audio and video playback experience in remote sessions. Media playback experience has been improved by efficiently transporting audio/video-based multimedia in a compressed format within the RDP protocol. The feature will enable users to experience smooth, reliable playback of multimedia video content played back through Windows Media Player.
If the client supports multimedia redirection, it will receive the original compressed multimedia stream from the server and decode it locally for display. This will decrease bandwidth usage since the data over the wire will be compressed video instead of a succession of bitmaps. Bandwidth usage should be akin to streaming content from a video server or via a video played over a file share. Also, the bandwidth usage remains the same when a video window is resized and even when it's played in full-screen mode.
This method also saves server resources as the server no longer spends its CPU resources decoding the video content and sending it in bitmap form over RDP. As we can see in Figure 1 below, while playing a HD video in a remote session with multimedia redirection, the CPU load on the server is only about 1%. The CPU-intensive processing is off-loaded to the client where the CPU load is about 25% (task manager on the right). Even though the video is rendered on the client, the video content displayed on the screen will be seamless (as though it was rendered on the server).
Figure 1. CPU usage when playing back HD video in a remote session
What do I need to experience this feature?
The server you connect to has to be running WS2008 R2 with the Remote Desktop Server role installed. The server also has to be configured to allow audio and video playback. When you install the Remote Desktop Session Host role by using Server Manager, select the “Audio and video playback” check box on the Configure Client Experience page.
Figure 2. Server Manager: Configure Client Experience page
This is a one-step process that allows you to configure the server for audio and video playback redirection during RDS role installation.
You can also experience this feature when you connect to a physical Win 7 Ultimate/Enterprise machine or a Win 7 Enterprise VM. No additional configuration is required on these client machines.
You need an RDP 7.0 client to connect to the remote machine.
Click the Local Resources tab in the Remote Desktop Connection Options. Click the Settings button under “Remote audio.”
On the next dialog box that appears, select “Play on this computer.”
Figure 3. RDP client: Remote Audio settings
What formats of audio and video are supported by this feature?
Windows Media Player uses the Media Foundation infrastructure to play back content such as WMA, WMV, MP3, DivX, etc., and DirectShow for MPEG-1, MPEG-2, etc. In addition, most streaming media content is played back through the Format SDK (FSDK). Most audio and video content played back through Windows Media Player will be redirected using this scheme as long as the client has the decoder to decode the content. This includes content that goes through Media Foundation as well as DirectShow. In addition, content that is streamed can also be redirected. If the decoders are not present on the client then content will be rendered on the server using the server’s CPU/GPU resources (host side rendering). The compressed bitmaps and audio (see the blog post What’s New in Remote Audio for Windows 7?) would then be sent efficiently over the network to the client.
Note that DRM-protected content will not be redirected through this mechanism.
Next topic: Configuring your WS2008 R2 server for a rich client experience.
Can I get these improvements on a winXP
Any clue if "Windows Embedded Standard" will be able to do the same video function with Windows 2008 R2 Terminal Server?
Note that DRM-protected content will not be redirected through this mechanism.
Again another nail in the coffin. CableCard recordings are forever played back on 'extenders' or the local computer. Who made this decision to excluded DRMed content from a RDP session?
Can you elaborate on the effectiveness towards improving server scalability by installing a high-end GPU on the host server?
Our clients are restricted to RDP 6.1. We are piloting a project to use RDS on Win2K8 R2 for RDP access to multimedia rich applications. I definitely see a performance improvement in terms of FPS on the client, compared to Win2K3 TS. However, with not being able to use client side rendering (Win XP Sp3 clients), our Win 2K8 RDS server is getting hammered. The host server is having to process multiple sessions of our multimedia application entirely on the server and so does not scale well. I am wondering if a high-end graphics card on the server will help reduce the CPU resources used on the host server to process the application? In turn gaining user density.
For that matter..
Would a high-end audio card on the server help with improving RDP client experience for audio content?
What is the scenario you want to enable?
Client rendering relies on the client's capabilities and resources. Having a high-end
audio card on the server would not help.
Using WinXpSp3 clients with RDP 6.1 connecting to a Win2K8R2 RDS server for the purpose of virtualizing Internet Explorer.
During testing we noticed that when several users (3-4 users) are connected to our test RDS server, running IE and accessing rich web content such as flash videos, Windows media content etc. - the RDS server would be running with high CPU. In fact even one user connected and running IE through RDP to the host server produced high CPU usage (on the host server). When compared to a remote desktop session to my home computer, my home computer can easily service my RDP session - running IE and accessing rich content - with just a few percent CPU usage on my home PC. Seems like the GPU on my home machine is being leveraged to reduce the CPU usage.
Come one!! can someone give me a definitive answer on this. I'm seeing differing reports on the affect of a GPU on the host RDS server. My lab analysis seems to indicate a host side GPU will alleviate CPU utilization on the server as well as improve end-user experience.
Can this be confirmed/denied by a RDS/RDP engineer?
I am also interested in the same answer.
I do have another one, do you know if having a high/mid-range GPU on the client side lower CPU usage for the client? Basically if RDP (any version) support Hardware Acceleration.
RDP 6+ & Windows Vista/Windows 7/Server 2008 support hardware acceleration - in the sense that client GPU's are leveraged in certain conditions. However, it's a young add-on that may not yet translate to a whole lot or real world improvements for you.
Previous desktop OS's do not support hardware acceleration via RDP, regardless of RDP version.
Is there any performace sheet for RDP7. I will be thankful to get performce improvement percentage comparing to RDP6 for Multimedia Redirection and for Flash content.
Note: I understand flash content is still renedred on server but i heared they have better compresision for host renedered content.
Is multimedia redirection supported only by Windows Media Player? Can I use other third-party video player (for e.g. Media Classic Player or QuickTime player)?
Just looking to get a question answered in regards to RDP'ing from windows 7 to WIN2K. There seems to be an issue remoting into a WIN2K server from win 7, causing the cpu usage to go to 100%. Also I have another win2k server not pached upto date & does not have this issue?
Hopefully Andy got his answer but RDP 7 is available now for XPSP3 so that should solve that concern.
Hi all, I have set up a Windows 2008 R2 Terminal Server (Virtualised), and am connecting with Windows 7 Professional client PC (High end Core2Duo E8400 with ATI 4870 512MB graphics card). What is the best way to test audio/video redirection? Should I perhaps download a Microsoft sample 1080p or 720p .WMV video file put it on my profile's desktop, connect from my Windows 7 machine at home and try to play it using media player or what?
I am looking at getting this rich audio and video content streaming working well - i.e. smooth playback over Terminal Services.
I have a 24MBit ADSL line and the server I am connecting to has plenty of bandwidth available so the Internet connection shouldn't be an issue.