Moonlight Playbacks Video Directly on GPU

| by Abel Avram Follow 9 Followers on Mar 24, 2011. Estimated reading time: 1 minute |

Moonlight has been enhanced to support GPU-accelerated video playback. Silverlight 5 will do the same, but with extra features.

Miguel de Icaza has announced the availability of GPU-accelerated video rendering on Moonlight, the Unix port of Silverlight. The Mono team announced Moonlight 4 Preview 1 a month ago, with new rendering improvements such as: GPU-accelerated graphics, 3D transformations, V4L2 video capture with YUYV or YUV420 pixel format, and the inclusion of Microsoft’s H.264 and AAC codecs that come with Windows Media Pack. But unlike these enhancements, which provide GPU-based rendering for visual trees of components, the new enhancement allows playing HD video on the GPU for a smoother and visually compelling experience.

de Icaza has explained that the new rendering pipeline introduced in Moonlight is simplified compared to the initial one used for video. Instead of converting the H.264 stream to a YUV format, followed by another conversion to RGB, then a resizing of the frame and a final transfer to the video card, the new pipeline decodes the video to YUV format and transfers it to the GPU which does the remaining steps – conversion to RGB and resizing – through hardware before rendering it.

de Icaza remarked that the perceived quality of a 1080p HD video rendered by Moonlight on the GPU was “absolutely perfect.” The source code is available on GitHub and it is going to be included soon in the nightly builds.

Microsoft announced similar improvements for Silverlight and are to be made available with Silverlight 5 beta some time this half of the year, the final version being planned for the second half. While Silverlight will have GPU-accelerated video after Moonlight, Microsoft’s plug-in will come with extra features: TrickPlay which allows fast-forward, rewind, and playback at different speeds, remote control support and DRM management. Also, it is likely Microsoft to test Silverlight on a large sample of graphics cards in order to ensure the video runs smoothly.

Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread


Educational Content

Login to InfoQ to interact with what matters most to you.

Recover your password...


Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.


More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.


Stay up-to-date

Set up your notifications and don't miss out on content that matters to you