aboutsummaryrefslogtreecommitdiffstats
path: root/src/output/OutputCommand.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-10-26output/Command: flush the mixer cache when enabling/disabling outputMax Kellermann1-0/+8
Fixes mixer lag (http://bugs.musicpd.org/view.php?id=4425).
2015-08-15PlayerThread, ...: move to src/player/Max Kellermann1-1/+1
2015-01-01Copyright year 2015Max Kellermann1-1/+1
2014-01-28output: rename source filesMax Kellermann1-1/+1
2014-01-28output: rename struct audio_output to AudioOutputMax Kellermann1-3/+3
2014-01-28OutputAll: convert to class, move instance to class PartitionMax Kellermann1-26/+20
Another big chunk of code for multi-player support.
2014-01-24Mixer*: move to mixer/Max Kellermann1-1/+1
2014-01-23output/*: move to output/plugins/Max Kellermann1-0/+0
2014-01-13copyright year 2014Max Kellermann1-1/+1
2013-11-28include cleanup using iwyuMax Kellermann1-1/+0
2013-10-30*: update copyright year to 2013Max Kellermann1-1/+1
2013-10-19*: use nullptr instead of NULLMax Kellermann1-1/+1
2013-08-04Commands: new command "toggleoutput"Max Kellermann1-0/+27
2013-04-17output: convert to C++Max Kellermann1-5/+2
2013-04-16MixerInternal: convert to classMax Kellermann1-2/+1
2013-02-22mixer_plugin: convert to C++Max Kellermann1-1/+1
2013-01-20PlayerControl: move functions into the classMax Kellermann1-2/+2
2013-01-09idle: convert to C++Max Kellermann1-1/+1
2013-01-07mixer_all: convert to C++Max Kellermann1-1/+1
2013-01-04player_control.h: convert header to C++Max Kellermann1-1/+1
2013-01-04output_*: convert to C++Max Kellermann1-1/+4
2011-01-29copyright year 2011Max Kellermann1-1/+1
2011-01-10player_control: removed the global variable "pc"Max Kellermann1-2/+2
Allocate a player_control object where needed, and pass it around. Each "client" object is associated with a "player_control" instance. This prepares multi-player support.
2009-12-31Update copyright notices.Avuton Olrich1-1/+1
2009-11-12include config.h in all sourcesMax Kellermann1-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.
2009-10-23output_plugin: added methods enable() and disable()Max Kellermann1-0/+9
With these methods, an output plugin can allocate some global resources only if it is actually enabled. The method enable() is called after daemonization, which allows for more sophisticated resource allocation during that method.
2009-10-08state_file: save only if something has changedMax Kellermann1-0/+6
If nothing has changed since the last save, don't save the state file. Saving will spin up the hard drive, which is undesirable on hosts where MPD is idling in background.
2009-03-26output_plugin: replaced output_plugin.get_mixer() with mixer_pluginMax Kellermann1-1/+1
The mixer core library is now responsible for creating and managing the mixer object. This removes duplicated code from the output plugins.
2009-03-14mixer_api: moved functions to mixer_control.cMax Kellermann1-1/+1
mixer_control.h should provide the functions needed to manipulate a mixer, without exposing the internal mixer API (which is provided by mixer_api.h).
2009-03-13all: Update copyright header.Avuton Olrich1-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.
2009-03-12mixer_control: don't touch mixers of disabled outputsMax Kellermann1-0/+9
When an audio output device is disabled, also disable its mixer.
2009-02-28output: use GTimer instead of time_t for reopen after failureMax Kellermann1-1/+0
time() is not a monotonic timer, and MPD might get confused by clock skews. clock_gettime() provides a monotonic clock, but is not portable to non-POSIX systems (i.e. Windows). This patch uses GLib's GTimer API, which aims to be portable.
2009-02-11audio: moved code to output_command.cMax Kellermann1-15/+34
The output_command library provides a command interface to the audio outputs. It assumes the input comes from an untrusted source (i.e. the client) and verifies all parameters.
2009-02-10audio: moved code to output_all.cMax Kellermann1-1/+1
Moved code which deals with all audio outputs at once into a separate library.
2009-02-10audio: moved protocol code to output_print.cMax Kellermann1-11/+17
2009-02-04playlist: moved code to playlist_state.cMax Kellermann1-6/+13
Moved everything related to saving or loading the playlist from/to the state file to playlist_state.c.
2009-01-07pcm: pass void pointers to PCM functionsMax Kellermann1-1/+1
In generic PCM functions allowing all sample formats, pass a void pointer instead of a char pointer.
2009-01-07pcm_utils: moved code to pcm_mix.cMax Kellermann1-10/+9
Moved the software mixing code (used by crossfading) to a separate library.
2009-01-03pcm_utils: use the custom PRNG for volume ditheringMax Kellermann1-11/+9
Don't use libc's rand() function, because it is slow. Our own trivial linear congruential generator is good enough for dithering.
2008-12-30listen: moved redirect_stdin() to daemon.cMax Kellermann1-0/+6
redirect_stdin() is a daemonization function, and disconnecting from the standard input is always a good idea for MPD.
2008-12-30main: moved daemonize() to daemon.cMax Kellermann1-12/+5
2008-12-27cmdline: use gboolean instead of intMax Kellermann1-4/+6
Prepare for the migration to the GLib option parser, which uses gboolean for flags.
2008-12-27moved command line parser to cmdline.cMax Kellermann1-7/+13
2008-10-31added prefix to header macrosMax Kellermann1-2/+2
"LOG_H" is a macro which is also used by ffmpeg/log.h. This is ffmpeg's fault, because short macros should be reserved for applications, but since it's always a good idea to choose prefixed macro names, even for applications, we are going to do that in MPD.
2008-10-08don't include os_compat.hMax Kellermann1-1/+1
When there are standardized headers, use these instead of the bloated os_compat.h.
2008-09-09output: moved code from audioOutput.c to output_control.cMax Kellermann1-19/+0
Similar to decoder_control.c, output_control.c will provide functions for controlling the output thread (which will be implemented later).
2008-09-09output: removed keepAudioOutputAlive() declarationMax Kellermann1-1/+0
This function is declared, but is neither used nor implemented.
2008-09-08output: static audio_output_plugin list as arrayMax Kellermann1-17/+0
Instead of having to register each output plugin, store them statically in an array. This eliminates the need for the List library here, and saves some small allocations during startup.
2008-09-07output: renamed typedef AudioOutput to struct audio_outputMax Kellermann1-21/+22
Also rename AudioOutputPlugin to struct audio_output_plugin, and use forward declarations to reduce include dependencies.
2008-09-07output: added output_api.hMax Kellermann1-64/+3
Just like decoder_api.h, output_api.h provides the audio output API which is used by the plugins.