The Summer Of Code was something special, We were so young and so free

Google extended the deadline for summer of code applications by a week today. This means that if you just returned from an easter vacation thinking f**k I just missed the application deadline, you can relax as the doomsday bell did not ring just yet.

We got some sweet applications for GStreamer SoC projects, but more would of course be welcome. Check out our student information page for how to apply. If you need ideas for project to do then you find some nifty ideas at the GStreamer SoC ideas page.

And for the harder than hardcore of you there are still opportunities for also submitting Dirac SoC proposals.

So get yourself a bankable checkpoint on your CV and do a GStreamer Summer of Code project this summer.

This is your chance to one day be able to say: Remember The Summer Of Code that I was a part of, We had so many dreams, And even a few of them came true it seems.

Songbird using GStreamer on MacOSX and Windows

Songbird hacker Steve Krulewitz posted a blog entry yesterday outlining the progress made on using GStreamer for the Songbird music player and browser not only on Linux/Unix, but also on Windows and MacOS X.Collabora‘s very own Edward Hervey has been spending the last Month in San Francisco, working with steve on getting everything going. As you see in the screen shots posted by Steve in his blog, the native codec wrappers are up and running fine, and Songbird even added a nice about:gstreamer URI for the Songbird browser, just wish all browsers had that :) So be sure to check out the blog entry from Steve.

I was also very excited to see Aaron Bockovers blog entry of having added video support to Banshee. Great stuff Aaron!

GStreamer and Dirac Summer of code open!

So Google has now opened the floodgates to this years Google Summer of Code with GStreamer and Dirac Schrodinger as happy participants.

So this is the year where you can get inspired by our wondrous GStreamer project ideas or Schrodinger ideas and join the elite world of multimedia hackery!

Not only that, but you can even come up with an idea all of your own :)

So ask yourself this; If not this year, then when? If not you, then who? If not our generation, then which generation?

So stop wasting time and start enrolling here.

Do not linger because Google close the gates on 31st of March!

GStreamer and Schrodinger in Google Summer of Code 2008

So I am very happy to see that GStreamer this year is a Google Summer of Code organisation. And not only did GStreamer get approved, but Schrodinger also got its approval. A big thanks to Google and Leslie for this. There is a proposed task list both for GStreamer and for Schrodinger-Dirac. On a related note David Schleef got the new Schrodinger website up and running, and while it is still a bit bare on content we will start to migrate over any useful content left on the old site and at the same time have it re-direct to this new one.

So I hope to see a lot of student proposals for both GStreamer and Dirac/Schrodinger projects. And if you have an idea not on the current list of ideas do not let that discourage you from proposing something.

For people wanting to do GNOME or KDE applications using GStreamer I suggest you propose the project to both us and them, but make a note in the application that you have done so. Also note if you feel your primary need for mentorship will be on the GStreamer or GUI side of things. That way we can talk between ourselves on the mentoring organisations side of things and figure out what we can do.

GStreamer and Google Summer of code

So we have managed to put together a preliminary set of webpages for trying to get into this year’s Google Summer of Code. We already have a list of proposed
projects, but the list needs more work. Both in terms of details for the existing items and in terms of number.

Since we are doing this in our Wiki any who is interested in helping out with organizing Soc this year is welcome to join
in by editing the pages, adding information and suggestions.

Current GStreamer developers are especially recommended to check the list to sign up as mentors. Students can also mark their interest by adding a note with their name to the various proposals.

Schrodinger announced

With the team lead by Thomas Davies at the BBC working hard for many years now on creating Dirac it is great to see the specification out. It was equally great to see David Schleef announce Schrodinger 1.0.0 at the end of last Month. Schrodinger is as most of you know a high performance implementation of Dirac in ANSI C. It is meant as a tool for people to be able to easily integrate Dirac support into their applications and systems. Which is also why it is available under very liberal licensing terms in the form of a GPL/LGPL/MPL/MIT quadruple license.

Anyway to celebrate the release of both the specification and the implementation we managed to put together and send out a press release for the Schrodinger project.

So once again congratulations to everyone involved, lets all work to get Dirac widely adopted. Personally I am hoping to that combination of Dirac video, FLAC audio in a Matroska container could be a killer combination to get started on mainstream adoption.

