All posts by silvia

Foundations of Open Media Software 2008

Good news, everybody: We are repeating the successful open audio/video developer workshop in 2008 – the CFP for FOMS 2008 is now public!

FOMS (Foundations of Open Media Software) will again take place in the week ahead of LCA (Australian’s Annual Conference for Linux and Open Source Developers) – whose CFP is also out. Get started submitting abstracts because LCA’s published deadline for submissions is 20th July.

To complete the pack, LCA MultiMedia is an a/v miniconf for LCA in planning, such that LCA attendees will also have a chance to hear the latest and most exciting news from the developer bench.

FOMS 2007 was a huge success. It brought face-to-face some of the core Linux audio and video developers, which promptly started attacking some of the key obstacles for an improved audio/video experience on Linux and with open media software in general.

Jean-Marc Valin (author of speex), Lennart Poettering (author of PulseAudio) a group of programmers from Nokia and a few others started designing libsydneyaudio – a library which is deemed to solve the mess of audio on Linux in a means that is also cross-platform compatible.

Also, a community started building around liboggplay, a library designed to allow drop-in playback of Xiph.Org media in an application. libogg is currently being prepared for a submission to Mozilla to provide native Ogg (and Annodex) support inside Firefox as part of the new HTML5 <video> tag. Then, Ogg Theora, Vorbis & Speex will play out of the box on a newly installed Firefox without requiring to install any further helpers software.

These are just the highlights from FOMS 2007 – expect more exiting news from FOMS 2008!

So you’re waiting for the Vquence beta?

Last night we rolled out some new code onto the Vquence site. We are now fairly happy with the process that we have put in place for creating vquences. That is, us geeks at Vquence are – so we are now allowing friends and family to help us kick it into shape in a closed beta trial. We expect the public beta is not far off now.

YouTube’s new player misses the point

Last week, YouTube brought out a new flash video player. The player had thumbnails of related videos from YouTube content included directly into the embedded video as you moused over it. This provides access to other YouTube videos through any embedded video.

People who have seen what we do over at Vquence noticed the similarity in the user interfaces. They also assumed that therefore the functionality must be the same. However, quite the opposite is true.

YouTube is a video hosting site. People upload videos there to publish them and most probably to re-embed them into their own websites. When you use video hosting, you don’t want your video hosting provider to suddenly display other videos on top of the one you have embedded, since that changes the perception of the page that you have created around the video.

Indeed, YouTube had to take back the mouse-over functionality one day after they introduced it because their users gave them negative feedback.

In contrast, Vquence is a video aggregator. The Vquence video player is for “playlists” (rather: slicecasts or vquences) of videos collected from multiple hosting sites. So, when you embed the Vquence player, you expect display of and easy access to all the videos in the slicecast. It is a very different concept: the aim is not the embedding of a video, but rather the recommendation of multiple videos to your readers. Vquences enable you to share your bookmarked videos in a viewer-friendly fashion. It’s not about embedding videos in your page – it’s about providing hyperlinks to videos by using videos.

Annodex codefest / liboggplay release

For all those open media codec lovers out there: mark 16th June in your calenders – you’ll be able to take a sneak preview at liboggplay!

liboggplay is a library that enables applications (such as Firefox) to provide native decoding of remotely hosted Ogg Theora and Annodex files.

And to celebrate the occasion – and to help everyone get started on including the functionality into their apps – there’s a celebratory codefest:

16th June, 10am, Macquarie University, Sydney
see http://trac.annodex.net/wiki/AnnodexCodeFestJun07 for details.

Vquence Teaser Site goes online

Last week, we put a new front page on http://www.vqslices.com/, which shows off the concept of “vquences”. A vquence is essentially a collection of video bookmarks presented as a “video mash-up” and in an embeddable “widget”. Or without bullshit: we concatenate 10sec previews of the bookmarked videos into a playlist, which is embeddable into other sites. And since it’s embeddable – here is an example vquence:

This vquence shows some snippets from Missy Higgins videos – she’s such a great singer! If you cannot see it here (due to planet sanetisation), go to http://www.vqslices.com/vq/dXelFQeQCr3kFQaby-aaea .

Vquences are a powerful concept and we’re right now working on the beta website, which will bring authoring to you out there, so you can create your own vquences. Also, we are working towards providing a REST API to register sites with Vquence, and RSS feeds, so you can always keep up to date on the latest vquences. Lot’s of other developments in the pipeline here…

Taglines and Web 2.0

Have you ever tried to come up with a good tagline for a new company? In the times of Web 2.0, taglines seem to matter a lot. They are the essence of the elevator pitch. But because they can only be a maximum of 3-4 words long, they tend to be rather meaning less and just contain content-free Web 2.0 buzzwords. In fact, this has become such a fashion that there is a Web 2.0 bullshit generator.

