| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Provide _lock() and _unlock() to wrap all accesses from the mixer
plugin.
|
|
|
|
| |
Use these instead of exposing the internal roar_t struct.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
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".
|
|
|
|
|
| |
This allows the mixer object to access its associated audio output
object.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This mixer plugin may be used instead of the traditional global
software mixer. It integrates with the "volume" filter plugin, and
can control the software volume of an audio output which has no
hardware mixer.
|
|
This little program is used to test mixer plugins in an isolated
environment. This is ALSA-only currently, because we don't have a
real "plugin list" yet, and I'm too lazy to implement a switch.
|