Playing QuickTime videos in Firefox and Chromium + XVideo bug in AMD Catalyst 11.11 and 11.12 driver

Video problems seem to be perennial in Linux. The latest two to affect me were:

1) Firefox and Chromium could no longer play QuickTime videos on the Apple iTunes Movie Trailers Web site;

2) a bug in the latest two releases of the closed-source ATI FGLRX driver (AMD Catalyst 11.11 and 11.12 for Linux) that causes the X.Org Server to crash when I try to play .mov files using XVideo (Xv) output in media players such as SMPlayer, VLC, GNOME-MPlayer etc. (see e.g. Gentoo Bug Report No. 391193).

The reason I mention these two problems in the same breath is because I encountered the second whilst trying to fix the first. Anyway, below I explain what I did to resolve the two problems.

I first had a problem displaying QuickTime movie trailers in Firefox a couple of years ago. The solution then was to install the User Agent Switcher add-on for Firefox and create a user agent to fool the Apple Web site into thinking Firefox was using Apple’s QuickTime browser plugin instead of mplayerplug-in for Linux. But within a few days Firefox again could not play movie trailers on the Apple Web site. I had to uninstall mplayerplug-in and install the then latest version of its successor, gecko-mediaplayer (which uses gnome-mplayer). All was good again until…

Several months ago I found that, yet again, Firefox could not play movie trailers on the Apple Web site. I tried to view the trailers in Chromium instead but had the same problem. Both browsers just displayed a black box where the video should be playing. A little searching on the Web led me to the conclusion that the problem lay with the latest version of gecko-mediaplayer and gnome-mplayer that I was using at the time, so I gave up and decided to wait for new versions of gecko-mediaplayer and gnome-mplayer to be released.

Now, yesterday I wanted to watch a particular trailer on the Apple Web site, but, despite having installed the latest version of gecko-mediaplayer and gnome-mplayer anyway a few days ago, neither Firefox nor Chromium would display the trailer. A little searching on the Web suggested that I should try mozplugger instead of gecko-mediaplayer, so I uninstalled the latter, installed mozplugger and… the black box in the browser was replaced by a white box displaying the QuickTime ‘Q’ logo and a message that I needed to install QuickTime. Argghh!

So I uninstalled mozplugger and reinstalled gecko-mediaplayer and gnome-mplayer (the same versions that I installed recently, you inderstand). This time my attempts to watch trailers on the Apple Web site resulted in Firefox and Chromium displaying grey boxes and appearing to download the QuickTime videos, but then the X.Org Server crashed, restarted and the Desktop Environment’s login screen appeared. Furthermore, when I tried playing .mov videos in VLC, the same thing happened. Perhaps now you may understand why I mentioned above the bug with the FGLRX driver? It took me a few hours to realise there were two separate problems here.

The work-around to the second problem was to configure media players to use a different output driver rather than the XVideo (Xv) output driver. For example, in VLC this is done via Tools > Preferences > Video and selecting ‘GLX video output (XCB)’ as the Output under Video Settings. For SMPlayer this is done via Options > Preferences > General and selecting ‘gl (fast – ATI cards)’ as the Output driver under the Video tab.

And, most importantly, in order to enable gecko-mediaplayer to display those Apple QuickTime trailers in Firefox and Chromium I had to launch gnome-mplayer, select Edit > Preferences, click on the Player tab and select ‘gl’ as the Video Output under Adjust Output Settings. Actually, clicking on the MPlayer tab and entering “-vo gl” (without the quotes) in the ‘Extra Options to MPlayer:’ box achieves the same result. By the way, the tickboxes QuickTime Emulation, RealPlayer Emulation, Windows Media Player Emulation and DIVX Player Emulation were already ticked on the Plug-in tab.

So, there you have it. After several hours of searching and tinkering I can again watch movie trailers on the Apple Web site. Don’t you just love Linux?

For the sake of completeness, below I list the versions of the applicable packages currently installed on my main laptop:

