Watching multimedia in Slackware’s browser
While I was sitting in my chair with little room for escape (I sprained my lower back yesterday when trying to lift something and can barely move) I thought, I need to do something useful while being constrained.
So, I created some new packages and wrote a few blog posts – this one being the last, because sitting in this chair is becoming equally painful.
What packages? You can already find them in my repository or its mirrors. They are dconf (new package altogether) and updates to gnome-mplayer as well as gecko-mediaplayer for which I did not yet have Slackware 13.37 packages.
And why exactly these three?
I was not too satisfied with the state of viewing embedding media clips in a web browser on Slackware. In the past, I used to check out the new movie trailers on Apple.com, In Slackware, that has never been possible I think. The VLC browser plugin crashes more than that it works, and the mplayerplug-in program which uses MPlayer to show the embedded video did not work reliably. I had built the gecko-mediaplayer browser plugin for earlier versions of Slackware – it uses gnome-mplayer to display embeeded media – but that too never worked with the Apple trailers and it had some of the same quirks that mplayerplug-in also had (all too natural since gnome-mplayer is a continuation of the abandoned mplayerplug-in by the same author).
But today, I grabbed the latest sources and built packages. And lo and behold! I can view Apple’s trailers!
Now, why did I mention that dconf package? Well, it turns out that gnome-mplayer which should not depend on any Gnome library, in fact does depend on an “application settings storage backend” – which is Gnome’s gconf… which is not part of Slackware. So, my Slackware package has gconf support disabled, but that only lead me to the next issue – my firefox kept crashing after installing the gecko-mediaplayer & gnome-mplayer packages.
Easy to spot the cause: you only need to run either firefox or gnome-mplayer from the console and you’ll see the following error message:
GLib-GIO-ERROR **: Settings schema ‘apps.gnome-mplayer.preferences’ is not installed
That error was fixed by adding the following command to gnome-mplayer’s post-installation script.
But we are not there yet. Without a settings backend to store the app’s preferences (your preferences), many of the preference settings that you change do not survive an application restart. Running gnome-mplayer from the commandline shows why:
GLib-GIO-Message: Using the ‘memory’ GSettings backend. Your settings will not be saved or shared with other applications.
This is where the dconf package enters. Let me quote: “Dconf’s main purpose is to provide a backend to GSettings on platforms that don’t already have configuration storage systems.” It’s a small and efficient program without dependencies, and after installing dconf, our gnome-mplayer no longer complains. All its preferences are now being stored on disk.
Looking back on the weekend which is almost over now, I have performed a number of related plumbing activities: I upgraded my MPlayer package to a recent snapshot – you can grab that and use it to upgrade Slackware’s version of MPlayer with mine. Plus, I have not one, but two graphical front-ends for the mplayer binary: my repository now has the entirely new UMPlayer (universal multimedia player) which has a Qt4 interface, and an updated gnome-mplayer whose GUI is based on the GTK widget set. The choice is yours! But you should definitely give UMPlayer a trial run if you are a regular YouTube visitor – it has an awesome YouTube search & play feature that does not require a webbrowser.