Archive for June 9th, 2005

JWZ, the switcher: AKA ‘the linux desktop experience sucks’

So, apparently well known Linux developer JWZ switched to Mac OS X because of a problem I have also mentioned in the past (yes, using my ‘furious mode’), alsa audio mixing.

As many of you know, Alsa does not have an automatic software solution when the sound card does not have a mixer in hardware. Most PCs & laptops ship with a cheap AC97 sound card these days and these cards don’t provide mixing, and so only ONE application can play sound at the time.

It might not sound a big deal to you, but it is when you try to actually USE the damn thing. Examples: Real won’t launch because another app is using the audio. Rhythmbox crashing if it doesn’t have the audio to itself. And the worst: Web pages that have flash in them will NOT load completely (not even the HTML part) if XMMS or another audio app is playing something on the background, because Flash can’t get access to the audio and it stalls.

Yes, I am using the dmix shit too. It takes 50% of the pain away (after some work to set it up correctly with all the apps), but not completely. There are many apps that don’t support special alsa devices, as the dmix is. There were 5 people who emailed me about dmix a few months ago and I sent them detailed instructions on how to set it up. NONE of them decided to EVEN TRY it. People have better ideas to spend their evening you know than fighting with the shitty Linux/bsd desktop experience.

Anyways, after a long heated discussion I started in the ALSA list last November –where Linus himself joined in–, apparently there was some work done to create a software mixer for these cards for Alsa 1.0.9 (Mandriva shipped with these changes in). WHY, oh WHY do I have to sound like a bitch and shout around before anything gets done? It’s sad that things DO get done AFTER I bitch about something, but that does leave a mark on.

Alsa 1.0.9 was released just a week ago, but I haven’t installed it yet to see if real mixing works yet. I might do so this weekend.

The sad part is that before these cheap AC97 cards were released by VIA/Intel/SiS, *all* sound cards up to 2001 or so were shipping with hardware mixers. That was one step back from consumer audio sound card feature-set compared to the past (well, computers got faster, hardware engineers figured it would be cheaper to do it in software instead — but they didn’t count at the ‘slow’ people of Alsa).

Update: Nice!

UPDATE 2 I just tried alsa 1.0.9b and it *seems* that it comes with a mixer. However, OSS apps that run via Alsa emulation does not seem to be benefiting from it and so Real Player still does not work when another app is using the sound card. Thankfully, Flash works.

GTK+Cairo performance and bets

I removed the GTK story from osnews today after privately discussing the issue with the people involved. But there is a bet that I will keep.

Owen Taylor promised that the final version of GTK will be optimized and I promised back that if it is, I will give them 50,000 free ads on osnews for gnome or fdo. But if it is more than 15-20% slower than gtk 2.6, I will put a new story back on osnews and this time I will be even more strict in the issue.

I take performance and stability very seriously and I don’t take shit for it. GTK’s current performance is already poor compared to Qt’s (responsiveness sucks), so adding the Cairo stuff on top is the last thing I want as a user. I AM willing to sacrifice 15-20% of the performance for the new goodies Cairo brings, but more than that is just unacceptable at this point in time.

No, GLitz/XGL won’t be ready for Gnome 2.12 in September, so people should stop using that argument. If GTK 2.8 ships with Cairo and gnome 2.12, it will be using software emulation and performance will suck immensely if Owen won’t manage to optimize the shit out of it. Nautilus already depends on Cairo for example.

That’s where my problem lies: I don’t believe it can/will be optimized as much as needed. Call me a pessimist, but I will believe it when I see it. Owen is a good guy –I am sure–, but he doesn’t strike me like the guy who will optimize things. He hasn’t done so for GTK all these years, I don’t believe that he will start doing so now.