Sunday, July 16, 2006

Mid-term evaluation

Hi folks! For the midterm, some of you are wondering what are the states of the students projects. Here is mine.

Do you remember this Topaz mockup ? May be you prefere to watch something that can live ? It's not sexy, but it works (on the cast, some murphy laws) ! Hence I hope the *proof of concept* goal of the midterm is reached :-).

Right now, the "smart" thing is *still* a concept, becoming more concrete in a few days:
- class are kind of queue, with foreground/background state and volume level settings: intraclass conflicts is resolved with this class parameters, except if the user want to override the "smart orders" to the stream (here you can have a look at the s-exp .rule draft, but I don't like it enough for the moment, that's why there is no real code)
- intraclass policy is just a matter of some calls to the "class" object (push everything in background, go back to normal by a simple "pop" in the class)... there is just an interface not implemented for the moment. I have to discuss this further with ensonic.

I have choosen to use something similar to devil's pie for overriding class settings and customization, because of small memory consumption and speed (think about python, gconf, RETE, xml,... they are bad candidates for this purpose)

Pieces of the BOF talk we gave with Lennart are now available. We are taking care of the interaction between Pulse and GSmartMix.

Issues:

- as you can imagine, most of the GNOME applications don't connect to the "notify:volume" changed event, so they don't update their "(bacon)volume" sliders. RB, Totem, SoundJuicer, ... are you ready to accept patch(s) that will connect to this event ?
Another thing would be to catch the state changes in the sink element (if it's "paused" from outside)

- regarding recents discussion about the device settings. Mezcalero, when applications will start to use "gconfaudiosink profile=chat" (as proposed in the patch here #329112), GSmartMix will immediatly benefit from this description, as a sound class description. So it's a good step. The real sink behind is still an autoaudiosink or a gconfsink (I have to tackle the infinite loop if gsmartaudiosink is set as the default gconfsink...)

Now, about the device selection, and the latency and your mail about async./ in-process stream creation. Yes, GSmartMix could provide it's own solution, with a SetDevice(), AskDevice() set of methods. You are right, the latency will be here. The only answer I can formulate is that you should not use these methods if you want an immediate stream creation. But, for "sound events", the only remark I have is that it could be initialized at the start of the application/daemon, so that the sound playback will not have to wait until the server give its device settings.

- it would be cool to have a "focus" event on the top level window, in order for the sound to follow the user, if this option is enabled in a class of sound. Do you have any idea how I can get this event ?

- I don't know what is the best way to get the application icons (libmenu, libwnck, dbus event ala libnotify)

- the code is still in bazaar-ng managed, but I have registered to sf.net to support svn instead

Sunday, July 02, 2006

Vive la France


Back to France, where people are happy :)

I am not used to post on blogs. Damn digital world! Sometimes, I am under the impression that it's like a dutty. But today, it's a real pleasure.
I would like to share my feelings: the first GUADEC I attended was far better than was I expected (and I expected it to be perfect)! I think that there will be a Before and an After GUADEC'06, at least for me. I feel like a lot of things are possible, thanks to you. We are a community where people do their best everywhere.

I didn't take the rist to come to meet you all, because of my lack of english skills.
What was important for me, was to meet people that are working on audio related stuff for GNOME, because of my SoC project. I was mixed up, sometimes. But at the end, as a whole, I hadn't too much difficulties to support my project (I was expecting more technical remarks).

I would particularly like to thank Quim, Baris, Dohlo, Murray, Lennart ("Spread the world, Use Pulse & Avahi!"), the germans (the snorer:-), the french-speaking guys, Kristen, the Nokia Team (Makoto & Andrea in particular), the speakers, and all the volunteers.

Thank you all. It was a pleasure to meet you. I hope to see you next year. I have to report to newcomers that you reserved time for them. It's just fantastic! And hence, I hope that more and more people will come to share their ideas: there is still a lot of opportunities, don't be affraid! Those who are still not participating, try, (insist), and keep cool, you will see!

Monday, May 29, 2006

Mom, I did I gift for your Mothers' Day


Yesterday, I sketched in differents solutions that can do the work of GSmartMix (client side). Of course, this will be done like that if we finaly chose to add or patch GStreamer elements (a more readable version will be put on the wiki) ensonic, my mentor, encourages me to patch GstBaseAudioSink. Because it means that every application will be mangeable by a dbus peer. I was thinking to add another element, and now there is already a great deal of the work in polypaudio... Glad, mom!?

Wednesday, May 24, 2006

The Day of Acceptance

First of all, *many thanks* to everyone! And cheers, SoCers mate! I am also impatient to see your progress.

For various reasons, you trust my proposal. I am now part of SoC, and above all, part of GNOME, one way or another. I will do all my best to fullfil your GSmartMix expectations.

I will be delighted to discuss the slightest user feature, and the design choices. I want to bring an application that fits with the others GNOME projects, hence any suggestion is welcome. I guess the first step is to debate on irc with my GNOME mentors, and people concerned.

I am wondering if I could possibly be at GUADEC. I bet it would be a good way to present GSmartMix and its integration into GNOME. Should I reserve a ticket ?

I share the general feeling of disappointment of the not so lucky students. I wish them good luck for the next SoC! For the sake of them, it would be great if the leaders could take some time to explain why they did not retain their projects. Lastly, I know it's not huge, but I promise a GNOME tee-shirt to 3 students who will fix a GNOME-love bug this summer. Contact me if you are interested! It is a way to become familiar and to get accepted next year, isn't it?

Tuesday, May 02, 2006

The day after Labor Day

Wow! The last 24hours, vuntz (Vincent Untz), slinckx (Raphael Slinckx) and ds (David Schleef) reviewed my proposal. That's huge for me, since I was not expeced to have answers so early! Some technical details are now on Gnome Live and I quickly made an update to my initial proposal on google SoC (rough schedule, and also a calendar). The architecture should now be more obvious. But I need a mentor to discuss further the details.

Please, feel free to contact me if you are interested by this project

"Mentor Wanted, dead or^u^u^u Alive". :)

Monday, May 01, 2006

Google SoC officialy launched

It's time to apply...