My Laptop Lament

… or, how I spent the last 6 months trying to get a brand new laptop to suspend / resume correctly … and am still trying.

In a previous post I talked about my initial experiences in choosing an operating system for my laptop; the saga is far from over. I’m trying to be pragmatic, but my unreasonable interest in the underdog OS keeps urging me on. Perhaps it’s my dislike for Microsoft’s decades of overwhelming dominance; why should 6 billion people have only one choice in operating system? Anyway, 100+ subscribers later, and growing, my ubuntu bug report has gathered noticeable community interest but garnered ZERO attention from Canonical or anyone else who could actually help. Over on the Linux Kernel bug report we’ve had far more commitment from Tejun, but even he has his limits.

To be fair to the Ubuntu’s bug reporting system, Launchpad.net, it has acted a focal point for sufferers of the dv5’s refusal to suspend / resume properly under Linux. Aside from a community effort in spamming the HP support teams we’ve also been able to make a small but noticeable protest on the HP forum. But the big question remains, will a fix present itself within the useful life of my laptop?

There is this notion, out there in Linux land, that there are these crack, benevolent developers floating around, just spoiling for a chance to fix someone’s hardware woes. Sadly, I’m yet to meet such coding superheroes. The truth is I’m running Vista and wishing I’d just bought a Mac. Fortunately, I see most of my computing life through the window of Google Chrome, which gives me a sense of having chosen an Open Source-friendly corporate overlord, but it’s not the same. I miss GNOME’s minimalism, the value of F-Spot, the native stability of GIMP and that beautiful, eminently useful, Bash shell.

A laptop is just not a laptop without suspend and resume.

Stats, Rewrite and Anonymity

I’ve been running these blogs since 2007 without any real idea of the kind of traffic they’re generating on account of WordPress’s fetish for rewriting URL’s; that and a personal sense of apathy. But, a quick google tonight revealed a helpful tip from a fellow Dreamhost user on how to stop rewrites from burrying the dreamhost stat page. I’m somewhat surprised that after two years of blogging over three sites it’s the most recent addition (this blog) that is generating the most traffic. Clearly you folk are more interested in my geekish ravings than me personally. I’m OK with this; I’m generally disinterested in others too. In fact I’m kind of comforted by the knowledge that I haven’t acquired some sort freakish cult following during my years of blogging. In this world, anonymity is usually a beautiful thing.

Rhythmbox is Rad

Rhythmbox

It’s time for a rad revival and leading the charge is Rhythmbox, which today earns the venerable title of Rad. In a recent post I mentioned some of the troubles I’ve had with media playback in Ubuntu but after a recent comment by Peter Lamb I decided it was time to talk about a success. Rhythmbox was originally designed to be an iTunes look alike music player for Linux, as we all know Apple aren’t going to port iTunes any time soon. But it has progressed with every release to take on a distinct flavour of its own.

Rhythmbox Audio CD

Just in case you’re wondering, I don’t love it because it looks like iTunes, in fact the reason for my affection is on the contrary. I find iTunes to be a good application at what it was designed for: to support and sell iPods (which I have), music and to create a whole media ecosystem; to this end it has been a success. But I have other requirements than just the well being of Apple share holders. I want to choose from a wider variety of music formats (MP3, AAC, OGG, FLAC etc.) for ripping and listening, I want to listen to a broader range of music & try new technologies (Last.fm etc.), and I want it on Ubuntu.

Rhythmbox with Last.fm

I have been really starting to enjoy Internet radio of recent times listen to everything from Iranian traditional sonati to my own customised feeds from Last.fm. On that last note, Last.fm is far more practical to use in Rhythmbox as you don’t need to open your web browser to enjoy your favourite music; it’s also a great way to find new artists, albums or tracks that you might like.

Rhythmbox and the iPod

Now of course I live in the real world where iPods rule the day, I even own and regularly use one and this is where I think Rhythmbox slots in nicely. I can actually use my iPod on both Mac OS X with iTunes and Ubuntu with Rhythmbox. All I do is plug my iPod into my laptop, Ubuntu recognises it (Mac format and all) and offers to open it in Rhythmbox. Rhythmbox then allows me to neatly access all my music and podcasts then and there, much the same as iTunes, I copy or just listen directly. I don’t use Rhythmbox for managing my iPod, and there are some limitations, but this arrangement works perfectly for my needs.

The last thing I’d say about Rhythmbox is that it’s not an iTunes killer, but it gives me a whole lot that iTunes can’t. The other thing is that it keeps getting better. If something is missing or a bit buggy in this release I can wait for the next, or even file a bug report online to get things started, and over time it just keeps improving; that’s open source for you.

Everybody Loves Eyecandy

Paul's GNOME desktop

And so does Paul. So I set about sexifying my desktop yesterday and I’m quite pleased with the results. I used a really nice Ubuntu GNOME theme called Dust, a GDM Login Window the called Woobuntu 2.0, changed the default font to FreeSans and turned on Subpixel Smoothing. And it was good.

