Older blog entries for rbultje (starting at number 84)

Today, the toothfairy came by to tell me something really cool is happening!
Who wants to join
Several people have bugged me about a blog that I did earlier, about helping new people to get into GStreamer programming. I've been rather unhelpful so far ( :-( ), but today, I've finnaly setup a few new "tasks" in the GStreamer / GNOME tasks page. The first has general GStreamer tasks, the second has ones specifically targetted at GNOME modules using GStreamer. Bug me for more info on any of them, I'll probably add a few more sometime soon. They're fairly simple, serve as a good introduction into the codebase while only touching small parts so it doesn't get too difficult. Needless to say, the tasks are well-documented for a newcomer.
Doing stuff
As days move by, you slowly see cool new things happening.
  • Fluendo now has a couch in their office. I just have to try that out sometime soon.
  • I got AMR (the sound format of .3gp movies, which are produced by mobile phones with a cam) to work - audio-only needs a small bit of more work before it's functional. See bugs #140141, #143555 and #155163.
  • Some ffmpeg/mplayer dudes are working on a WMV9 decoder (currently a simple bitstream parser). They're about as far as I got, and they're having the same issues I had. Nice to see I'm not just stupid. ;).
  • Divx Labs figured it'd be cool to write a new media format. Unfortunately for them and fortunately for me, it's just AVI with some non-standard chunks for subtitles.
  • At newyear, a friend and me promised we'd do sports each week. It's been freezing outside ever since, but we still try to keep to our sayings. No wonder most people give up within a month... I'll need to get us tennis cards for the indoor courts before next week. :).
22 Jan 2005 (updated 22 Jan 2005 at 14:22 UTC) »
Metadata and deprecation
Today's CVS of Cupid has tag support. Currently works for Ogg and AVI, but I'll add it to other formats as I see fit later on, if the format supports it, that is. Should release 0.0.2 sometime soon, since it's had quite some updates and fixes since I released 0.0.1 just after newyear.

I also decided to have a look at the new APIs of the day and try to update Cupid to it. Noticed that GtkFileChooserButton cannot do save actions (filed as #164900), which means I need to continue using GnomeFileEntry. GtkUIManager (replacing GnomeUIInfo) keeps confusing me for some reason, maybe I need to look for some hello world example code (which http://developer.gnome.org/doc/API/2.0/gtk/GtkUIManager.html basically is, but not just yet). GtkTextView looks nice, but is incredibly complex if you just want a simple HTML-like textbox. How do I get the complete text from the GtkTextBuffer...? Need to move over to GOption (instead of popt) at some point too, but GStreamer doesn't use it yet, which is kind of annoying. I guess I'll quietly continue to use deprecated widgets/objects for a while longer until I get familiar with the new ones...

EU horrors
Remember how last month, EU patents were not accepted after Poland did a great job? FFII reported on it, as did others. Apparently, our agriculture politicians are very hard-headed people, because they've decided to try again. Yes, boys'n'girls, the agriculture EU people know what's best for you.


You're European? Write a letter to your national agriculture minister, today. Don't ask me what agriculture and computing sciences have to do with each other. I don't know. But I'm sure they can tell us, because boy, those agriculture politicians make some heavy decisions for us...

I did some work on my video capture tool Cupid yesterday and today. I fixed some stability issues, crashers, added some sanity checks and I added a bunch of new features, amongst which:
  • snapshot support (and since it has webcam support, this makes it a good webcam tool as well)
  • overlay emulation (which means that if your card does not support hardware overlay, we will set up a background GStreamer pipeline to display video instead; again useful for webcams)
  • minimal mode and fullscreen support, which make it useful to watch TV
There's some more needed, such as channel/tuning and remote control support, but all in all I think I've finally got my replacement for STV, which I wrote years ago. We're not tvtime yet, but adding a deinterlacer or text-overlay is nothing more than a GStreamer element, so I have good faith in it.
uraeus, to answer your question on the medical sector: there would be no such sector without patents. Medical research for a single drug can take up to many billions of dollars (or euros), with the end product being one single molecular structure that may or may not work. Research is very, very expensive. It takes years to earn back the R&D expenses.

Without patents in this area, all investments would be void, since everyone would just steal the competitor´s product instead. However, the acceptance of re-patenting of a specific mirror-formula of a product of which the original patent was expired (breath here :-) ), is an example that even in this field, patents are very much imperfect.

