GNOME plans for the future

Noticed some tiny disturbance in the force before Christmas as
Thom Holwerda of osnews
posted an article about what he felt was the sorry state of free desktops. Seems most people in the GNOME camp simply ignored the article as irrelevant, but Aaron Segio of Trolltech and KDE let it somewhat get to him.

Personally I felt Thom kinda pointed out some troublesome points, but that his context and conclusion was wrong.

First of all he critized GNOME for not having a clear vision for GNOME 3. Well this is true, but that is mostly due to not having any clear ideas for something that would require a GNOME 3. GNOME 2 came about as a result of shortcomings in GTK+ at the time, causing the GTK+ maintainers having to break API compatability in order to improve for instance the handling various writing languages and fonts.

As part of having to port to the new GTK+ some policy changes where made for GNOME in terms of focus and goals. Goals and policies which people are still very happy with and don’t see a big need to change.

At the moment GNOME is doing quite well with incremental improvements with a lot of the major effort by GNOME contributors and companies going into projects such as HAL, X.org, Cairo, NetworkManager, GStreamer, Telepathy, OpenOffice, Firefox and Bluetooth support to mention a few. The thinking being that having a full featured office suite for instance is more important to potential users than having a panel that can be themed to have the shape of a sextant. At the same time the core parts of GNOME are continously moving forward with incremental improvements or replacements.

Why GNOME’s incremental approach is considered less by Thom than Apple’s is not clear to me, but for some reason he feels that unless you put a major version number behind something in the linux world you by definition stand still.

And to be honest incremental improvements is what everyone is doing these days. Windows Vista, MacOSX and KDE4 don’t really contain anything earth shattering, they are basically increamental improvements over the predecessors. Thom mentiones KDE’s Plasma, Appeal and Solid in his article as KDE4 efforts. Aasegio mentioned Phonon and Decibel as other examples. Well if you look at each of them, none of them are actually doing anything ‘new’, they are all just attempts at trying to do what is already being done, but in what each project maintainer feel is a better way. Which is just the same as how GNOME currently increments forward, although since GTK+ is not breaking API the need/motivation to call it GNOME3 is not very big. The excitement around Compiz recently showed how more glitz can be brought to the desktop as an incremental improvement.

The thing is that until we find a new way to interact with our desktops, nobody will be doing anything truly significantly new anytime soon, apart from maybe in the application space.

And to give an example of what I am talking of I want to point to the Nintendo Wii as a device which actually is doing something ‘new’. While parts of the technology has been around for quite a while the way the Wii controler works do truly change the way you interact with the system (making it much for physical for one) as compared to previous and competing consoles.

On the desktop space I think doing something I feel deserve the title ‘new’ will be harder, but I think the Lowfat experiement of Mirco has the potential. And if it pans out it might become the foundation and focus of a GNOME 3 cycle. But with all such experimental efforts we can’t commit to it before the proof of concept has reached a bit further so we know we can accomodate all the major usecases. And maybe in the end it will end up being more like what we at Fluendo try to do with Elisa, making it a add-on to the current desktop/system for a specific usecase rather than a full desktop replacement. Yet using many of the same building blocks as the desktop.

So while both GNOME and KDE could do with more developers I don’t see any truly dark clouds on the horizon. And if Thom or anyone else have any clear ideas on something that would require GNOME to change so many of its internals to justify switching the major version number to 3, then please come with them. In the meantime lets just continue incrementing our way towards perfection within the constraints of the current paradigm :)

The Magic Lamp of Standardization

Just saw an article on whats up next in Linux desktop standardization where there is blurb talking about the discussion at the latest ODSL Desktop Architects Meeting about the issues around Linux Audio (or multimedia in general if you want).

The final outcome was this: It was decided to start addressing these issues by creating a focus group and mailing a list of what’s needed from audio APIs, and how to deal with bringing consistency to Linux audio.

Which is exactly the kind of outcome a conference like this can ever hope to achieve and which also shows why it is a complete waste of time trying to address the issue in such a forum.

The DAM meetings are set up as a ‘lets get everyone together to see if we can find common ground’ type of meeting. Which isn’t bad, but it only lends itself to a certain type of problems.

The problem with Linux audio is not that people out there do not ‘know’ what the problem is, the problem is that people disagree, often quite strongly on how to solve it, and that there is limited resources available for solving it using any solution. So instead of actually moving towards solving it we get a lot of cute discussions on related topics such as when to push and when to pull as one example.

