Musepack
Current CVS of GStreamer has support for the Musepack audio codec, which I wrote today. We don't read APEv2 tags yet. [rant] Which reminds me that I really need to rant on those kiddos for a change, because why oh why do those ignorant morons always have to come up with something new to make life of media developers worse? You could have used ID3v2! But no, ID3v2 is evil and bad and you can do worse, so let's recreate something that already exists but do it worse. Bah! [/rant]

Chained Ogg
For the past two weeks, I've worked a lot on getting chained Ogg (mostly used for streaming Ogg radio over internet) to work, and I was nearly there friday. Wim took over (there were some reference counting bugs exposed elsewhere by my changes), and this afternoon I received the happy news that he got it working. Soon in a CVS repository mirror near you! Many thanks to Wim for helping me fix all sort of weird core bugs that I exposed by my random messing around and for finishing it off.

Totem & GNOME
Bastien proposed Totem (using the GStreamer backend) for GNOME-2.10! I hope that it'll be included, it'll be a worthy and highly appreciated component of the GNOME desktop!

On my homecountry...
I might love the USA, want to live there and what not, but in the end, I'm dutch. When it comes to soccer matches, I support the Netherlands. When there's a gruesome murder committed on a famous dutchman, I cry too.

Like I wrote previously, Theo van Gogh, cineast and writer, was brutally murdered by what turned out to be a sicko muslim fundamentalist in my homecountry. Yes, ladies and gentlemen, we've turned to a new chapter of sickness in my country after the murder on political leader Fortuyn: we really are screwed this time. Just in case you think it couldn't get any worse from this point on, we were instantly proven wrong. Those muslim fundamentalists aren't just some individuals on crack. They're groups, cells of jihad terrorists, they have lists of people that they're gonna kill and v. Gogh was "just" #1. So far so good. Like any self-respecting jihad-warrior, they're prepared to die for the greater good. Wait a minute, what greater good? The greater good is that respected people such as the mayor of our capital, mr. Cohen, and a member of parliament, ms. Hirshi Ali, will be next. Yay for civilization.

While he was murdered, v. Gogh was stabbed with a butcher's knife with a letter attached (sick, sick, sick). The letter contained remarks such as the following:

"Ms. Hirshi Ali, to prove me that you're right, you will only need to do one thing. Ask Allah to kill yourself if you really are convinced that He does not exist. If you don't we know what a liar you and your masters are."

"We will not attack, unless they attack us" (anyone recognize the Bush'ism in here?)

Oh, so this is too sick to be true? I won't go any further. This is not just sick. This is far beyond anything that anyone can imagine. And this, my dear people, is western civilization, the highest as we know it, in one of the richest countries in the world. This is my country. We are so fucked.

Members of parliament have responded united: we support ms. Hirshi Ali, we shall not let this happen. Some political parties have - finally! - announced some plans to prevent this from getting any further. They want to take away citizenship from fundamentalists. Then my problem is, how is this gonna help from more people getting murdered if we can only capture them after they've murdered anyone? Another announcement was that people want to talk with muslim representatives. How is this going to help? Fundamentalists aren't going to talk. You're reaching out to the wrong audience here. Most of those muslims, and especially those that are representatives towards the rest of the country, are perfectly adapted and accept our norms and values. We don't need to talk to those, they're perfectly fine. It is the outliers that we're after here. Face it, I don't have the solution either. But we can't just do the same that we've always done. I'm happy that the political parties are now willing to take action. But please do something that will actually make a difference!

We have fundamentalists in this country. They are prepared to do whatever it takes to destroy our society. That may never happen! We need to take pre-emptive action, to protect our society, our rights, our freedom, our wealth and our children. Sounds like Bush? So be it. It is my country.

There we go again...
I normally don't care to blog about society, but today's my #2 already.

Theo van Gogh, maker of dutch films and documentaries on society issues, was murdered today. His TV shows were rather poor if you ask me, but his documentaries were a welcome refreshment of the political correct emptiness that we used to hear from all around. He might not have been the first person to do that, but he definately was one of the most influential ones. One of his latest documentaries included Submission, on the position of females in the Islam (targetted at western society, obviously). General consensus was that the reaction from muslim organizations in the Netherlands on this documentary exactly confirmed the message of the documentary.
I guess democracy is really just a really nice name for a blanket on something that nothing and nobody can really fix: idiots.

Today will be TV day. I'll be one of those morons just watching TV to see which of the two creeps is gonna rule the world for the next four years. Yes, creeps, because if it were for the looks, both would be straight from hell.

However, I can only hope that the US voters will look beyond looks and populism. As much as they are the same in most areas, that effectively means getting rid of Bush. Anything's better than a lunatic that wants to cut neuropharmacological research funding because it's unchristian. Just to mention something else from what all the others will say (wars, international treaties & contacts, ...).

Polls in the Netherlands amongst students show that +/- 85% of the people (ok, so students) wants Kerry. I'll share the majority opinion, just for once.

Volume Applet:
So the volume applet was almost perfect, until people started filing bug reports against it! Eek! Bad people. Screw you guys! I fixed most of 'em, except for the remaining two where I really don't have the slightest clue what they are talking about or what it has to do with the volume applet. I guess I should close those as well. Yay for an empty bugzilla. Oh, that deserves a screenshot!

GStreamer Recorder:
So it had to happen some day, that I would release 0.0.1. It'll be soon. It's basically ready, but requires a new gst-plugins and gst-ffmpeg release because fixes in those are essential for the physical well-being of gst-rec. I can't wait to release. Hopefully, people will use it. It can record to a variety of formats, including MS-MPEG4v3 (in ASF), MPEG-4 (using either of XviD, DivX or FFMpeg's wonderful encoders) in AVI and, of course, Ogg/Theora+Vorbis. I was initially planning to just support Ogg/Theora in this first version, but given the rather poor encoding speed combined with the fact that the others "just work", I didn't really care to remove it. The preferences screen could probably use some UI love, though.

