Re: [GnomeMeeting-devel-list] Advanced support for bluetooth headsets



Damien Ciabrini a �it :
This could be interesting, be it would require to expose the sound card
configuration through DBus. Maybe Julien or Damien could comment on
this ?

Well, oh, well. Let me share a wild idea I have in the back of my mind ever since I worked on turning drivers into plugins in ekiga (but never specifically worked on this).

Why can't we change the audio device after the call has started ? Because we have set the PSoundChannel at the start, and won't change afterwards (we already configured it, and gave it to use for the codec and networking code, so it's natural).

So how can we get around it and still manage to do it!?

Simple: write a PFacadeSoundChannel, which you give to the codec & networking code as your audio device.

This channel only sends silence by default. And accepts all configurations you throw at it.

Now give your real PSoundChannel to that PFacadeSoundChannel. It will try to force it to the same configuration as itself. If it manages to do so, it will now send the audio coming from it into the codec+network. If it doesn't, it just goes on sending silence.

Now, if you decide you want to use another device during the call, just give the corresponding PSoundChannel to PFacadeSoundChannel, and it will be used automagically.

The same could be done for PVideoInputDevice, of course.

This is a little sketchy, quite a few details have to be filled to make it possible, but it shouldn't give too difficult code.

Snark

PS to Damien: notice that it is too short to make a good SoC2006 project, but if we combine it with other related shorties, that could fit. Food for thought.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]