Google and Patents

As seen on Slashdot and other places there has been quite a lot of public discourse recently in wake of consortiums consisting of Microsoft and Apple among others buying the Novell and Nortel patents. This caused Google through its Senior Vice president, David Drummond, to call the use of these consortiums to buy patents anti-competitive. And he is absolutely correct. In the Zdnet article they point to a tweet by Microsofts Brad Smith who counters that they offered Google to bid with them. Well as I pointed out when blogging about the Novell patent sale, the problem here is that these patents are needed to deter lawsuits from Microsoft, and co-owning some patents from Microsoft doesn’t really achieve that.

Another horrid attempt at a rebuttal to Google is from John Gruber who starts by trying to equate the patent problem with Google undercutting Microsoft on price. Why even though he partially admits the US patent system is broken later on, he tries to say that Microsoft attacking Google with bogus patents is the moral equal to Google competing with Microsoft through undercutting them on price…/facepalm.

And he then tries to be clever and rhetorically ask “But what exactly does Google need to defend against, if not actual patents Android actually violates?”. Well the answer to that is that Google needs its own pool of bogus patents as it is the only way to protect yourself from other peoples bogus patents. But what John seems to forget is that two wrongs doesn’t make a right, and unless the US congress at some point decides to actually do something that helps the US economy and drop the stupidity that is software patents, then innovating companies will continue to need to waste money and time on software patents, so protect themselves form the attempts of the market incumbents to abuse the patent system to shut down their competitors.

For those wanting to read up on how damaging the current software patent regime is I recommend this article from the Economist called Patents against Prosperity and this blog by Craig Hockenberry called the Rise and Fall of the Independent Developer.

The sad part though is that by the time Google manages to build up their patent arsenal to protect themselves, I am sure they will have managers who decide that in order to protect the interest of Google shareholders, Google should start to favour software patents, just like Bill Gates turned coat on the issue once they realized that while patents lawsuits would cost them a fortune, they could use it to kill of a lot of potential competitors.

First GStreamer 0.11 out, GStreamer 1.0 looming on the horizon

GStreamer maintainer Wim Taymans just released the first 0.11 development release of GStreamer. The 0.11 development series will lead up to the long awaited GStreamer 1.0 release!

The changes from 0.10.x to 0.11 might seem quite technical and obscure to most, with items such as reworked buffer memory management, arbitrary buffer metadata and integrated bufferpool management being among the advertised features, but all these changes are made to help GStreamer make significant leaps forward in terms of integration with hardware codecs like VAAPI and VDPAU and of course hardware codecs on embedded platforms like ARM for instance the OpenMax IL API. There are also a lot of important performance improvements, which will make applications like Totem and Banshee more snappy to use, but you probably will see the biggest improvements in applications like PiTiVi who relies on more complex pipelines and thus more complex pipeline negotiations. For devices which got more constrained CPU resources, like various embedded systems, these performance gains should also be very noticeable.

At Collabora we are putting a lot of effort towards GStreamer 1.0, most visible through letting Wim put most of his work hours into it, in collaboration with our partners at Texas Instruments. GStreamer is not just another open source project for us at Collabora, it is something we are truly passionate about. The open source software ecosystem can not compete with proprietary systems unless we have a top notch media framework and with GStreamer we are providing exactly that. Ever since the release of GStreamer 0.10 the project has gone from strength to strength, and when 1.0 gets released later this year it will be another major milestone towards world domination :)

For those interested to learn more about GStreamer 1.0 you have two good opportunities coming up, Collabora’s own Wim Taymans and Edward Hervey will be doing a talk about GStreamer 1.0 at the Desktop Summit on 8th of August. And Wim will also be doing a keynote speech about GStreamer 1.0 at the GStreamer Conference 2011 in October. So I hope to see you there.

I am also working on an interview with Wim Taymans about GStreamer 1.0 so if you have any questions you would like me to include, feel free to add them to the comments section of this blog post.

We will also be organizing some 0.11 hackfests online where people like Wim, Tim and Edward will be online to answer porting questions and the community can work together to port all important plugins to 0.11. There is some early stage porting documentation to be found here.

For now, go to the GStreamer website and grab the 0.11 tarballs and give them a spin, and if you have any questions, remember you are always welcome in on irc.freenode.net.

Weekend hacking

Spent some time this weekend hacking on Transmageddon. Fixed various small bugs and UI issues that I had punted up until now for the UI. For instance with latest git when you create a pure audio file it doesn’t automatically get the suffix .mp3, which is nice in the cases when you are not creating a mp3 file :) And if you put aac into a quicktime container the file gets named .m4a instead of .mov.