firefox-9.0
chromium-16.0.912.63
gecko-mediaplayer-1.0.5_beta1_p20111207
gnome-mplayer-1.0.5_beta1
mplayer-1.0_rc4_p20111215
ffmpeg-0.9
libquicktime-1.2.3-r1
xorg-server-1.11.2-r2
ati-drivers-11.12

EDIT (January 2, 2012): I’ve just had a thought: When I used Skype for Linux a few days ago, my laptop rebooted spontaneously as soon as the person at the other end enabled her Webcam in Skype for Windows. This was reproducible consistently. However, I could enable my Webcam, she could see me in Skype on her PC, and I could also see video of me in Skype’s ‘myself preview’ on my laptop. Now, it could be a coincidence but I wonder if the reboot occurred because Skype for Linux uses XVideo? Skype’s Web page for Skype for Linux lists “Video card driver with Xv support” as one of the hardware requirements, which looks pretty conclusive to me. However, this leaves a couple of niggling questions: a) If Skype does indeed use XVideo, why didn’t the ‘myself preview’ video in the Skype for Linux window crash the X.Org Server?. b) If the FGLRX driver bug is the cause, why did my laptop reboot instead of just the X.Org Server crashing, restarting and displaying the Desktop Environment login screen? Furthermore, Skype’s Options > Video Devices > Test does work correctly on my laptop. So perhaps the rebooting problem is caused by a different bug. Suspicious, though. Unfortunately, as far as I know there is no way of switching Skype to use OpenGL instead of XVideo, so I cannot prove that XVideo is the cause of this particular problem I’m experiencing with Skype.

Evaluating Sabayon Linux Xfce

Sabayon Linux Xfce on Acer Aspire 5920

EDIT (January 18, 2014): This article refers to an installation of Sabayon Linux from the Version 10 ISO, when the distribution still used OpenRC as the init system, rather than systemd. Therefore some of the commands in this article are no longer applicable to the current versions of the distribution using systemd.

The last time I installed SL (Sabayon Linux) on one of my own machines was 18 months ago, and that was my media centre. I haven’t touched that installation since: “If it ain’t broke, don’t fix it.” My most recent desktop SL installation was on a relative’s Acer Aspire 5738 laptop just over a year ago, but it was disappointing. In the end I did get SL working with the laptop’s NVIDIA GPU but, amongst other things, ALSA didn’t work correctly and even I couldn’t fix it. The owner was understandably unimpressed with SL and ended up installing Ubuntu over it, which worked perfectly out of the box.

Since then I have not used SL much apart from occasionally booting an ISO image of the latest SL LiveDVD in VirtualBox on my main laptop running Gentoo, or on the family PC running Windows Vista. So I was keen to try a recent edition of SL, and the opportunity arose this week as I had to replace an Acer Aspire 5920 laptop belonging to a family member and I thought it would be interesting to install SL Xfce Edition on it. (I bought a Samsung NP350V5C laptop to replace it, if you’re interested.)

That Acer Aspire laptop is 4 years old and had been causing a lot of hassle: a hardware design fault made the display flicker, and Windows Vista often refused to connect via WiFi to my home network. A quick search of the Web turns up plenty of complaints about these two problems with this particular Acer model. Oh, and one more thing, Windows Vista was unbelievably slow on the laptop. You really could go and make a cup of coffee in the time it took to boot.

I got a local PC repair shop to look at the ribbon cable in the lid that is known to cause the flickering display, and decided to wipe the HDD (good riddance, Vista) and install SL 10 64-bit Xfce. Below I list the laptop’s specification.

