Pipelight

32-Bit Graphics Driver

Although 32-bit distributions mostly play Silverlight videos smoothly, you might experience dropouts in the playback with a 64-bit Linux. The problems with 64-bit support are caused by the fact that the 32-bit Silverlight requires a 32-bit graphics card driver.

The setup routines for installing of most distributions will not install this 32-bit driver out the box. You can tell that the driver is missing from the error messages of the Pipelight plugin when you start the browser in a terminal. Listing 7 shows the output for a system with an Intel graphics card.

Listing 7

Driver Problems on 64-Bit Systems

 

On Debian and Ubuntu, you can configure the 32-bit drivers by installing the libgl1-mesa-dri:i386 package. On Ubuntu 12.04, install libgl1-mesa-dri-lts-saucy:i386 (Listing 8). Although the libgl1-mesa-dri:i386 package is available on Ubuntu 12.04, it removes the entire X server – so do be careful. Under Arch Linux, you need to specifically install the driver required for your system (Listing 9). Look online for additional information on 32-bit drivers with Pipelight [13].

Listing 8

32-Bit Drivers in Ubuntu

 

Listing 9

32-Bit Drivers in Arch

 

Optimizing Pulseaudio

The PulseAudio sound server used in many Linux distributions can also cause problems with services that require Pipelight and Silverlight.

Misfires occur if the sound server fails to keep up with the sound. This problem is not limited to older systems with slow CPUs: I simulated the problem on a computer with a recent Core i7 quad-core CPU (3GHz).

You can usually solve these PulseAudio problems with a smaller packet size. To change the packet size, open the PulseAudio configuration file, /etc/pulse/daemon.conf, as root in your favorite editor, and edit the following default-fragment-size-msec (Listing 10).

Listing 10

/etc/pulse/daemon.conf

 

The default value is 25; I changed this value to 5, and a Silverlight-based video ran at 25 fps without any jerkiness in the image and sound. To enable the new settings, you should save the configuration file and restart PulseAudio using the pulseaudio -k command.

Conclusions

In my tests, I was able to successfully use several popular video-on-demand services in Linux. Only Sky Go turned out to be really awkward because I had to change the configuration to force the system to use Silverlight 5.0. Future versions of Pipelight will do a better job of supporting the more advanced encryption in Silverlight Version 5.1. Note that some of the hurdles are legal, because many of the problems with Silverlight 5.1 support are related to DRM. The Magine and Watchever services turned out to be particularly Linux friendly and did not even force me to spoof a Windows user agent.

I discovered one annoying limitation with Amazon Prime Instant Video: Amazon's online video library only plays movies in SD quality with Pipelight under Linux; the Amazon player refuses to play HD videos, claiming that the monitor lacks HDCP support [14]. (See the "HDCP" box.) The reason for this problem is that the Linux graphics drivers do not support functions for restricting the user, but Amazon's service requires mandatory digital rights restrictions. The Pipelight team is working on an appropriate workaround.

HDCP

High-bandwidth Digital Content Protection (HDCP) is a copy protection scheme used to prevent tapping of video and audio data on the (mandatory digital) connection between the sender and receiver. If the output device does not support HDCP, the player reduces the resolution or completely refuses to play back.

Many Rasp Pi fans use the tiny computer as a media center. Raspbmc and OpenELEC are two distributions that specialize in optimizing XBMC for the capabilities of the Rasp Pi. In theory, a Raspberry Pi media center would be an ideal use for Pipelight; however, Silverlight is only available for x86 instruction sets, so the Silverlight plugin won't work with the ARM-based Raspberry Pi.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Netflix on Linux

    The online video store Netflix delivers video on demand to many countries. Although the service offers Linux-friendly HTML5 streams, you have to coax Netflix into actually serving them up.

  • Fresh Moonlight

    Moonlight is the name of Novell's Linux implementation of Microsoft's Silverlight 1.0 technology. Moonlight is now available in a Beta version for 32 and 64 Bit Linux systems, albeit only for Firefox users.

  • Moonlight 2.0 Preview

    The Moonlight Project has been working on an open source implementation of Microsoft's Silverlight technology. Now they have released the first preview of Moonlight 2.0, incorporating some Silverlight 3.0 features.

  • Miquel de Icaza: Moonlight Making Progress

    Mono developer and Novell employee Miquel de Icaza reported on the progress being made by Moonlight at the XML 2007 Conference in Boston. Moonlight is the Linux variant of Microsoft’s Silverlight solution.

  • Free Software Projects

    Finally there's a free alternative to the proprietary Flash on the web. Unfortunately, it implements Microsoft technology whose software patents might render the free Moonlight license useless.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News