To solve the problems mentioned in the article you will need to step on some toes, sink a lot of man hours into the chosen solution and in the end win out on excellence. Which surprisingly is a bit harder than one would think :)

I think the ODSL-DAM context fails horribly already on the first hurdle, in the sense that the DAM conference is not set up to do any kind of toe stepping, rather to the contrary. Not that I am saying that the DAM type meetings are useless, not at all, but a format made for trying to increase cooperation between two quite mature and well established solutions like GNOME and KDE doesn’t necessarily lend itself well to a problem requiring some painful trailblazing.

That said I do think the problems are being addressed, but they are not and will not be addressed by things like ODSL DAM, instead they are being addressed by individual developers, contributing companies and distributions who are already all moving in mostly the same direction. The thing is however that for the contexts these people and groups are moving something like DAM is more of a distraction than a valuable contribution towards the end goal at this point in time.

To let on where I see things moving based on what the distro’s are doing I will say that on the audio side the solution that is gaining traction is PulseAudio which will be run on top of ALSA and providing legacy support for ESD and OSS. For the codec problem there are solutions being worked on around GStreamer.

Within the context of these technologies and some other technologies that comes as a consequence around them also longer term plans are made for addressing the issues faced. For instance making sure that Pulse Audio is an acceptable solution for both people doing so called pro-audio and for the normal desktop, like it is on MacOSX.

Ogg Trick modes!

Ok, so Wim went on a hacking spree this Sunday and implemented trick-modes with Theora video. This means you can now grab gst-plugins-base CVS and playback Theora in reverse using it. Elisa has some support for this already in subversion, but the best test application is the ‘seek’ example application under tests/examples/seek in gst-plugins-base. Been having some fun playing some of the Ogg Theora movies I have in fast-forward mode, slow motion mode, slow motion reverse and fast rewind mode by modifying the ‘rate’ value in ‘seek’. Vorbis sound is also speeding up/slowing down and playing the sound in reverse perfectly. I tried recording a screencast of it using Istanbul, but my machine is not even close to being fast enoungh to both do the trick mode playback and recording to Ogg at the same time :). A big thanks to Wim. Really looking forward to demonstrating this at future conferences and meetings.

With the support now implemented in a set of open source decoders and demuxers hopefully more people in the community will be able to help out with trick mode enabling the rest of our supported formats. Up to this point only the Fluendo Windows Media plugins supported trick modes, but that doesn’t really help anyone outside Fluendo understand how trick modes are supposed to work in GStreamer, with these changes the secret sauce is available for anyone to study alongside the already public
design document
:)

Update on the Texas Instruments OpenMax plugins

Texas Instruments sent in the first version of their OpenMax optimized
GStreamer plugins. Their plugins use the open source OpenMax implementation Bellagio/Omxil which was created by Semiconductor Technologies. ST plans on releasing a set of
GStreamer plugins of their own also as far as I know.

DVD and GStreamer

For a long time now things have been moving slowly in terms of
improving the state of DVD support with GStreamer. Tim Müller
has been working on improving it bit-by-bit over time, but being
only one person and having a lot of other tasks on his plate the
progress have been slow. Well know it seems some help has arrived
in the form of Jason Gerard DeRose who sent in information about his
new dvdread element to the mailing list last Friday and at the same time expressing interest in working also on working on the DVD navigation problemspace. Jason’s original reason for working on
the dvdread element was for his KungFu DVD ripper, but with the DVD stuff fresh in his head is willing to put time into improving also the playback side of things. A big thanks to Jason!

Proprietary 3D drivers

After Mark Shuttleworths invitation for Suse devs to switch to Ubuntu, which today he clarified, a lot of discussion has happened. A frequent topic that has come up in that discussion is the planed use of binary drivers for default in future Ubuntu releases for ATI and NVidia graphics cards. Well the binary graphics driver issue old news I say, I thought about that over 9 months ago ;)

NVidia/Fedora Quake crash

I would like to thank those who provided some feedback on my crash problem. It turned out to be a known bug in the latest released drivers and upgrading to the latest beta solved it. Thanks to the AC who pointed me in this direction.

No Quake3 in my FC6 world

Been running FC6 for a little while now and I am happy with it for the most part. Only irritating regression is that Quake3 don’t want to run anymore, it actually pulls down the whole X server when I try to run it. This is using the non-free Nvidia driver package from livna.org.

The xorg.0.log file doens’t give me much to work with, at least nothing that Google gives me anything on.

