heyo,

I spent several hours today examining pulseaudio, planning to start hacking on
the mixer code. What I discovered is very depressing:

* libpulseaudio REQUIRES glib and REQUIRES glib main loop. literally. they're
  params for pa_context_new(). this is doable, but not at all in the context of
  our current mixer module.
* there is a full dbus api for pulseaudio. luckily, the geniuses working on it
  aren't releasing it:
  http://lists.freedesktop.org/archives/pulseaudio-discuss/2011-June/010160.html
* I looked into reverse engineering the control protocol by manipulating a
  socket that PA uses: also a no-go since the tcp protocol must
  be manually enabled by editing a config file.
* pulse has a number of library interfaces to work with. none of these let you
  manipulate volume mixers.

as far as I can see, unless the dbus api comes out tomorrow (PA 1.0) and
everyone magically adopts it overnight we should probably drop this item from
the 1.0 TODO, and imo permanently unless someone wants to rewrite the whole
mixer to function with both:

* multiple driver backend support (alsa+pulse+oss+jack+wtfelse)
* async driver APIs (such as pulse/jack) support

it's been a huge headache learning even this much, so unless someone is more
masochistic than me, I strongly suggest marking this WONTFIX.

-- 
Mike Blumenkrantz
Zentific: Coding in binary since '10.

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to