aboutsummaryrefslogtreecommitdiffstats
path: root/src/mixer (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-12-15mixer/alsa: fix deadlockMax Kellermann1-1/+13
This deadlock was a regression by commit 8e38b4f8. Since we currently can't resolve this, let's revert the commit, and add a GLib specific workaround for the build failure.
2013-12-13mixer/alsa: use BlockingCall() instead of EventLoop::AddCall()Max Kellermann1-1/+2
This is safer, and works without epoll(). Fixes a build failure with uClibc, which does not support epoll().
2013-10-30mixer/software: fix double free bugMax Kellermann1-3/+15
2013-10-28*: use nullptr instead of NULLMax Kellermann2-17/+17
2013-10-21Util/ASCII: add StringEqualsCaseASCII() overload with lengthMax Kellermann1-3/+2
Replaces GLib's g_ascii_strncasecmp().
2013-10-20Util/ASCII: add function StringEqualsCaseASCII()Max Kellermann1-3/+3
Replaces GLib's g_ascii_strcasecmp().
2013-10-15Client, ...: remove unnecessary glib.h includeMax Kellermann1-2/+0
2013-10-02Log: new logging library APIMax Kellermann4-14/+15
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
2013-10-01mixer/alsa: handle ENODEVMax Kellermann1-0/+5
Fixes busy loop when USB sound device gets unplugged (Mantis bug #3824).
2013-10-01mixer/alsa: log snd_mixer_handle_events() errorsMax Kellermann1-1/+6
2013-09-05conf.h: remove obsolete headerMax Kellermann1-1/+0
Use only ConfigData.hxx in plugin sources to reduce header dependencies.
2013-09-04util/Error: new error passing libraryMax Kellermann6-124/+102
Replaces GLib's GError.
2013-08-10alsa/mixer: defer InvalidateSockets() call to I/O threadMax Kellermann1-1/+2
2013-08-10mixer/alsa: invoke InvalidateSockets() in constructorMax Kellermann1-1/+3
2013-08-10event/MultiSocketMonitor: PrepareSockets() returns timeoutMax Kellermann1-3/+5
Simplify the API, don't use GLib specific integer type.
2013-08-07*: remove remaining __cplusplus checksMax Kellermann1-8/+0
2013-08-07mixer/alsa: use AllocatedArray for the pollfd bufferMax Kellermann1-3/+5
2013-08-07Makefile.am: move sources to libsystem.aMax Kellermann1-1/+1
2013-08-04*: use gcc.h macros instead of GLibMax Kellermann4-9/+10
2013-08-04MixerPlugin: pass config_param referenceMax Kellermann6-19/+19
2013-08-04FilterPlugin: pass config_param referenceMax Kellermann1-1/+3
2013-07-30tag: convert to C++Max Kellermann1-0/+1
2013-07-30output_api: convert to C++Max Kellermann4-4/+4
2013-04-16mixer/software: use gcc_unused instead of G_GNUC_UNUSEDMax Kellermann1-5/+5
2013-04-16MixerInternal: convert to classMax Kellermann7-59/+51
2013-04-16mixer/winmm: convert to a classMax Kellermann1-10/+12
2013-04-16mixer/Software: convert to a classMax Kellermann1-20/+22
2013-04-16mixer/Pulse: convert to a classMax Kellermann2-25/+22
2013-04-16mixer/Oss: convert to a classMax Kellermann1-51/+92
2013-04-16mixer/Alsa: convert to a classMax Kellermann1-67/+103
2013-04-16output/Pulse: convert to C++Max Kellermann2-6/+6
2013-04-09pcm_*: move to src/pcm/Max Kellermann1-1/+1
2013-02-22mixer_plugin: convert to C++Max Kellermann6-6/+6
2013-02-22{output,mixer}/winmm: convert to C++Max Kellermann1-9/+12
2013-02-02FilterInternal: convert struct filter to a OO interfaceMax Kellermann2-4/+4
2013-02-01filter: convert to C++Max Kellermann1-2/+2
2013-01-31pcm_*: convert to C++Max Kellermann1-1/+1
2013-01-31mixer/software, filter/volume: convert to C++Max Kellermann2-11/+13
2013-01-29output/{alsa,oss}: convert to C++Max Kellermann1-8/+8
2013-01-16output/roar: convert to C++Max Kellermann1-52/+24
2013-01-15mixer/Alsa: use MultiSocketMonitorMax Kellermann1-134/+37
2013-01-11configure.ac: enable WIN32_LEAN_AND_MEAN on WindowsMax Kellermann1-0/+2
2013-01-09EventPipe: rename to GlobalEventsMax Kellermann2-5/+5
2013-01-09event_pipe.h: convert to C++Max Kellermann2-2/+2
2013-01-09mixer/{alsa,pulse}: convert to C++Max Kellermann3-28/+40
2012-05-29output/raop: delete the RAOP pluginMax Kellermann1-67/+0
This plugin is horrible code, I mean it. Last year, I tried hard to fix it, but I figured would take less time to do a full rewrite. Given that I don't even have any device that supports RAOP, I can't do that properly. After 16 months, nobody volunteered for fixing it. Hereby, I delete it, because having no RAOP plugin is better than having this mess. Sorry.
2012-01-05mixer/alsa: listen for external volume changesMax Kellermann1-1/+180
Use libasound's polling functions, implement a bridge to GSource / GPollFD and send idle events to clients when an external program changes the ALSA mixer volume.
2012-01-05mixer/alsa: move code to alsa_mixer_setup()Max Kellermann1-25/+34
Better error handling.
2012-01-05mixer/alsa: move code to alsa_mixer_lookup_elem()Max Kellermann1-24/+27
2011-09-17output/pulse: don't expose internal struct in public headerMax Kellermann1-5/+7
Provide _lock() and _unlock() to wrap all accesses from the mixer plugin.