Backtrace:
0: /usr/bin/Xorg(xf86SigHandler+0x81) [0x80d4cc1]
1: [0x414420]
2: /usr/lib/xorg/modules/drivers/nvidia_drv.so(_nv001255X+0x38) [0x2ee5dc]
3: [0xa0fb8c0]

Fatal server error:
Caught signal 11.  Server aborting

Anyone seen and fixed this on their own system? I am using the quake3 version from Fedora Extras.

Linux Desktop and Games

Noticed a discussion on Slashdot on the state of Linux for games, spawned by a (not so good) article on Cedega.

One of the main arguments brought up which is probably true is that the PC gaming market is dying/declining, due to the increased popularity of consoles. It rhymes well with my own experience as those of my friends who do game a lot have basically switched from PC gaming to Playstation/Xbox gaming over the last two/three years. If you as a game company is moving your focus from PC’s to consoles anyway I guess looking at adding more ‘PC platforms’ to your supported list is quite far down the todo list.

That said there are still some major titles coming out with primarly the PC platform in mind and I don’t accept all the arguments made for why these don’t have a native linux port.

One argument I noticed cropping up was that of easy of porting between XBox and PC platform while the Linux/OpenGL/SDL/OpenAL port was harder. I doubt this is the real problem. For example I did expect more Linux games to come out when the Playstation 2 came out and used GCC and OpenGL due to ease of porting, but no such ports seemed to happen. Today MacOS X uses OpenGL and OpenAL on a Unix core with gcc, yet few of titles released for Apple also get a GNU/Linux port. So I think the Linux ports gets axed before the difficulty of porting question even arises.

Another question is if there are enough linux users out there to warrant a port, or at least enough linux users interesting in playing games to warrant a port. That is a hard question to answer. Loki Games did go under as many have pointed out, but in the aftermath its hard to say if it was mismanagement or lack of sales killing that company. Claims have been made in both directions. I would also hope that we have managed to grow the overall size of the linux userbase since the days of Loki which might have changed the dynamics if Loki where doing business today. There are other linux porting houses like Linux Games Publishing and Runesoft around and they seem to be surviving, even if they mostly do smaller titles. Transgaming looks like they are doing a healthy business currently, somewhat on the back of the enduring popularity of World Of Warcraft no doubt. So there definetly is a sustainable market for games and games related products on GNU/Linux. Based on some comments I saw from a Epic or Id person a couple of months ago I guess it is more of the ‘we don’t lose money on doing linux ports’ category though as opposed to ‘doing linux ports gives us a nice bundle of extra cash’. We need to get to the second of these two before the major game houses start paying attention I think.

Linux gaming is hampered still by shitty drivers for 3D, yet I am unsure about how direct impact this have on the lack of game ports. At the level the decision is taken at a company about wether to support Linux or not I don’t think there would be awareness of the state of Linux 3D drivers. NVidia’s proprietary drivers are probably the only ones out there that provides the quality and performance you want for playing newer titles. Intel’s drivers are good, but Intel is currently aiming at the low-end graphics market which kills them for a lot of the current games I think. ATI as many have pointed out provide really shitty Linux drivers. I don’t understand fully why they get away with it. I mean according to the grapevine the reason these drivers exist is due to the animation companies wanting them for their renderfarms. Well if that is true I don’t understand how said companies accept drivers which such horrid performance, being about 50% the speed of the same driver for Windows. Losing 50% performance on your renderfarm due to bad drivers would cause a lot of angry customers I would assume?

Anyway for someone contemplating a port, there might be some awareness that 3D accelleration under Linux has some kind of problems, even if the don’t know the details, which wouldn’t be helping their value estimation of the linux market of course. That said it seems to me people in the community are activly trying to buy NVidia or Intel using hardware these days, so hopefully the general image of bad 3D support will lessen over time due to that. It also has to be said in defence of ATI that it do seem like they are trying to improve their drivers currently. The release of AIGXL and XGL seems to have made them decide to put some more resources onto their drivers. Time will tell.

In regards to the general market size, I saw this
article today
which is Red Hat talking about Xen. More importantly to this entry though is that it also reports both Novell and Red Hat seeing rapidly growing interest in deploying GNU/Linux destops. As a digression I wonder how important the major GNU/Linux and Solaris vendors having standarized on GNOME is for this surge in interest. The Windows games market where built on the back of home office PC’s, so maybe that can/will be our path too.

The Pain of Directories

As we are preparing for the first alpha release of elisa the question of file locations came up. In a media center solution you have IMHO halfway lost if you have to expose disk directory layout through the userinterface. Cause since the primary tool for using the GUI is a remote navigating directories and choosing files based on it is simply painful. In the set-top box situation this is not to big a problem as we can enforce certain defaults. But since we also want people to be able to run Elisa on their normal server/desktop systems we need to also consider how these are laid out.

