Blog posts tagged with 'flash'


23 Jun 2008 05:02 PM EDT

Sit back and listen in as I speak with Doug Brown, Citrix Technology Professional and Microsoft MVP, about the Citrix Multimedia Virtualization Initiative and the new technologies being developed by the project Apollo team in this DABCC Radio podcast...

Derek Thorslund
Product Strategist, Multimedia Virtualization

23 May 2008 11:22 AM EDT

A new Hotfix Rollup Pack for Citrix Presentation Server 4.0 has just been released that includes enhanced Flash version support. HRP05 for PS 4.0 for Windows Server 2003 (see http://support.citrix.com/article/CTX116264) has a new generic method of handling new Flash versions. HRP05 for PS 4.0 for Windows 2000 Server (see http://support.citrix.com/article/CTX116259) supports up to Flash 9f.

Derek Thorslund
Product Strategist, Multimedia Virtualization

12 May 2008 01:42 PM EDT

I've been spending quite a bit of time digging into the topic of how to optimize the performance of Adobe Flash content (animations and videos) when using a web browser hosted on Citrix XenApp (see Parts 1, 2, 3 and 4 of this series). Here's a secret for optimizing Flash performance that will seem totally counterintuitive. Actually, this one took me by complete surprise...

From my blog post on SpeedScreen Browser Acceleration ("SpeedBrowse" for short), you might have picked up on the fact that there is an incompatibility between this feature and Flash content. Delving into this, I recently learned that if Internet Explorer running on XenApp will be used to access a web app or web site(s) with Flash content, it is best to turn SpeedBrowse off. Why?

When Internet Explorer encounters Flash content, it switches to an off-screen rendering and compositing mode. In this mode, SpeedBrowse is prevented from tracking how images get drawn onto the off-screen surface and then to the real display surface (bit block transfers). From then on, JPEG and non-transparent GIF images will be sent over the wire twice; over the SpeedBrowse virtual channel (but never used) and over ThinWire to draw them. As a result, more bandwidth is consumed than necessary.

To avoid this interaction issue, I recommend that you review how your organization uses Internet Explorer on XenApp. On servers where IE is used only to access specific web apps that don't utilize Flash, you'll want to keep SpeedBrowse enabled. But if you're publishing Internet Explorer for general web browsing or to access web applications with Flash content, I recommend turning SpeedBrowse off. This can be done at the server or farm level.

As you would expect, a mitigating hotfix is now in the works (in fact, it has already been incorporated into XenDesktop 2.0). I'll keep you posted as we make further progress on this issue.

Another option to consider (dare I go there?) is to turn Flash off. Again, you'll want to carefully consider how Internet Explorer is used in your organization before making this choice. If IE on XenApp is intended to be used just to access specific web sites, you may determine that the Flash content on those sites is not particularly important. Or, like MSN.com, the site may be designed to provide alternative content if Flash isn't available. You could then choose to turn Flash off in order to maintain the benefits of SpeedScreen Browser Acceleration. There is an article in the Citrix Knowledge Center that provides instructions for disabling Flash (document ID CTX110407).

If you have any feedback on this blog post or the others in this series, please share your comments! If you are able to measure a change in bandwidth consumption after following my recommendations above, please share your results. And I'd love to hear your views on the importance of further optimizing Flash performance and your use cases for published web browsers.

Derek Thorslund
Product Strategist, Multimedia Virtualization

09 Apr 2008 11:20 AM EDT

Several hotfixes to support new versions of Adobe Flash when using SpeedScreen Flash Acceleration have recently been released in hotfix rollup packs. Here's a summary of the most current hotfixes, handling Flash versions up to 9d:

  • HRP2 for XenApp Presentation Server 4.5 for Windows Server 2003 32-bit Edition: PSE450W2K3R02 (see KB article CTX116289)
  • HRP2 for XenApp Presentation Server 4.5 for Windows Server 2003 64-bit Edition: PSE450W2K3X64R02 (KB article CTX116294)
  • HRP4 for Presentation Server 4.0 for Windows Server 2003: PSE400W2K3R04 (KB article CTX113484)
  • Limited release hotfix PSE400R04W2K012 for Presentation Server 4.0 for Windows 2000 Server (KB article CTX115555)

Support for Flash 9e is in the works (see Secrets for Optimizing Flash Performance - Part 3).

Derek Thorslund
Product Strategist, Multimedia Virtualization

19 Mar 2008 05:21 PM EDT

As I noted in my first blog post about optimizing Flash performance on XenApp, SpeedScreen Flash Acceleration currently checks for specific binary file names such as flash8b.ocx or flash9.ocx. Therefore, new versions of Flash require the creation of hotfixes to accommodate different binary file names. After reviewing this issue, I challenged our Engineering team to come up with an improved design. They devised a creative new solution that they predict will gracefully handle Flash updates and thus eliminate the time lag between new releases of Flash and the development of new XenApp hotfixes. That enhancement is now working its way through development and test.

In the meantime, we still need hotfixes that will look for newer Flash file names. I previously highlighted that a limited release hotfix (PSE400R03W2K3091) is available for customers with active Preferred Support Services contracts who are running XenApp Presentation Server 4.0 on Windows Server 2003 (see KB article CTX115426, login with appropriate access privileges required). Subsequently, our Support department received requests for a solution for XenApp Presentation Server 4.0 on Windows Server 2000. In response, the Life Cycle Maintenance (LCM) team has created and released hotfix PSE400R04W2K012 for PS 4.0 with HRP04 on Windows Server 2000. This limited release hotfix adds support for Adobe Flash versions 7a, 8, 8b, 9, 9c and 9d. Customers with an approved support contract can obtain the Knowledge Base article describing this new hotfix by visiting our Support web site at http://support.citrix.com/article/CTX115555 (login required) or by searching for CTX115555.

Meanwhile, Adobe has released Flash 9e (9.0.115.0). I wish I could tell you that the new hotfix handles 9e but, as Aaron Parker has already identified in his blog post on stealthpuppy.com, it doesn't. However, the wheels are in motion to create a hotfix that will handle 9e. If all goes well, this might be the one that introduces Engineering's new generic solution that isn't tied to specific binary file names. Stay tuned to this blog for further updates.

Derek Thorslund
Product Strategist, Multimedia Virtualization

01 Feb 2008 06:21 PM EST

Our project Apollo technology for remoting Vista Aero and any multimedia application that can run on Vista just keeps getting better. This video gives you a sneak peek at the latest version of Apollo, demonstrated by Juan Rivera (Citrix Development Manager) in the Tech Lab at Citrix Summit 2008 in Orlando.

12 Dec 2007 04:24 PM EST

I'm back from my 7-day Eastern Caribbean cruise and of course the first thing on my mind is my Multimedia Virtualization blog! We've just migrated the Citrix blog site to an updated system so I had a few transitional issues to work through, but now I'm ready to share with you Part 2 of my series on optimizing Adobe Flash performance on Citrix Presentation Server. (Click here to read Part 1.)

There's definitely more to optimizing Adobe Flash than configuring SpeedScreen Flash Acceleration ("SpeedFlash") and making sure you have any required hotfixes to handle newer versions of Flash. One of the features of Presentation Server that can have a very substantial positive impact on Flash performance (animations and video) is Queuing & Tossing. This feature shows up in the management console as "Discard queued images which are replaced by other images" or "Discard redundant graphics operations", depending on which version of Presentation Server you're running.

The Queuing & Tossing feature of Thinwire briefly queues GDI draw commands and, before sending them over ICA, inspects the stack in reverse order (LIFO) to allow tossing of obsolete commands (those which have been overwritten by subsequent commands). The queuing period is short enough (30ms) that it doesn't degrade the responsiveness of the application; in fact, performance is significantly improved because draw commands that are logically redundant are discarded.

The tossing algorithm was enhanced in Presentation Server 4.5 (Ohio) to look for more graphics constructs. The tossing algorithm now uses a 1-bit-per-pixel map of the session screen. And it can detect complete self-contained 'frames'. As a result, Thinwire will either send the entire frame to the client as a self-contained entity or toss it completely. These improvements to the tossing algorithm further reduce the amount of data that needs to be sent over the wire. Along with reduced network bandwidth consumption, network efficiency (data bytes per frame) is increased. And the user experience is better because the entire frame gets updated at once rather than in pieces.

So, just how big a difference does all of this make? I recently spoke with one of our engineers who has been taking performance measurements with Flash videos. In his testing, he found that enabling Queuing & Tossing reduced bandwidth consumption by more than 3 times!

In addition to the new framing behavior of Queuing & Tossing in PS 4.5, just-in-time output behavior has further improved Flash performance. Flash video playback with PS 4.5 is noticeably smoother. And CPU consumption is lower, which increases server scalability (number of simultaneous Flash users per server).

There's still quite a bit more to tell you about Adobe Flash performance optimization, so stay tuned for my next installment on this topic.

Derek Thorslund
Product Strategist, Multimedia Virtualization

27 Nov 2007 12:00 AM EST

In my conversations with customers at our iForum App Delivery Expo in Las Vegas a few weeks ago, the topic of Adobe Flash came up several times. It became apparent to me that many Citrix system administrators are looking for guidance on how best to configure Presentation Server to support access to web sites with Flash content, and they're wondering what future enhancements Citrix has on our technology roadmap. So here is the first in a series of blog posts about optimizing Flash performance.

Flash is indeed a key focus area for the Citrix Multimedia Virtualization Initiative. Over the past few years we introduced various enhancements and tweaks to Presentation Server to help customers optimize the user experience when viewing Flash animations and videos. We also offer NetScaler to dramatically accelerate the delivery of web applications, including apps with Flash content. And there's more to come...

The reason for this continued attention to Flash is the growing prevalence of Flash-based content. Based on input I received from two leading Content Delivery Network vendors, it looks like Adobe Flash has now captured at least 10% of the enterprise market and is enjoying rapid growth. And a Forrester survey ("Enterprise Browser and Desktop Trends") of over 2,000 large enterprises found the Adobe Flash player installed on 98% of desktops.

The obvious starting point in our discussion of Flash performance is the SpeedScreen Flash Acceleration feature ("SpeedFlash" for short) introduced in Presentation Server 3.0. You can enable SpeedFlash to be on at all times or just over low bandwidth connections (less than 150Kbps). SpeedFlash automatically adjusts the Flash player to use simpler graphics (for example, no smoothing or anti-aliasing). These simpler graphics can be more effectively compressed, thereby reducing bandwidth consumption. CPU usage is reduced, too, which translates into higher scalability (more concurrent users per server).

SpeedFlash looks for specific binary file names. Here's where things can go wrong. The SpeedFlash code in Presentation Server 4.0 looks for flash.ocx and won't do its trick unless it finds that file. You may be running a version of the Flash player with a different binary file name. Presentation Server 4.5 was updated to also accept flash8.ocx, flash8b.ocx or flash9.ocx. But what do you do if you're still running Presentation Server 4.0?

There's a hotfix for PS 4.0 [NOTE: this hotfix is for Windows Server 2003] that adds support for Adobe Flash versions 7a, 8, 8b, 9, 9c, and 9d. You'll find the details at http://support.citrix.com/article/CTX115426 (login required). [NOTE: If you have trouble with this link even after logging in, just do a search for CTX115426. I've noticed that the link can take a long time to resolve. An approved support contract is required to access limited release hotfixes and hotfix articles.] The hotfix number is PSE400R03W2K3091. And I expect there will be future hotfixes as new versions of Flash are introduced that have a different binary file name or require new SpeedFlash code to achieve the task of adjusting the Flash player to use simpler graphics.

[UPDATE: A hotfix for PS 4.0 with HRP04 on Windows Server 2000 was made available on March 10th. Customers with an approved support contract can find the article describing this hotfix at CTX115555. The hotfix number is PSE400R04W2K012. This hotfix adds support for Adobe Flash versions 7a, 8, 8b, 9, 9c, and 9d.]

So, does it work? Obviously the current SpeedScreen Flash Acceleration technology is not as advanced as SpeedScreen Multimedia Acceleration, which leverages client-side resources to greatly improve server scalability and provide a just-like-local user experience for a long list of media types that can be decoded with a DirectShow codec. Yet the measurements I've seen for SpeedFlash show an impressive 22% average reduction in bandwidth consumption (the actual figure will vary according to the content).

If your users will be accessing Flash videos, I recommend setting SpeedFlash to be always on, rather than limiting it to just low bandwidth (dial-up) connections.

Audio settings are also important to consider since if you're watching a Flash video it more than likely has an audio track, too. I recommend Presentation Server's Medium Quality setting as the best compromise between sound quality and bandwidth consumption. The Low Quality setting does not make for a very good user experience, and the High Quality setting uses up a lot of bandwidth (roughly 1 Mbps). Improvements to audio support are another part of the Citrix Multimedia Virtualization Initiative (see "Now playing - The Ulysses Audio Codec").

I'll have some more "secrets" for optimizing Flash performance in a subsequent blog post.

Derek Thorslund
Product Strategist, Multimedia Virtualization