So it's perfect? Nah...

Doesn't use videorate/audiorate yet

Some more (a/v sync related) options need to be hidden from the user since they can possibly screw up synchronization

Overlay refreshes aren't perfect yet, although they're pretty good now

No image when recording from a webcam (or any non-overlay-capable video source)

So many more things that are listed in the TODO

It needs a release

So those of you paying close attention to my blog (don't you all? :) ) would've noticed that my last screenshot of gst-rec actually contained a test image rather than a screenshot of some popular TV series or a good movie. You know why? Because my cables weren't long enough to fit between the TV (one side of the room) and computer (other side of the room)! Of all things that could possibly go wrong, this is the worst. Because you can't fix it apart from going to a shop to buy new cables.

So what's next?
DVD ripping, video transcoding, video editing, it's all there in my magical vision! We've got the widgets and the engine in gst-rec (ok, ok, so editing is a bit more difficult - but who cares). I just need more time. Oh, and Totem will rock your world. More soon! :).

Back from the death:
I looked at GStreamer Recorder again tonight, for the first time in something like a year or so. I was annoyed by pretty much everything, but I won't rewrite it. Instead, I'll fix all the issues that I'm so annoyed by that I'm scared to release it because everyone will laugh at me, and then release it. Just to make Thomas stop nagging me. Isn't it pretty?

I just rewrote the overlaying code in the GStreamer video4linux element (need to copypast that to the video4linux2 element), because the old code caused a hellofalot of flickering (and took 10x as many lines of code). The next issue to fix is format selection. We used to use filtered caps for that, but nowadays, fixation is the way to go. Lastly, I'll remove all dynamic codec/muxer selection code for now and just default to ogg/theora, and that should be enough for version 0.0.1. Like anyone would want to record a divx movie. -EDONTCARE. :).

And for my own pleasure, I decided that GStreamer Recorder is a stupid name, so I will rename it before the release.

Totem in Fedora
Yes, we're in! I was happy to see Totem (based on a GStreamer backend) becoming a part of Fedora Core 3. I was even happier to see that people generally seem to like it. That, of course, doesn't mean that we're done now. Quite the contrary: now the play only *starts* to shift to second gear. I hope I'll be able to keep up with it.

That brings us to the next gear-shifter. Yeah, say after me: I want Totem in the standard GNOME desktop! We're ready for it. Now, surely this isn't up to me since A) I'm biased and B) I'm not the Totem maintainer. But I can always lead the Totem-in-GNOME PR campaign. Let's bring it on! Bastien said he'd look at the whole thing after Fedora Core 3 is released. What do other people think?

I've been fixing a lot of Ogg-related issues in playback for the past few days, and current CVS seems to be quite forgiving for most of the movies and music files out there. It's not there yet, but I have a pretty good clue of the missing bits'n'pieces, also for other (annoying) bugs. Good feeling. It's just a huge todo list, basically:

playbin (our playback backend) needs to support subsequent (chained) tracks in files, e.g. for chained ogg. It will currently just play the first. Related: do you show length per track? Total length of all tracks together? How? this is important for both Ogg and DVD.

playbin currently doesn't forward all init errors, e.g. "soundcard is busy" or "soundcard does not exist". Instead, it just says "could not open" which isn't really helpful.

inside GStreamer and playbin, we should make errors more userfriendly. "Don't know how to handle $mimetype" isn't really useful if it really just means "the file you loaded has media type $media_type, but you don't have plugins for that. Please install them." because you're loading a mp3 and fedora doesn't support that by default.

Release time:
I released a new version of the the GStreamer FFmpeg plugin today. Try it today!

Disc content detection:
Wrote some code (similar to the code in gnome-volume-control, in hindsight) to detect the type of disc that the user is opening in his favourite movie player. Didn't commit, mainly because the audio CD input plugin in GStreamer is giving me headaches, as in: it eats my memory, it fails to play and if it doesn't do that, it just crashes.

GStreamer:
Talking about a heavy day... All of us worked hard on a release of GStreamer Plugins, when Wim suddenly found a stupid streaming media bug in the typefind element of our just-released source. So we decided to go for a quickfix there, too. To add up to the fun, Bastien released a new Totem right after, which is the first Totem release to include the newly rewritten GStreamer backend. The combination of all this (possibly accompanied by the latest pre-release of gst-ffmpeg) makes a very powerful media player. Try it out today, and don't forget to report bugs, non-working media et all on Bugzilla!

C#/Mono:
So I'm enjoying some C# in the evenings right now. Not bad, not bad at all. I still don't know a lot of things, but I'm getting somewhere. I'm currently messing around with window embedding, which requires me to know the XWindowID of a Gdk.Window (as an ulong; in GDK, you use GDK_WINDOW_XWINDOW ()), and I haven't found a way of getting that yet. Also, I'm wondering how to handle GErrors in Glib#. Still lots to learn!

Totem/GStreamer:
Finally got an annoying race in the GStreamer backend disappear. Also found a general performance issue (as in: the Xine backend suffered from it as well). In its current state, I'm actually enjoying Totem/GStreamer a lot. Note that this still requires current CVS of all, we're working on releasing all this for your general pleasure. :).