Up until recently, we had the tagline “Making Video Clickable” for Vquence, because we believed that our slicecasting technology helps hyperlink between videos and make video more web-like. However, this phrase is a poor representation of what Vquence does, what services we offer, and how we’re going to make life better. So, a new tagline was in order.

But what a challenge! You have no idea how difficult it is to come up with three words that capture what a company is about! Sure – I have been to management training courses and they say it is an artform to come up with a good mission statement for a company and that some companies spend tens of thousands of dollars just to get it right. But a tagline!? Well, let me tell you, a tagline is harder than a mission statement – probably because of the word count restriction.

We discussed for weeks, we even used the bullshit generator and it became rather ridiculous – in short, we did some serious brainstorming (whenever we were not coding). Finally, our newest team member came up with what we have for now accepted as our new tagline. It has all the key ingredients: it is techy, personal, raises curiosity, but is still meaningful (we hope). So, let me present our shiny new tagline: “Vquence – Slicecasting your internet”.

And if that’s totally meaningless to you, then you need to go to www.vquence.com and try out our slicecasts to make it real. Hmmm, I like it. 🙂

Xiph file extensions and MIME types

Today we nailed down a policy for Xiph on what file extensions and mime types we recommend using for Xiph technology.

Basically, we have introduced some new file extensions to allow applications to more easily identify whether they are dealing with audio (.oga) or video (.ogv) files, or some random multiplexed codecs inside Ogg (.ogx).

We recognized the fact that existing Ogg Vorbis hardware players will need to continue to work with whatever scheme we come up and therefore decided to dedicate the extension .ogg to Ogg Vorbis I files – and deprecate all other use of it. That includes the deprecation of the use of Ogg Theora and Ogg Flac with this extension. In future, Ogg Theora files should have a .ogv extension and Ogg Flac a .oga extension. (For further details, check out the wiki page.)

MIME types will be changed accordingly and the RFCs required to register them will start to be authored now.

None of this has been written in stone yet though and there is still time to change this policy if it doesn’t make sense. So if you have any strong objections, speak up now!

Vquence technology progress

I’ve been rather quiet about what we actually do at Vquence, but I have to say that the recent months of intense development are coming to fruition and we are secretly enjoying the play with the first version of our new product, while at the same time working on bugs, new features, and on a scalable setup.

For those who have read our website and recent blog entries it will be clear that we are working on video, using flash/flex for the development of a playlist player, and are developing a web application service around these playlists using Ruby on Rails. If you want to be one of the first to try it, you can join our mailing list to be invited to a closed user group trial, which we will start a few weeks from now.

For those curious to find out what we really do, we’ve created a white paper – email me and I will shoot it through.

Rails and plugins

I’ve come to really love working with Ruby on Rails – it forces a structured approach of Web development upon you which helps enough to get you organised, but doesn’t get in the way of being productive.

I’ve also learnt to search for plugins or gems whenever I need a specific functionality because more often than not somebody has already solved the problem that I am trying to address.

Today I played with Andy Singleton’s GUID plugin (global unique identifier) and found a bug. I haven’t found a way to publish the solution through the rails wiki (I’m really new to the community), so I’m posting it here. I’ve also sent Andy an email, so hopefully the issue will get addressed.

Here is what happend.

I got the plugin working on my development computer and wanted to test it on another machine. However, the plugin gave me the following error message:

#{RAILS_ROOT}/vendor/plugins/guid/lib/uuidtools.rb:235:in `timestamp_create'
#{RAILS_ROOT}/vendor/plugins/guid/lib/uuidtools.rb:225:in `timestamp_create'
#{RAILS_ROOT}/vendor/plugins/guid/lib/usesguid.rb:25:in `after_initialize'

After some digging I found that it uses the MAC address of the computer for seeding the GUID. To query the MAC address, it calls ifconfig (or ipconfig on a Windows machine) – which is fair enough. It has several cases that it goes through. However, the case of my machine was missing and the code did not address a nil return from the get_mac_address function.

My case was simple to solve: my MAC address comes in upper case characters, while the code only tested for lower-case characters. So, I added another parsing condition for my case:

if mac_addresses.size == 0
ifconfig_output = `/sbin/ifconfig | grep HWaddr | cut -c39-`
mac_addresses = ifconfig_output.scan(
Regexp.new("(#{(["[0-9A-F]{2}"] * 6).join(":")})"))
end

The generic problem is harder to solve – and maybe it should not be solved, but fail on the programmer, since he/she is trying to roll out GUID calculation on a machine where the program is unable to calculate a MAC address…..

Hmmm….