aboutsummaryrefslogtreecommitdiffstats
path: root/src/mixer/pulse_mixer_plugin.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* output/pulse: don't expose internal struct in public headerMax Kellermann2011-09-171-5/+7
| | | | | Provide _lock() and _unlock() to wrap all accesses from the mixer plugin.
* copyright year 2011Max Kellermann2011-01-291-1/+1
|
* Update copyright notices.Avuton Olrich2009-12-311-1/+1
|
* include config.h in all sourcesMax Kellermann2009-11-121-0/+1
| | | | | | After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue.
* output/pulse: call mixer on state changesMax Kellermann2009-10-231-127/+40
| | | | | | Don't let the mixer plugin "override" the libpulse callbacks. Instead, add a "mixer" attribute to the pulse_output struct, and call the mixer on all interesting events.
* mixer/pulse: don't get volume if stream is not yet readyMax Kellermann2009-10-221-3/+3
| | | | Moved the check from pulse_mixer_open() to pulse_mixer_update().
* pulse: code rewrite using the asynchronous libpulse APIMax Kellermann2009-10-211-209/+126
| | | | | | | | This is a complete rewrite of the PulseAudio output plugin. It uses the asynchronous API, which gives us more control over everything. Additionally, it connects to the PulseAudio server on startup, and keeps this connection up while MPD runs. During pause, instead of closing the stream, it enables "cork".
* mixer_plugin: pass audio_output pointer to mixer_plugin.init()Max Kellermann2009-10-211-1/+1
| | | | | This allows the mixer object to access its associated audio output object.
* mixer_plugin: use GError for error handlingMax Kellermann2009-10-201-13/+34
|
* pulse: renamed source filesMax Kellermann2009-10-201-0/+382