– Acer Aspire 5920-5A2G25Mi
– 15.4″ (1280 x 800)
– 250 GB SATA HDD
– Intel Core 2 Duo T5550 1.83 GHz
– 2GB DDR2 RAM
– Intel Mobile GM965/GL960 Integrated Graphics Controller with Intel Graphics Media Accelerator X3100 with up to 358 MB Shared Graphics
– Intel 82801H HD Audio Controller
– Broadcom Netlink BCM5787M Gigabit Ethernet PCIe
– Intel PRO/Wireless 3945ABG
– Ricoh RSC832 IEEE 1394 Firewire Controller
– Ricoh R5C822 SD/SDIO/MMC/MS/MSPro Adapter
– Ricoh R5C843 MMC Host Controller
– Ricoh RSC592 Memory Stick Bus Host Adapter
– Ricoh xD-Picture Card Controller
– Suyin Corp. Acer CrystalEye Webcam (0.3 Megapixels)
– CD/DVD reader/writer
– 4 USB2 ports
– 56K ITU V.92 modem port

This model has a Bluetooth button but does not have Bluetooth hardware installed. The Bluetooth button can be configured for other purposes, as I discovered after installing SL.

I downloaded the file Sabayon_Linux_10_amd64_Xfce.iso from the SL Download page, and used UNetbootin version 581 to create a LivePenDrive on a 4GB pen drive. I inserted the pen drive into the Aspire, booted, pressed F2 to get to the BIOS menu, configured the BIOS to boot the pen drive, and rebooted.

The SL Live environment loaded without problem and I was able to access my home network via WiFi with ease.

I launched the SL installer and was pleasantly surprised to see that it is more polished that the version I used a year ago. However, over the years I have found that the SL Installer often crashes when it tries to partition the HDD, and the same thing occurred this time. Normally when this happens I boot up a SystemRescueCd LiveCD and use GParted to partition the HDD and format the partitions, then I reboot the SL LiveDVD and re-run the Installer, which then works. This time, however, I just decided to open a Terminal window from the SL Live environment and use the fdisk command to create the partitions manually. Then I re-ran the SL Installer. I was now able to specify the mount points for the partitions and format them, and installation was completed quickly.

I booted the HDD and was pleasantly surprised. Almost everything worked ‘out of the box’ (including the memory card slot), and the overall impression was of a polished distribution with an attractive Xfce desktop. SL looks great on the laptop’s relatively low resolution 1280×800 screen, and I suspect the Infinality patches make a difference. Most of the applications I needed were already installed, to make life easier. Apart from the positive impression aesthetically, I am very impressed with the speed at which it runs. This is one of the snappiest Linux installations I have used.

I did need to perform a few tweaks, and I’ll mention the main ones throughout the remainder of this article.

As SL is a rolling distribution I wanted to bring the installation bang up to date, so I used the usual Entropy commands in a Terminal window:

$ su
Password:
# equo update && equo upgrade && equo conf update

I did not need to upgrade the kernel using the SL kernel-switcher utility, as the version of the latest kernel in the SL Entropy Weekly repository was the same as the version installed by the LiveDVD.

Tapping on the touchpad didn’t work out of the box, but all I had to do was configure it using Xfce’s ‘Applications Menu’ > Settings > ‘Mouse and Touchpad’ > Touchpad (tick ‘Tap touchpad to click’).

Although the Uncomplicated Firewall was installed, a front-end wasn’t, so I installed UFW Frontends:

# equo install ufw-frontends

I launched ufw-gtk (Firewall Manager) and configured UFW as explained in How to config ufw/ufw-frontends for Samba browsing/printing.

Xfce has some useful plugins and utilities, so I installed some of those:

# equo install xfce4-power-manager xfce4-sensors-plugin xarchiver xfce4-battery-plugin thunar-volman xfburn tumbler

A calculator is always handy too:

# equo install galculator

The system clock was not displaying the correct time (it was one hour ahead of actual time) so I followed the SL Wiki article HOWTO: Clock, Time, UTC, Dual boot with Windows and then used the Linux date command to set the correct date and time:

# date MMDDhhmm

OPTIONAL: To keep the system clock in sync with a remote time server when the laptop is connected to the internet, I installed the package net-misc/ntp:

