VMware recently announced the release of its Blast Extreme protocol in VMware Horizon 7, built on the H.264 video codec to enable additional use cases. As a long-time partner with VMware, we are excited to see any developments that can help increase adoption as this benefits the entire industry.
With VMware supporting both Blast Extreme and Teradici’s PCoIP protocol, many blogs and benchmarks have tried to compare Blast Extreme vs the PCoIP protocol. Most important for a complete comparison is that Blast Extreme uses a single H.264 video codec to compress the entire display, while the PCoIP protocol applies multiple codecs to the display as needed. Having just a hammer is fine if all you are working with is nails, but having a full toolbox is essential if you are building a house.
So, let’s talk about multiple codecs and why you need them.
The entertainment industry has created a huge infrastructure for delivering compressed video content across a wide variety of networks to a plethora of devices that we all use most every day.
So, what is the problem with using these same video codecs to deliver computer desktops and applications over these same networks? The issues stem from fundamentally different needs for remote display protocols. Video codecs are designed for passive streaming of constantly changing, natural image content generally captured from a camera.
In contrast, computer desktops and applications interact directly with human beings and have a mixture of natural and computer-generated content much of which is static. Given the diverse and dynamic nature of computer display content, using only a single codec of any kind will be suboptimal on any content it was not designed to compress.
The idea behind multiple codecs is that your display is rarely doing just one thing at a time. Your desktop is dynamic, with some areas devoted to text, some to video, some to simple apps, and others with intense graphics needs.
A single-codec solution would treat your whole desktop as one thing, so a codec optimized for text would be sluggish with video, while a codec optimized for passive video streaming would be running a more complex algorithm and consuming more bandwidth for text than is necessary. Either scenario is pretty inefficient, causing unnecessary delays.
Video codecs also use color compression techniques that the human eye does not detect for constantly changing natural images, but result in fuzzy text and images that are not color correct when used on text and computer graphics common in desktop applications. At a minimum, this increases eye strain and reduces reading comprehension. Worst case, incorrect medical diagnosis can be made based on the displayed information or perhaps making the wrong color choices that affects the quality of your design or production.
Now, imagine a scenario where your desktop is recognized as being dynamic, where compression algorithms are optimized for all kinds of images (including static, complex, or natural images), text, video or graphically intensive workloads. This is the PCoIP difference.
The PCoIP Difference
PCoIP uses multiple codecs, providing the optimal CPU load, bandwidth and image quality for a variety of use cases. Most text and simple graphics are compressed with a lossless codec saving bandwidth and delivering crisp, readable text. Other computer-generated content is compressed with a codec that preserves the color accuracy and can be easily refined to be fully lossless.
The PCoIP protocol dynamically chooses between codecs, frame rate, and image quality based on available bandwidth. It also uses half as much CPU as a video encoder like H.264 would use for constantly changing application content.
If you’re running a remote interactive computer application of any kind, chances are that a using only a video codec is going to offer sub-optimal performance, creating inefficiencies in bandwidth utilization. Such codecs also lack support for truly lossless image delivery, which is key in many industries (Read this post on PCoIP lossless support!).
Any protocol that uses only a video codec such as H.264 could result in a poor user experience and as much as 3X the bandwidth usage compared to the PCoIP protocol.
However, video content sometimes dominates what you are doing at a given point in time, say when you are watching a training video, a webinar, or even editing a video. In that case, H.264 may be the optimal codec to use depending on server CPU load and network bandwidth.
With the PCoIP multiple codec approach, automatically selecting H.264 as the codec in the appropriate situations is the ideal solution as opposed to forcing the use of H.264 for your entire display all the time. Teradici is integrating H.264 and the automatic detection capability into our suite of multiple codecs and will have this capability available later this year.
Your business is not one-size-fits-all, so don’t choose a one-size-fits-all protocol. Get the best performance, with the greatest efficiencies, from a protocol that supports multiple codecs: PCoIP. At Teradici, we are continuously investing in protocol enhancements to lower bandwidth usage, optimize battery life, and support even more codecs to improve quality and reduce CPU loads. With multiple codecs behind our protocol, you know we’ll keep innovating to give you the best performance and experience possible.