Computing Video

Miro – Internet TV as it was meant to be

As a matter of professional interest, I pay attention to media playback applications. This isn’t generally hard – most of them are very ‘me too’, and I’ve grown used to spotting the common patterns they tend to follow. There are only so many ways to plug together the various playback technologies needed, and the likes of VLC, Quicktime, Windows Media Player and Flash all share common design decisions. I’ve personally never understood why so many try to ape the complexity of my hi-fi in their UI, but there you go.

Some time ago I stumbled across ‘Democracy Player’, which stood out interestingly. It’s now called Miro, and if you have any desire to watch video on an internet connected computer, I recommend you try it out. Four things caught my eye:

  • The video stands on its own and I can view it where and when I like.
  • The player respects the format the video was made in, without tinkering with it.
  • It can download in a way that allows me to help small producers publish video cheaply.
  • It includes a useful nod to traditional TV to make it easy to use. Simply subscribe to a channel from the on-screen guide!

Having lived without a TV since my move to London in 2000, I decided the time was right last year to buy one – thanks to the Nintendo Wii. A high priority was to get Miro set up to try it out from a technology perspective, so I added a Mac Mini to the rack of equipment under the TV. I didn’t have high hopes for the videos I’d actually find on it, after all they are mostly amateur freebies. It’s clear the technology works, but the big surprise was the actual videos. I should probably make some formal notes about how often I use it, but I’d guess that fifty percent of the time I sit down in front of the TV, I flip over to Miro, and spend some time watching stuff there. Programming on traditional TV is so often filler designed with little more in mind than selling advertising, that in my opinion, the bar for free content to go over in order to be as interesting is actually quite low. It’s not just amateur freebies on Miro though, there’s also a fair few professional videos, and they seem to be paid for in the traditional way – by inserting advertising clips or product placement. Whether they work depends on the quality of combined package, and many work very well.

There’s another key point about Miro – all of the non-video technology it uses appears to be entirely public, so developing players that share the features I’ve outlined as unusual, but perhaps better suit certain usage patterns (full screen from the sofa, perhaps), will be very easy.

I’d like to thank Holmes Wilson for his recent talk here in London at GLLUG. I probably need to apologise for introducing myself in the bar afterward via some crass American stereotypes, but it was great to see such enthusiasm for high quality digital video, and the opportunities the internet offers to both video makers and viewers.

I’d like follow up on the points above, and how they make Miro particularly good at internet TV, over the next few days. Stay tuned!


Mobile applications, RIP

Michael Mace has posted a thoughtful piece which seems to capture well the state of play with mobile application development. I think he’s right that there doesn’t seem to be much success to be had there as an ISV.

I thought it was interesting that he claims the forming web platform has beaten the native platform for mobiles (with graphs that suggest such a platform exists), while also claiming that there is no native platform. He’s right that there are, in practice, around twenty or so. His analysis seems to be that the OS vendors in the mobile space were wrong – no native platform is needed for mobiles, when the web will do. Surely he’s missing that the web for mobiles is a mobile specific platform. Even the latest browsers work best when your mobile web app is designed with a small screen and patchy coverage in mind. Take a look at the crop that target the iPhone. Most are very simple when viewed on a desktop, and many tout offline usage features.

So whilst I agree with his conclusion – native app development on mobile is a dead end right now – I disagree with the technical analysis (no platform was needed) behind it.


Why not Lisp?

Ok, so I’ve made it up to chapter 18 of my book, and I’m still enjoying the read. There was a brief diversion while the book chased the illusion of an OS/filesystem independent file naming library, but it’s keeping me entertained.

Perhaps by working for another OS company, the dream of unifying the various Unix & Win32 filesystems seems less important to me. Better really to give in, and recognise that the file namespace is the domain of the OS/filesystem/user, and there are too many leaks in abstractions above them.

Anyway, the title of this post is why not Lisp – putting aside my reservations of yesterday – why isn’t it more popular? There are the many reasons noted by Paul Graham, but there is a more prosaic one that hit me when I started.

There is no implementation that seems reasonable to use!

On my chosen OS (Mac OS X at the moment) I have the grand choice of three commercial implementations, and four open source implementations. All seem to have a significant gotcha.

Only one of the commercial implementations appears to have a ‘free redistribution’ model, the other two want some percentage or down payment from the sales of any product I create. Yuk.

Of the open source implementations, none are complete enough to host all of the examples from the book I’m using to learn the language. Some lack threads (hello – this is 2006), and others lack Unicode (hello – wave if you don’t speak ASCII English).

Whether the royalty free commercial implementation supports the features needed by the book is not clear (great sales pitch!). The book’s author recommends a vendor without a price list, which I assume to mean they’re in the we-want-a-percentage camp.

For any more popular language there is usually a bit more choice and competition among the tools vendors. As I see it, on Mac OS X, there isn’t a clear ‘one stop shop’ implementation I can choose to: learn the language with a popular text, and then distribute my first few applications ‘for free’. The situation on Win32 doesn’t look much rosier, although I’ve not looked at the details.

No wonder no-one is using Lisp.