# equo install ntp

and then edited the file /etc/conf.d/ntpd so it contains NTPD_OPTS="-g" and I added the initscripts for NTP Client (executes once at start up) and the NTP daemon (runs continuously) to the default runlevel:

# rc-update add ntpd default
# rc-update add ntp-client default

The SL Xfce Edition LiveDVD installs the Midori Web browser which is lightweight and good, but not as good as Firefox, my favourite browser, so I replaced Midori with Firefox:

# equo remove midori
# equo install firefox

I found that the film trailers on the iTunes Movie Trailers Web site would not play in the browser, so I installed gecko-mediaplayer and gnome-mplayer (and used Edit > Preferences > Player to set ‘Video Output’ to gl for OpenGL or xv for XVideo) and I disabled the Totem plugin in Firefox (Add-ons > Plugins and disable ‘QuickTime Plug-in 7.6.6 The Totem 3.4.3 plugin handles video and audio streams.’) which solved the problem. An earlier blog post of mine also mentions this: Playing QuickTime videos in Firefox and Chromium + XVideo bug in AMD Catalyst 11.11 and 11.12 driver.

As the volume control thumb wheel on the laptop did not work in SL, I used Xfce’s Settings > Keyboard to configure the two unallocated function keys F9 and F10 to be Decrease Volume and Increase Volume, respectively:

amixer set Master 5%- allocated to F9
amixer set Master 5%+ allocated to F10

and I allocated F8 as the Mute button, as it already had a symbol for that printed on it:

amixer set Master toggle

Sound quality is excellent.

I installed Skype:

# equo install skype emul-linux-x86-medialibs

which works well apart from the video image from the laptop’s Acer CrystalEye Webcam (310,000 pixels, circa 640×480), which has flickering blue horizontal lines. I installed GUVCView, a GUI to configure the uvcvideo driver module.

# equo install guvcview

My adjustments using GUVCView helped slightly, but the image quality is still not great. The image is just about tolerable when the subject is illuminated by daylight, but poor in artificial light. Searching the Web tells me that plenty of Windows users have had problems with this model of Webcam too.

I wanted to be able to access computers running Windows on my home network, and to be able to print on printers connected via USB to those computers, so I added SAMBA to the default runlevel so that it would be started automatically when the laptop boots:

# rc-update add samba default

I also edited the configuration file /etc/samba/smb.conf to be as follows:

[global]
netbios name = Aspire5920
message command = /usr/bin/linpopup "%f" "%m" %s; rm %s
printcap name = cups
printing = cups
printer admin = @adm
log file = /var/log/samba/log.%m
max log size = 50
map to guest = bad user
security = user
encrypt passwords = yes
smb passwd file = /etc/samba/private/smbpasswd
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
name resolve order = wins lmhosts bcast
wins support = yes
dns proxy = no

[homes]
comment = Home Directories
read only = no

[netlogon]
comment = Network Logon Service
path = /var/lib/samba/netlogon
guest ok = yes

[printers]
comment = All Printers
path = /var/spool/samba
guest ok = yes
printable = yes
create mask = 0700
print command = lpr-cups -P %p -o raw %s -r   # using client side printer drivers.

[print$]
path = /var/lib/samba/printers
write list = @adm root
guest ok = yes

[PUBLIC]
path = /home/fitzcarraldo/Public/
guest ok = yes
read only = no

I installed the drivers for two of my printers:

# equo install gutenprint

and used the CUPS browser interface http://localhost:631/ to configure CUPS to use a Canon PIXMA MP510 via SAMBA connected to a PC running Vista, and to use a Canon PIXMA MP560 on my home network via WiFi.

When configuring CUPS to use the Canon PIXMA MP510 printer connected to the family PC that is running Windows Vista, I had to specify the printer’s SMB address as follows:

smb://workgroup/username:password@hostname/printername

where username is the name of a user account on the Windows Vista PC, and password is the password of that user account.