Also started looking into the issue of how to handle multiple audio streams in the file being transcoded. Currently all streams gets transcoded to the same chosen format if the container format support its, if the container only supports 1 audio stream you get one by random. This is not ideal :)

Ended up filing this bug with a request for how we can improve the GStreamer API to make handling such things easier for application developers. Discoverer, uridecodebin and encodebin makes a lot of things a lot easier, but for handling files with multiple streams of the same type I think we still need some improvements.

On the path to GStreamer 1.0

GStreamer maintainer and code god Wim Taymans just posted an update on the the progress of GStreamer 0.11 to the GStreamer development mailing list. For those interested in learning about the new features coming in GStreamer 1.0 this email (along with the previous update) is must read material.

In addition to the updates on the core coding work and important notice from Wim in his email is that the very first 0.11.x release will happen this week, so that you have a snapshot release to start playing with. GStreamer 1.0 is moving forward at a fast pace, so be prepared :)

Hopefully we can do a GStreamer 1.0 release part at the GStreamer Conference 2011!

GStreamer Conference 2011 update

Just sent out this little email with some updates on the GStreamer 2011 Conference. Planning is progressing and a sponsorship leaflet is now available for those interested in sponsoring the conference. The call for paper deadline is also slowly but surely approaching, so anyone who wants to do a talk please send in an abstract before the 1st of July this year.

For everyone else, just register for the conference and set aside October for GStreamer and Prague :) As always details can be found on the GStreamer Conference 2011 website.

Edward Hervey talks about GStreamer Editing Services

A second Collabora talk from the Meego conf is now online. Edward Hervey did a talk about GES, the GStreamer Editing Services, which is a library that is part of GStreamer which makes video editing and encoding a lot easier. It it part of GES that I use in the git version of Transmageddon and there is also a plan to port PiTiVi to use GES.

Edwards talk focuses on using GES on embedded systems, as it was done at the MeeGo conference, so if you are interested in video editing be it on the desktop or on an embedded system be sure to check out the talk. You can find Edwards talk here on the Meego website.

OpenOffice vs LibreOffice – the next chapter

Been seeing with interest the latest moves around Open Office. While a lot of people see it as almost a direct attack on Libre Office, to me personally it seems like a clumsy result of Oracle trying to ditch OpenOffice without frustrating their main OpenOffice business partner, IBM. Due to having the Lotus Symphony suite based on OpenOffice under a special license from Sun/Oracle, I wouldn’t be surprised if switching to the pure LGPL Libre Office seemed painful to them. And thus the idea of an Apache licensed OpenOffice must have seemed endearing.

Personally I hope people stick with LibreOffice and build upon their existing success. Chasing a big company like IBM might seem tempting, but big companies change their mind and change priorities all the time, just look at Nokia, so if you have something viable without a big company involved, stick with it, and let the big company contribute on your terms if they want, as it will then have the ability to stay around even when the big company goes elsewhere.

GStreamer Conference 2011 website up

The website announcing this years GStreamer Conference 2011 is up. I am really looking forward to this years event due to the great fun last years event in Cambridge was. This year we will host the conference in Prague in the Czech Republic, a city I long wanted to visit and now I finally got a great excuse to do so.

For those who missed out on last years conference I think it is safe to say it turned out to be a wonderful place to learn about latest developments in the GStreamer community and hear about some of the challenges and solutions being used when using GStreamer in various devices and projects. This year Wim Taymans will be able to present on all the progress being made on GStreamer 1.0 and let us all know how things are looking in terms of setting a final release date :)

I moved last years conference page to a new permanent GStreamer Conference 2010 site, I recommend checking out that site for links to videos of all of the talks last year if you are unsure about if the GStreamer Conference is for you. This year we are co-hosting with 3 other conferences, the Linux Kernel Summit, the Embedded Linux Conference Europe and finally LinuxCon Europe, so there should be something for everyone.

Transmageddon hacking

Finally making some good progress on Transmageddon again. The new version is a quite big rewrite, switching to the new discoverer in plugins-base and using the new encodebin element. The UI has also been heavily modified and no longer uses the radio buttons, but instead relies on dynamic drop down lists.

Feature wise I am still at the same point as the previous version, partly because my developed goal was to port to the new UI and backend before adding features. Do plan on adding deinterlacing in there though, before making a new release (and do a lot o testing, I am sure there are a ton of regressions and behaviour issues atm).

Mandatory screen shot below, hope people like the new UI. I expect I will be able to close the vast majority of open Transmageddon bugs with this release, but of course the switch to encodebin has revealed some new bugs too :)

Transmageddon git