aboutsummaryrefslogtreecommitdiffstats
path: root/src/mixer/pulse_mixer.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* pulse_mixer: free libpulse objects on failureMax Kellermann2009-03-261-0/+6
| | | | | When the mixer initialization fails, we have to free the libpulse objects we have already created, to prevent resource leaks.
* pulse_mixer: unlock the mainloop on failureMax Kellermann2009-03-261-0/+2
| | | | | It's illegal to return from pulse_mixer_setup() without unlocking the main loop. In the error handling, that unlock() call was missing.
* pulse_mixer: moved code to pulse_mixer_setup()Max Kellermann2009-03-261-15/+26
| | | | Prepare for adding proper error handling.
* pulse_mixer: keep mixer attached when another pulse sink is closed.David Guibert2009-03-171-1/+2
| | | | | | The mixer state is defined as offline only if the associated stream is removed. Signed-off-by: David Guibert <david.guibert@gmail.com>
* pulse_mixer: closeDavid Guibert2009-03-171-1/+14
| | | | | | | | | when the mixer is closed, - the mainloop is stopped. - the context is disconnected. - then the mainloop is freed. Signed-off-by: David Guibert <david.guibert@gmail.com>
* all: Update copyright header.Avuton Olrich2009-03-131-3/+4
| | | | | | | | This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
* pulse_mixer: allow mpd to reconnect to the pulse mixerDavid Guibert2009-03-071-29/+24
| | | | | | | | | | | | | | | | | | | | | | | | | This patch follows the commit 21bb10f4b. >From Max Kellermann: > I removed the daemonization changes in main.c. Please explain why you > changed that. If you need it for some reason, make that a separate > patch with a good description of your rationale. > That's the biggest flaw of your code: it opens the mixer device in the > init() method, while the open() method is empty. When the pulse > daemon is not available (either during MPD startup or when it dies > while MPD runs), the plugin will not even attempt to reconnect to > pulse. Please move the code to the open() method, to make that work. I changed the daemonize call as the fork losts the connection to the pulse server. According to your remark, the init() method should be moved to the open() ones. With the modification, mpd is able to reconnect the pulse mixer after restarting the pulseaudio daemon. Signed-off-by: David Guibert <david.guibert@gmail.com> Signed-off-by: Max Kellermann <max@duempel.org>
* pulse_mixer: added missing copyright headerMax Kellermann2009-03-071-0/+18
|
* pulse_mixer: added GLib log domainMax Kellermann2009-03-071-14/+16
| | | | Shorten some log messages, let GLib add the "pulse_mixer" prefix.
* pulse: clean up includesMax Kellermann2009-03-071-2/+4
| | | | | Don't include output_api.h - this is not an output plugin. Added missing explicit conf.h and string.h includes.
* pulse mixerDavid Guibert2009-03-071-0/+277
This patch introduces the mixer for the pulse output. Technically speaking, the pulse index is needed to get or set the volume. You must define callback fonctions to get this index since the pulse output in mpd is done using the simpe api. The pulse simple api does not provide the index of the newly defined output. So callback fonctions are associated to the pulse context. The list of all the sink input is then retreived. Then we select the name of the mpd pulse output and control its volume by its associated index number. Signed-off-by: Patrice Linel <patnathanael@gmail.com> Signed-off-by: David Guibert <david.guibert@gmail.com> [mk: fixed whitespace errors and broke long lines; removed daemonization changes from main.c]