aboutsummaryrefslogtreecommitdiffstats
path: root/src/output/ao_plugin.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* output/ao: add missing g_free in error pathJonathan Neuschäfer2011-07-181-0/+3
|
* Merge release 0.15.16 into v0.16.xMax Kellermann2011-03-161-1/+4
|\ | | | | | | | | | | | | | | Conflicts: NEWS configure.ac src/output/jack_plugin.c src/update.c
| * Insure proper initialization of stack-allocated struct.Christopher Brannon2011-02-151-1/+4
| | | | | | | | | | | | | | | | | | | | Version 1.0.0 of the libao library added a new field to the ao_sample_format struct. It is a char * named matrix. When an ao_sample_format is allocated on the stack, this field contains garbage. The proper course is to insure that is initialized to NULL. NULL indicates that we do not want any mapping. The struct is now initialized using a static initializer, and this technique is compatible with all known versions of libao.
* | Update copyright notices.Avuton Olrich2009-12-311-1/+1
| |
* | audio_format: changed "bits" to "enum sample_format"Max Kellermann2009-12-021-6/+17
| | | | | | | | | | | | This patch prepares support for floating point samples (and probably other formats). It changes the meaning of the "bits" attribute from a bit count to a symbolic value.
* | include config.h in all sourcesMax Kellermann2009-11-121-1/+2
|/ | | | | | 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.
* all: Update copyright header.Avuton Olrich2009-03-131-6/+7
| | | | | | | | 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-16/+36
| | | | | | | 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.
* ao: no CamelCaseMax Kellermann2009-02-251-48/+41
| | | | Renamed functions and variables.
* ao: removed AoData.device!=NULL checksMax Kellermann2009-02-251-12/+1
| | | | | | | The MPD core guarantees that the audio_output object is always in a consistent state: either open or closed. When open, it will not call the open() method again, and when closed, it will not call play(). Removed several checks and the NULL initialization.
* ao: removed implementation of method cancel()Max Kellermann2009-02-251-6/+0
| | | | | The method is empty, and we can simply set the method pointer to NULL instead.
* output_plugin: don't pass audio_output object to method init()Max Kellermann2009-02-251-2/+1
| | | | | | 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_api: removed audio_output_get_name()Max Kellermann2009-02-251-2/+2
| | | | Use config_get_block_string("name") instead of audio_output_get_name().
* output: pass the music chunk pointer as void*, not char*Max Kellermann2009-02-231-2/+2
| | | | | | 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-13/+7
| | | | | | | | 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.
* ao: declare AoData.writeSize as size_tMax Kellermann2009-02-101-3/+3
| | | | | writeSize is a memory size and its type should thus be size_t. This allows us to remove two explicit casts.
* use g_free() instead of free()Max Kellermann2009-01-251-1/+1
| | | | | | On some platforms, g_free() must be used for memory allocated by GLib. This patch intends to correct a lot of occurrences, but is probably not complete.
* conf: const pointers in block get functionsMax Kellermann2009-01-251-1/+1
| | | | | All config_get_block_*() functions should accept constant config_param pointers.
* conf: added config_get_block_unsigned()Max Kellermann2009-01-181-10/+1
| | | | Eliminate some more getBlockParam() invocations.
* conf: added config_get_block_string()Max Kellermann2009-01-181-9/+8
| | | | This replaces lots of getBlockParam() invocations.
* conf: no CamelCase, part IMax Kellermann2009-01-171-4/+5
| | | | Renamed functions, types, variables.
* ao: use g_strsplit() instead of strtok_r()Max Kellermann2009-01-031-37/+15
| | | | g_strsplit() is more portable than strtok_r().
* output plugins: don't include gcc.hMax Kellermann2009-01-011-2/+2
| | | | Use GLib's G_GNUC_UNUSED instead of gcc.h's mpd_unused.
* ao: use 16 bit sample formatMax Kellermann2008-12-091-0/+6
| | | | | | | | There have been bug reports on MPD regarding 24 bit output via libao/esd. The "ao" plugin does not attempt fall back to 16 bit currently, and thus fails to play 24 bit audio (i.e. all mp3 files). Make it always use 16 bit samples for now, until more bits are well-tested.
* ao: print error message when ao_open_live() failsMax Kellermann2008-11-251-1/+3
| | | | | When ao_open_live() failed, MPD would ignore the error code in "errno". Make it print a meaningful error message.
* ao: support all libao error codesMax Kellermann2008-11-251-9/+29
| | | | | | The function audioOutputAo_error() did not implement all possible libao error codes. Support the rest of them, and fall back to strerror().
* ao: use GLib instead of utils.h/log.hMax Kellermann2008-11-251-19/+21
|
* output: close device on play errorMax Kellermann2008-10-291-1/+0
| | | | | When an output plugin fails to play a chunk, close it. This replaces various manual close() calls in nearly all plugins.
* output: use bool for return values and flagsMax Kellermann2008-10-291-8/+9
| | | | | Don't return 0/-1 on success/error, but true/false. Instead of int, use bool for storing flags.
* output: don't compile plugins which are disabledMax Kellermann2008-10-261-8/+0
| | | | Don't compile the sources of disabled output plugins at all.
* renamed src/audioOutputs/ to src/output/Max Kellermann2008-10-261-0/+253
Again, no CamelCase in the directory name.