Sunday, 13th July 2008

Flickr coolness

Posted by David in Internet @ 18:10

Decided to have a play with Flickr today. I haven’t really bothered uploading stuff to it before, since I have my own photo album, but just wanted to have a play. Then I saw a ‘blog this’ button alongside my first upload, hence this post. The fact that it can blog direct to my Wordpress blog using it’s API is also a great example of the coolness that is Flickr.

I will need to give some serious thought to using it instead of the photo album I spent ages coding…

Edit: Required lots of editing to fix brokenness in the generated-HTML, which made a bit of a mess on the page. A small amount of fail is OK.

Sunday, 22nd June 2008

Food festivals…

Posted by David in Life @ 13:28

…should be banned.

All they do is prey on unsuspecting foodies with more disposable income than sense.

This weekend I’ve spent as much on food and beer as I normally would in three weeks…

Wednesday, 18th June 2008

Firefox 3

Posted by David in Free Software, Internet @ 20:34

Well it’s been a while, loyal readers, but here I am blogging again. Bloglines tells me I have four subscribers, and presumably there’s also some people out there subscribing through Google Reader and other means, so I guess I have some sort of duty to post stuff…

Anyway, I had to jump on the Firefox 3 bandwagon and help with the target of breaking the world record for most downloads in a day - actually there is no record, this’ll be the first, but Firefox 2.0 got 1.6 million downloads on the day of release so I guess they’ll be looking to exceed that.

I must say that I wasn’t actually going to download it today, I was going to wait until it arrived in Debian, but after reading about some of the new features earlier today I decided I had to give it a go.

The only thing I’ve really noticed so far is that pages load/render much quicker. As an example, I use MythTV’s MythWeb application to allow me to view the program guide without having to turn my head 15° and look at the TV. Under Firefox 2.x, it took a good few seconds to load as it’s a very complicated page with an awful lot of content. Under Firefox 3.0, it’s instant. Literally. Very cool.

The other feature I’m expecting to be useful is the ’smart location bar’, which means that soon as you start typing a URL in the location bar it will search through not only the URLs, but also the titles of previous sites you’ve visited to help you find the site you’re looking for. Pretty good if you’ve forgotten the URL of the site, but can remember the name.

However there is one very unfortunate problem I have with Firefox 3.0 - it refuses to let me access my website. Seriously. Every other website in the world, including my other websites, work fine but it won’t let me access this one - it just says it couldn’t look-up the domain. However my old version of Firefox, which I’m using now, works just fine. Maybe Firefox 3 has some kind of clever crap filter, designed to stop users being exposed to drivel like this….

Saturday, 10th May 2008

Dumb MTAs…

Posted by David in Internet @ 12:22

I’ve been getting an unreasonable number of e-mails like the following recently:

Our MailScanner believes that the attachment to this message sent to you

From: somespammer@noreply.com
Subject: Willkommensbonus - 400 Euro!

is Unsolicited Commercial Email (spam). Unless you are sure that this message
is incorrectly thought to be spam, please delete this message without opening
it. Opening spam messages might allow the spammer to verify your email
address.

If some MTA decided that this was spam, WHY DID IT STILL SEND IT?! ARGHHHH!

What’s the point of installing SpamAssassin on your MTA if you’re not actually going to do anything when it detects spam? Mine sends all spam to the great bit bucket in the sky - I don’t want it in my inbox.
Unfortunately the way these dumb MTAs modify the messages to add details of the spam report means that my instance of SpamAssassin doesn’t (quite) identify them as spam - if they’d just left them alone, they’d get correctly identified…

Monday, 24th March 2008

It’s MythTV, but lighter!

Posted by David in Free Software, Programming, Technology @ 22:18

Over the last two years I’ve been intermittently working on a light-weight frontend application to work with MythTV. Basically I was impatient with the slow loading-time and somewhat resource hungry nature of the proper MythTV frontend application. This is OK when I want to make use of the various PVR features, but sometimes I just want to tune to a digital radio channel and minimise the application or simply watch live TV, so I don’t need the advanced functionality MythTV offers.

And so LightMyth was born. LightMyth is still very much in development, but today I’ve got it working sufficiently to make a release - version 0.5. At the moment I’ve got it playing back audio-only channels perfectly, but TV playback is still somewhat broken (you can get audio or video, but not both at the same time) - this seems to be a threading issue.

LightMyth

LightMyth is written in Python (yes, maybe Python isn’t a great choice for a lightweight application, but writing the same thing in C or C++ would have taken a lot longer) and uses the very good GStreamer framework for the audio/video playback. It has a (currently very unpolished and feature-incomplete) GTK frontend. It is quite happy to work with a remote MythTV backend over the network and should be equally happy with a local backend running on the same machine.

There are three main reasons why such a simple-sounding application has taken me nearly two years to get functional. The first is that I’m lazy. The second is that when I started, GStreamer was somewhat immature and I was frequently coming up against bugs or missing features that were preventing me from doing what I needed - especially when it came to demultiplexing the MPEG2 transport streams from digital TV. These issues now seem to have all been resolved, and GStreamer is doing everything I need.
The third reason is that I was reverse-engineering the Myth protocol. You may well ask why, considering MythTV is Free/Open Source. Well trying to read someone else’s source is hard enough, but trying to decipher it and figure out the inner workings of a network protocol is even harder. I found it much easier to simply run Wireshark to capture the commands being sent and received by the MythTV frontend, then figure out what they’re doing and implement them into my application.

So I’ve made a fairly wild claim that my application is ‘lighter’. In a very, very non-scientific test I started the MythTV frontend, tuned to a radio channel (BBC 6 Music, in case you’re interested) and minimised it (note there’s no MHEG/interactive stuff enabled, so all its doing is receiving the MPEG stream over the network and playing it back). This consumed 33% of my CPU and 12% of my memory.
By comparison, my LightMyth-radio frontend playing back the same radio channel consumed just 1% of my CPU and 2.7% of my memory. I was pretty surprised by these figures - my main desire was to get a frontend that started-up quicker and I hadn’t really been concerned with CPU or memory usage, but the difference between the two is fairly substantial.

It’s fairly basic at the moment, but it has a nice configuration wizard to assist in setting it up. I will add basic support for the digital program guide at some point (maybe just now & next) but don’t expect any of the PVR functionality (scheduling or playing back recordings etc.) as this is not what LightMyth is for (this is what the main MythTV frontend is for).

If you’re feeling brave, you can go and grab a copy. The license is GPLv3. Any feedback or bug reports would be gratefully received, as would simple success/failure reports - there’s only so much I can test, due to lack of hardware. Digital satellite and cable playback is completely untested, for example…