There has been some long discussions about this in the GNOME community about defining special ~/Music and ~/Movie directories for instance that all applications default to. If this was the case we could just have Elisa default to parsing those directories too. Unfortunatly the progress on this has stalled due to what I guess is a combination of issues, one is how to handle localizations (on disk or in GUI) and if the especially the first who does the work to make it happen.

For Elisa we will set specific directories for this first alpha release that can be changed in the elisa.conf file. What the long term solution will be will depend on what happens elsewhere in the community. I just hope we don’t need to have a file manager/chooser module in Elisa long term. At least not one many people would need to use.

GUADEC over for this year

So GUADEC is over and I am back again at the office. It was a great week and I guess the 7 day GUADEC worked out fine, although I felt people where maybe a little battleworn on Friday. I know I was.

A lot of cool stuff happened this year. For instance the LugRadio guys where able to record short daily LugRadio episodes from the conference using Jokosher. So be sure to grab the recorded episodes from their archives session. Nokia represented by Makoto Sugano also thought Jokosher was cool and donated a 770 device to the project to help get Jokosher remote going.

The Fluendo party was a great success even if we had a painful time figuring out how to start the slideshow looping in Open Present. To those wondering let me just say that the word ‘loop’ never occurs in any dialog related to it and that there is a non-intuitive timer value that has to be filled in :)

Edward did a great job organizing a GStreamer and gst-python hackfest at GUADEC. It ended up a quite large group with people interested in and working on Pitivi, Jokosher and last but not least Elisa our media center software which we announced at GUADEC.

The response to Elisa was absolutly fantastic and I hope we will be able to get an active community around it. Philippe and Loic will of course be continuing to hack on it to make it a killer solution.

GUADEC next year will be in Birmingham in the United Kingdom. I hope to be involved a bit with the organisation of that as I have some ideas on some cool and interesting tracks and speakers. Anyway I guess I can discuss such things with many of the local people involved when Edward and me head up to Wolverhampton for LugRadio live next month.

With so many companies involved in GNOME these days logowear is an important way to make your mark. Trying to keep the cooperative aspect strong I decided to help the Opened Hand guys out by wearing a t-shirt that surely points people to OpenedHand :). I am also wearing on of the fashionable Fluendo caps in that photo.

For people wondering about the video archive of the talks done at GUADEC you will find it at http://stream.fluendo.com/archive/guadec/2006/ eventually. Nothing there now, but it is being worked on.

Women’s Summer Outreach Program

Not often I use my blog to say I was wrong about something, but this time I feel its warranted. I have to admit feeling that the Women’s Summer Outreach Program 2006 program, started to try to get more Women involved with Free Software, was destined to fail. To me it seemed like an effort to fish in an empty sea. Well as it turned out I was horribly wrong. There turned out to be a lot of submissions and seven projects are now approved. A big thanks to Chris Ball and Hanna Wallach for organizing this.

Important GUADEC updates

A couple of important updates for GUADEC atendees. The first message is that the France vs Spain world cup football match will be streamed at the Maemo party tonight, so no need to panick for the football fan among us.

The second announcement is that the bus service to the GNOME Village has improved with more departures and also an extra stop. Get the details on the GUADEC news site.
Be aware that now that things have cooled down a little the GUADEC news page will be more frequently updated with updated news.

GUADEC highlights

So GUADEC is now approaching with lightning steps. In that regard I should point out that there is a nice collection of lightning talks being held that you don’t want to miss. The full overview is here. Some of the cool highlights are Stuart Langridge of Jokosher and LugRadio fame presenting his project Jackfield, which will bring Apple’s Dashboard applications to GNOME. According to rumours so will Stuart have 90% of all Dashboard applications working in time for his lightning talk. The cool guys from Fluendo Lyon will present Elisa, the media center solution we have been working on for the last months. And last but not least Edward will present on Pitivi your friendly neighbourhood non-linear video editor. There is also a page listing the various GStreamer related events during GUADEC here: overview of some GStreamer realated events at this years GUADEC.

Also be sure to catch the Jokosher talk by Jono on Monday at 16.00 I think it will be interesting, the speed at which the Jokosher community was assembelded and have made a usable product is simply amazing so I am sure Jono will share some tips on community building as part of his talk.

Fluendo will also have a booth at the conference where you can reach us and get demos of our technologies and solutions, so be sure to stop by.