For example, let’s say that I configured Windows Vista on the family PC some years ago as follows:

PC name: SA90

Work group name: WORKGROUP

Printer name: Canon_MP510_Printer

User name: Fitzcarraldo

User password: MollyAida

then the SMB address I would specify to the CUPS Manager for the printer would be:

smb://WORKGROUP/Fitzcarraldo:MollyAida@SA90/Canon_MP510_Printer

I configured the Xfce top Panel to show the Xfce LCD brightness plugin, Xfce audio mixer, Xfce sensor plugin, Xfce battery monitor. By the way, Xfce Power Manager works correctly when the laptop is using its battery.

Xfce makes it easy to configure shortcut keys: ‘Applications Menu’ > Settings > Keyboard | ‘Application Shortcuts’. I configured the browser launch key on the left of the laptop’s main keyboard to launch Firefox. And, as I am used to launching Yakuaki in KDE using F12, I set up F12 in Xfce to run /usr/bin/terminal (I could instead have installed Guake and used Xfce’s ‘Applications Menu’ > ‘Session and Startup’ | ‘Application Autostart’ to configure Guake to launch automatically at start up).

Basically, almost everything works well.

Also, I installed superadduser and added another user successfully:

# equo install superadduser

Although the Xfce ALSA Mixer works fine, I installed PulseAudio Volume Control too:

# equo install pavucontrol

Actually you do need both an ALSA mixer and a PulseAudio mixer because you can get into the situation where the ALSA volumes are turned up but the PulseAudio volumes are turned down.

As I sometimes download YouTube videos for offline viewing, I installed the version of the excellent Python script youtube-dl that is in the SL Weekly repository:

# equo install youtube-dl

but it turned out to be the package net-misc/youtube-dl-2012.02.27, which wouldn’t download YouTube videos. I had to download the latest version of the script from the youtube-dl developer’s Web site, made it executable (chmod +x ~/youtube-dl) and copied it to the directory /usr/bin/ to overwrite the 2012.02.27 version installed via Entropy.

Thunar was taking a very long time to open the first time I launched it after each reboot, and was also launching twice. To stop this happening I edited the file /usr/share/gvfs/mounts/network.mount and changed AutoMount=false.

Furthermore, the following message sometimes appears in a pop-up window when launching Thunar:

Failed to open directory “fitzcarraldo”.
Error when getting information for file ‘/home/fitzcarraldo/.gvfs’: Transport endpoint is not connected.

Searching the Web indicated the following command might fix it:

# umount /home/fitzcarraldo/.gvfs

It seems to have helped, but the message does still appear sometimes.

One problem I experienced 18 months ago with the SL 5.4 E17 Edition — and I notice has been reported by several users in the SL Forums since then — is that SL does not always set up the user’s locale correctly. During installation I selected English as the language, the UK as my location and English (UK) for the keyboard, and ended up with the US locale:

# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

What I want is the British locale. I rectified it by following Steps 3, 4 and 5 in the SL Forums post Re: en_GB language missing after install.. I think the SL Installer probably needs modifying.

Summary

SL 10 Xfce is an attractive installation demonstrating a fair amount of attention to detail, but the Installer has some frustrating problems with partitioning and the set up of the locale. These problems have been present for quite some time now and could be ‘brick walls’ for newcomers to Linux.

I use Xfce in Gentoo on a legacy laptop (Pentium III) and so am familiar with it, but it looks great in SL and just seems that little bit more polished.

But the main impression I get from this installation is just how zippy and responsive it is. Video runs smoothly however fast I jiggle around a media player window, and we’re talking a relatively low-end graphics processor here, not an AMD or NVIDIA GPU. Applications open really fast. Overall, it’s a pleasure to use.

When I think back to how Windows Vista ran on this laptop, the difference is like night and day. It’s like having a new, more powerful laptop. I’ve now added a user account for my wife as she has decided she will use it. Not bad for a laptop I thought I would give to my local repair shop for spares.