aboutsummaryrefslogtreecommitdiffstats
path: root/src/output_plugin.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* copyright year 2011Max Kellermann2011-01-291-1/+1
|
* output_plugin: add method delay()Max Kellermann2010-11-051-0/+18
| | | | | This method is used to reduce the delay of commands issued to the shout plugin.
* Update copyright notices.Avuton Olrich2009-12-311-1/+1
|
* output_plugin: added method "drain"Max Kellermann2009-10-291-0/+12
| | | | | | | drain() is the opposite of cancel(): it waits until all data in the buffer has finished playing. Instead of implicitly draining in the close() method like the ALSA plugin has been doing it forever, let the output thread decide whether to drain or to cancel.
* output_plugin: added methods enable() and disable()Max Kellermann2009-10-231-0/+34
| | | | | | | 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.
* output_plugin: replaced output_plugin.get_mixer() with mixer_pluginMax Kellermann2009-03-261-17/+8
| | | | | | The mixer core library is now responsible for creating and managing the mixer object. This removes duplicated code from the output plugins.
* 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.
* output_plugin: report errors with GErrorMax Kellermann2009-02-261-10/+24
| | | | | | | Use GLib's GError library for reporting output device failures. Note that some init() methods don't clean up properly after a failure, but that's ok for now, because the MPD core will abort anyway.
* output_plugin: don't pass audio_output object to method init()Max Kellermann2009-02-251-5/+2
| | | | | | audio_output_get_name() has been removed, which was the only function left in output_api.h. The output plugin doesn't need the audio_output object at all, remove the parameter from the init() method.
* output: pass the music chunk pointer as void*, not char*Max Kellermann2009-02-231-1/+1
| | | | | | The meaning of the chunk depends on the audio format; don't suggest a specific format by declaring the pointer as "char*", pass "void*" instead.
* output_api: play() returns a lengthMax Kellermann2009-02-231-2/+4
| | | | | | | | The old API required an output plugin to not return until all data passed to the play() method is consumed. Some output plugins have to loop to fulfill that requirement, and may block during that. Simplify these, by letting them consume only part of the buffer: make play() return the length of the consumed data.
* output_plugin: replaced method "control()" with "mixer()"Max Kellermann2009-02-161-6/+17
| | | | | The output plugin shouldn't know any specifics of the mixer API. Make it return the mixer object, and let the caller deal with it.
* output_plugin: added inline wrapper functionsMax Kellermann2009-02-161-0/+66
| | | | | Similar to the decoder plugin API: added wrapper functions to increase code readability.
* output_plugin: reorder method declarationsMax Kellermann2009-02-161-17/+17
| | | | | Initialization and deinitialization first, then tag functions, then play/cancel/pause.
* output_api: moved "struct audio_output_plugin" to output_plugin.hMax Kellermann2009-02-161-0/+115
If we move the plugin struct to a separate header, we don't have to include the big fat output_api.h everywhere.