DVB-C now working with GStreamer

I bought myself a TT-Connect C-1200 USB card from DVB-Shop. Last evening and today I been testing and trying to get it to work with Zaheer‘s help. With a few patches from Zaheer it now works in Totem as the screenshot show. Still a few issues that needs sorting out, like not requiring a pre-generated dvb-channels.conf file and better deinterlacing, but all in all things are looking fine.

Totem playing DVB-C

So with upcoming versions of Totem+GStreamer you should be able to receive the Freeview channels over Virgin Media. Could open the way for an alternative to the noisy, slow and
unstable V+ box.

Also in case its useful for anyone. To generate the dvb-channels.conf file we needed this information put into a file called ‘uk-Virgin’ under /usr/share/dvb-apps/dvb-c

# scan config for Virgin Media cable provider
# freq sr fec mod
C 643000000 6887000 NONE QAM64

Official announcement of Songbird using GStreamer on all platforms

So Mikael Hallendal reported last week about SyncTV using GStreamer across Linux, MacOSX and Windows for their multimedia support. Well Songbird‘s Georges Auberger reports in his blog how they are now going to be using GStreamer as their multimedia engine on all platforms going forward. This has been brewing for some time now and the DirectShow/Windows and Quicktime/MacOSX integration plugins in GStreamer CVS are there thanks to Songbird. Another group using GStreamer on multiple platforms who I found thanks to the Songbird comments are Chameleo who are creating a video player/platform.

Songbird has been using GStreamer for a good while now on Linux of course so for those interested in testing it out I recommend heading over to the homepage and grab the latest build.

The world of Transcoding

Spent some time early this week trying to figure out how to get my NTSC DVD’s ripped and transcoded into a format I could store and play on my PS3. My main goal was to keep the AC3 audio intact and use the best video codec possible and at the same time have it working on the PS3. After some trial and error I learned that MPEG PS was the only way to combine AC3 audio and H264 video into a file and have the PS3 be able to read it.

None of the various Linux rippers seemed to support this combination however and trying to use gst-launch I discovered that the mpeg ps muxer from gst-ffmpeg did not seem to work to well.

As part of this process I got reminded of a couple of things. The first being that we really need an relatively commonly used application using GStreamer to test and make sure our muxers and encoders keep working. Pitivi would fit that role, but its a complex application which I think is still some way away from being a tool for everyone. A simple transcoder application would probably be a better choice to get us started. That said looking at the current rippers out there the either are very targeted at a specific target (like Thoggen) or have a GUI which I think is unnecessarily complex for the average user (dvd::rip). I do not consider myself a multimedia novice, but I still only had a vague idea what the various options exposed in dvd::rip would accomplish. I am not saying dvd::rip sucks though, it was in fact the only application I was able to find for Linux which produced files that my PS3 actually recognized (although I had to use ac3 and mpeg4 part 2 in avi to make it happen.) Tried another application called Handbrake, which was fairly easy to operate although only being command line for linux, but the only files it could make that worked was h264 and aac in mp4 which meant I lost surround sound output due to my PS3 being connected by s/pdif to my amplifier.

Mockup of gstreamer transcoder

So thinking about what kind of GUI I thought a transcoder should/could have I took a screenshot of dvd::rip and started modifying it in the Gimp. The result you see above. The idea would be that you select your input source at the top and then choose your target container format. Based on which container you choose the codecs which are supported by that container get ungreyed, while the remaining ones stay grey (unselectable). One are able to query muxers for the codecs they can mux so with the aid of pbutils one should be able to ungrey the codecs dynamically (which is an advantage as muxers could have new mappings added as time goes on.)

Once we have managed to stabilize/improve the muxers and encoders in GStreamer due to this application being tested and bugreported upon we could move this page into a ‘advanced’ tab. The new default view should then be a list of presets for various devices like N810, PS3, PSP, iPod and so on. These presets could then of course in addition to the codec choices also include resizing based on target device.

While there are use cases where one might still want/need a more advanced GUI which need all the options exposed by something like dvd::rip I think for the vast majority of us this application would do the job.

So if anyone out there would be interested in trying to hack up this application using gst-python for instance that would be really cool :)