New toys require new toys
I got a new laptop yesterday, woohoo and thanks Fluendo. Obviously, this means that I need to get a copy of World of Warcraft or I´d be spoiling CPU cycles on idle() instead.

Somehow, it feels frustrating that modern machines have about as much video-RAM as my machines used to have real RAM. I guess I´m just an old fart.

8 Jan 2005 (updated 8 Jan 2005 at 23:34 UTC) »
Current CVS of GStreamer, plugins and Totem features subtitle and stream selection support. Go get it today. With many thanks, Felix has arranged RPMs for Fedora Core 3 once again (update: Felix also made a note on this himself):


Put that in your yum.conf and you're set.

Also, since Benjamin worked on a puzzle game, I decided to make it work in Totem. Next stop: DVD menus.

8 Jan 2005 (updated 8 Jan 2005 at 10:55 UTC) »
As you can see in this screenshot (clickertyclick), we now support language selection. The same method seems to work for selecting subtitles, too. In the screenshot, I'm swapping between an AC-3 and a LPCM soundtrack on a DVD. Note that DVD subtitles don't actaully work yet, but with the recent work, this won't be more than a minor adjustment to get working.

Some small TODO items before I commit the subtitle + stream selection patches (they'll be committed together):

  • Stream disabling isn't perfect yet.
  • The patch to the queue element makes our testsuite fail on Ogg radio (argh!).
  • Font selection for the subtitles.

Where we are:
So far for the good stuff. In the recent Gnomedesktop.org article on the new GStreamer releases, I was kind of stunned by attitude, but the main point is a good question: how far are we (cmp. mplayer/xine)? So let's see. Note that I'm talking about my local version here, which is not CVS (although all my patches are available through bugzilla) and definately not a release.

  • Media support: we support most popular media formats (e.g. h.264/AVC or MPEG-4), we're on par there. Compared to Xine/mplayer, we're still missing WMV9 and QDM2, and that won't change anytime soon. All of those depend on binary .dll loaders, which we don't support. Another area in which we lag is Real-media support. Real appears to be randomly threatening parties with legal action if they talk to their shared libraries (this recently happened to the Matroska team), so we're not too motivated to do that. There's a whole bunch of more exotic formats that we support and they don't (e.g. monkeysaudio, musepack).
  • Input support: we mostly support the same sources as them (mms, http, file, dvd, audio-cd, vcd, svcd). We don't support rtp/rtsp, they do.
  • Special features: we all support language selection, subtitles (although no DVD subtitles yet). Xine additionally supports DVD menus, which we don't (in Totem), neither does mplayer.

There's also some areas in which we don't lack with respect to them, but they still need fixing, e.g. error messages (our errors displayed aren't exactly HIG compliant in some cases) or metadata display (although we support metadata, it isn't always displayed in totem; I know why, but I don't have time to fix it). So in short, TODO list (in random order):

  • DVD menus.
  • DVD subtitles.
  • RTP/RTSP support.
  • WMV9/QDM2 support.
  • Better Realmedia support.
  • Better error messages.
  • Improve metadata display (e.g. in Totem).

So that's not too bad, but far from perfect. The thing that does annoy me in the gnomedesktop.org comments is the random attitude where Joe Random User will tell me what to work on and how important his requested $feature is for the general wellbeing of GStreamer or GNOME. During the past three months, I've worked non-stop on improving such things, and it starts feeling rather endless. But seriously, everyone can work on fixing and improving error messages in applications, so why isn't that happening? So let's try something else. Here's your chance, interested hackers and soon-to-be hackers. There's lots of small things that need fixing, that are not too hard but will be a very valuable contribution to GStreamer and GNOME. I'll gladly help you getting into this, I'll poke you in the right direction if you need that and generally be available to answer questions. If you want to contribute, come online on #gstreamer on irc.freenode.net or mail the list, and by doing that, contribute to a very lively part of the GNOME desktop!

This appears to be the section in which people with a hackergotchi tell you what they've been doing yesterday. So, I went to a music concert in Amsterdam with performances from DJ Tiesto, Blof, Acda en de Munnik and some more. Was pretty cool. Met up with some people there and got home late and had a headache. It's interesting how young people in this country are being motivated to be involved in society (this was charity for Asia); disaster happens, so let's do a cool concert. They did this for Theo van Gogh, too. It feels kind of weird to have a great time because a disaster happened... Ohwell, I guess it works, it was crowded as hell. :-).

75 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!