Continue reading ‘Everybody Loves Eyecandy’

I Love My M-Audio Transit but …

Some time ago I purchased an M-Audio Transit USB sound card, and it’s actually pretty cool but it has caused me some angst. At first I was using it solely under Mac OS X 10.4, and without incident, but then I was forced to buy a regular laptop and the love ended there, somewhat.

M-Audio Transit USB

I run both Windows Vista Business and Ubuntu 8.10 on my laptop, Ubuntu for day-to-day and Vista for games and audio production (Ableton Live). I thought as though Vista has been around for a while, like my Tranist, it should be a good fit, unfortunately I was wrong. Firstly, a little magic is required when installing the Transit Vista driver and making it function. Secondly, the Vista driver for Transit itself is still just the first release beta and has not been updated since it’s release in July 2007. As a result there are some problems with it and led me to question whether or not Transit Vista driver is abandonware. Mercifully an M-Audio support technician was at least able to confirm that Vista users have not yet been completely ignored by M-Audio, but there are no guarantees that we’ll see something more substantial before Windows 7 arrives.

I also bit the bullet and had a go at getting my Transit USB to work under Ubuntu 8.10. The initial instructions I read just about put the fear of God in me, but thankfully it’s not that miserable for Ubuntu users. One can easily install the Linux Transit drivers by using Synaptic is selecting the “madfu” package. This beats the pants off compiling it yourself and is almost easier than the Vista approach - except for one small hitch: there’s a bug. Oh why, why? Once again, as with the Vista driver, it’s to do with the driver being out of touch with a newer release of the Operating System. I was able to fix it with some Googling and just a few small tweaks. Now my Transit driver loads immediately on connection under Ubuntu, unless I plug it into a USB port different to the previous (yes, this steams from the bug) but I have not the inclination to go further with it at this time. Nor is there any control panel available under Linux and this the fault of M-Audio as they refuse to even simply devulge device specifications, let alone write a driver themselves. Come guys, use the power of the Open Source community to your advantage!

My next adventure will probably be to see how well the Transit and Ableton Live run on a virtualized instance of Windows XP in VirtualBox under Ubuntu. This could hopefully be a nice compromise. On the bright side, at least I can use it, somewhat, under any OS I like and it is a wonderful little sound card.

RoboSnap

Have you ever wanted to watch your computer battle itself in a energetic game of Snap? I can’t say that I have, but as part of my Master of Computing studies I’m doing Advanced Programming in Java and this has resulted in me undertaking such an experience. Before you ask what RoboSnap has got to do with the meatier issues of Information Technology, the goal of this assignment was to implement a number of programming features including multithreading. So my simple idea of creating a Snap game to meet the requirements turned into a 764 line Tour de Force. Some food poisoning in Istanbul, one gracious extension and a week of sleep deprivation brings me to this; please welcome RoboSnap.

Continue reading ‘RoboSnap’

The Chat Problem

More or less everyone who uses the web regularly uses chat in some way, but it recently struck me how it was becoming a problem for me. I’ve got Gmail chat, or GTalk, which is conveniently next to my Gmail e-mail, it even offers some VOIP. Then there’s Skype, which runs on all operating systems really well, but it really is a VOIP program with a decent chat included; sometimes I just don’t want a phone call. Then there’s “good old” MSN, I hate it mostly for ideological reasons. My last, and most perplexing, is Facebook chat. Facebook chat is rubbish, not that I like Facebook much either, but one has to admit the chat is really quite rubbish but everybody I know is on Facebook. Finally the ragged ends of my grieves came together in one cohesion moment, there must be a better way than this.

Carrier pigeon? Perhaps. Back in the day I used a piece of software called Gaim for my MSN chat, it’s since improved a lot and is now known as Pidgin. It’s also available on Mac as Adium. I knew it could do a good job of Gmail & MSN but in reality there aren’t that many people on my lists. A little googling uncovered a hidden gem, Facebook plugin for Pidgin. I’m no fan of Facebook, but this plugin means that almost instantly I have a chat client that covers practically everyone I know online. So now I’ve settled on Skype and Pidgin.

Mythbusters on Parallel Processing

I can’t believe I didn’t see this video on Slashdot first! Mythbusters, Parallel Processing, The Mona Lisa and Paintballs: need I say any more!

Ubuntu and Media Player Problems

It’s no secret that media playback is more convoluted on Linux than it should be. The Ubuntu distribution has made a number of efforts to the reduce the pain felt in this area, most of which I applaud, although it’s no where near as good as it should be. It all comes down to an ideological clash between some open source developers and secretive proprietary software vendors. Not surprisingly, on switching to Ubuntu as a primary platform for my laptop I have encountered some problems with media playback.

