aboutsummaryrefslogtreecommitdiffstats
path: root/src/mixer/plugins (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-01-01Copyright year 2015Max Kellermann9-9/+9
2014-12-29{mixer,output}/pulse: move code to LogPulseError()Max Kellermann1-7/+5
2014-12-29{mixer,output}/pulse: use a common Domain instanceMax Kellermann1-6/+4
2014-12-29mixer/pulse: remove redundant "virtual" keywordsMax Kellermann1-4/+4
2014-12-02mixer/null: new mixer pluginMax Kellermann1-0/+67
2014-05-12mixer/software: keep attribute "volume" in the 0..100 rangeMax Kellermann1-7/+19
The attribute must be 0..100 and not 0..1024. Previously, the code was inconsistent.
2014-03-05PulseOutputPlugin: avoid locking mainloop object from within mainloop threadPete Beardmore1-5/+14
-fixes regression introduced by: '8d6fedf8177d0d2ced81e6d93d35c368b2ac69db [PATCH] Mixer: add class MixerListener' -listener.OnMixerVolumeChanged() called GetVolume() which attempted to acquire the lock but as per 'pa_threaded_mainloop_lock()' documentation: This function may not be called inside the event loop thread. Events that are dispatched from the event loop thread are executed with this lock held -this patch seperates the underlying action of GetVolume() into a new GetVolumeInternal() function, to be called only when the lock is already held, as is the case for the listener.OnMixerVolumeChanged() call
2014-02-19Mixer: add class MixerListenerMax Kellermann6-26/+40
Use a listener interface instead of GlobalEvents.
2014-02-06mixer/Plugin: pass AudioOutput reference to init()Max Kellermann7-35/+27
Passing a void pointer is unsafe.
2014-02-06MixerPlugin: convert function pointers to Mixer virtual methodsMax Kellermann7-244/+162
2014-02-06mixer/software: use IgnoreError()Max Kellermann1-2/+2
2014-02-05Mixer: rename struct mixer_plugin to MixerPluginMax Kellermann6-6/+6
2014-02-05MixerPlugin: add EventLoop& init() parameterMax Kellermann6-10/+17
2014-01-24Mixer*: move to mixer/Max Kellermann8-0/+1237