In theory Ubuntu should come with everything that I need, but the reality is that there are incompatibilities and bugs that mean I can’t have my cake and eat it too. Ubuntu 8.10 comes with a media framework called GStreamer that is supposed to glue everything together and make life easier. In some ways it succeeds and in others not so. The problem is that when it comes to GStreamer and playing a host of media formats reliably it just doesn’t. This is because some of the media codecs it provides are pretty rubbish in the real world. The default media application in Ubuntu is Totem. Totem uses GStreamer by default, but this just makes things worse as Totem is just not that great at much and seems to multiple your woes when mixed with GStreamer. Of course you can switch to the Xine version of Totem (which uses a different framework / back-end) but this in turn fixes some woes and creates new ones (eg. web browser embedded Quicktime playback becomes problematic). Thankfully there is VLC media player.

VLC Media Player is a popular program for playing just about any kind of media on Windows, Mac OS X or Linux. It works quite well under in Ubuntu 8.10 and so I have set it to be the default player for most video types. It does have one annoying glitch in that it doesn’t play well with Compiz (the 3d desktop effects) and video hardware acceleration. VLC Media PLayer also has a Mozilla Plugin which lets you use VLC for all embedded media playback while browsing the web; it does a reasonable job of this. Of course there were always going to be compromises made.

For the moment I’ve settled on VLC Media Player as my default video player and I’ve turned off Compiz so that my video playback will be 100%. I’m currently undecided as to whether Totem GStreamer or Totem Xine is the better option. Totem GStreamer seems to do the best job of embedded playback, Totem Xine not so much. But Totem Xine is almost as good as VLC Media Player and makes everything look integrated and Ubuntu-ish. Right now I’m running Totem Xine as the default media player, VLC Media Player as the default video player for MP4 and XVID plus my choice for DVD playback, and am yet to decide between Totem Xine and VLC for my Mozilla plugin.

Update (31st December 2008): I’ve since discovered that the MPlayer Mozilla Plugin does, in my experience, a better job than the Totem or VLC plugins. Just remember that you need to uninstall (through Synaptic Package Manager) any other Mozilla plugins (such as Totem or VLC) for it to work properly. Also, Compiz (3D desktop effects) and video playback has started working for some unknown reason. So the long and the short of it is:

  1. Use Totem Xine instead of Totem GStreamer
  2. Use VLC Media Player for Video and DVD watching
  3. Use MPlayer Mozilla Plugin for embedded media playback

WordPress and Quicktime

Over this last year I have been experimenting with different ways of integrating video within our blogs. At the outset I had to main options: use something like YouTube or Google Video or host it myself. I picked the later option for two reasons. Firstly, I was not happy with the quality of the Flash videos on these free services; way too pixelated and absolutely no way of controlling this. Secondly, YouTube means that any idiot can come along and scribble profanity over what could be a video meant for a wide audience, including children.

Quicktime and Wordpress

I started by making Flash videos, but this brought back the quality problems. I’m not willing to fork out for expensive Adobe software and I don’t want to steal it. The free software options, such as avidemux, whilst being just satisfactory, didn’t give me enough control over quality and performance, plus there were bugs to work around. So I started looking at x.264 compression.

I really liked the look of mp4 / h.264 (x.264 / lavc) encoded video and delivered a lot of options for tweaking and optimising video quality and performance. Secondly it is an open standard, unlike Flash video, and there are better free / open source software tools out there for creating and editing this format. The way I look at it is that many people will already have Quicktime installed, probably as a result of using iTunes, and this is a wide enough user base for me. The next challenge was getting it to work well with Wordpress.

There are a number of ways that you can do video in Wordpress but my requirements were specific. Firstly I wanted a image placeholder that anyone could view without having Quicktime installed. Secondly I wanted to ensure that my blog post didn’t look like HTML soup when viewed as an RSS feed. I was amazed at how many of the WordPress / Quicktime plugins didn’t meet both of those requirements. Some relied on Quicktime to display the poster frame while others generated unavoidable interference in RSS feeds. This last option was important because I use the RSS feeds to supply content across our blogs. I finally settled on a suitable configuration.

I use a JavaScript library called jQuery (hosted on Google for my convenience) and a plugin for it called EmbedQuicktime. I simply included some code in the header of my site’s template like so:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript"
  src="http://www.swansonblog.com/scripts/jquery.embedquicktime.js"></script>
<script type="text/javascript">
  jQuery.noConflict();
  jQuery(document).ready(function() {
    jQuery.embedquicktime({
      jquery: 'http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js',
      plugin: 'http://www.swansonblog.com/scripts/jquery.embedquicktime.js'
    });
  });
</script>

Then the jQuery library is available on any page of that blog.

When I want to embed a video in a post I simply upload the video and a place holder image to an appropriate location on my web site (I use a separate subdomain for this to avoid WordPress URL redirection problems and for future proofing). I then copy the HTML from a previous video post and change the particulars. I’ve also done up a template for the poster frame in GIMP so I can easily punch out that still image with the overlaid play button.

I’m quite happy with the end result, it’s a robust system of embedding video and, whilst not entirely automated, it delivers good product to wide number of people. Check it out the end result here:

http://www.swansonblog.com/paulandlauren/2008/12/22/and-oh-the-ice/