- 14 Mar, 2009 2 commits
-
-
Max Kellermann authored
This patch allows the output plugins to import only mixer_list.h, instead of the full mixer_api.h (which would expose internal structures).
-
Max Kellermann authored
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).
-
- 13 Mar, 2009 1 commit
-
-
Avuton Olrich authored
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.
-
- 07 Mar, 2009 1 commit
-
-
David Guibert authored
This patch introduces the mixer for the pulse output. Technically speaking, the pulse index is needed to get or set the volume. You must define callback fonctions to get this index since the pulse output in mpd is done using the simpe api. The pulse simple api does not provide the index of the newly defined output. So callback fonctions are associated to the pulse context. The list of all the sink input is then retreived. Then we select the name of the mpd pulse output and control its volume by its associated index number. Signed-off-by:
Patrice Linel <patnathanael@gmail.com> Signed-off-by:
David Guibert <david.guibert@gmail.com> [mk: fixed whitespace errors and broke long lines; removed daemonization changes from main.c]
-
- 01 Mar, 2009 1 commit
-
-
Max Kellermann authored
The MPD core logs the audio format of all audio outputs. Remove the duplicate message from the plugins.
-
- 26 Feb, 2009 2 commits
-
-
Max Kellermann authored
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.
-
Max Kellermann authored
The MPD core guarantees that the audio_output object is always consistent, and our pa_simple!=NULL checks are superfluous. Also don't manually close the device on error in pulse_play(), since the MPD core does this automatically when the play() method returns 0.
-
- 25 Feb, 2009 2 commits
-
-
Max Kellermann authored
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.
-
Max Kellermann authored
Use config_get_block_string("name") instead of audio_output_get_name().
-
- 23 Feb, 2009 2 commits
-
-
Max Kellermann authored
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.
-
Max Kellermann authored
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.
-
- 25 Jan, 2009 1 commit
-
-
Max Kellermann authored
All config_get_block_*() functions should accept constant config_param pointers.
-
- 18 Jan, 2009 1 commit
-
-
Max Kellermann authored
This replaces lots of getBlockParam() invocations.
-
- 17 Jan, 2009 1 commit
-
-
Max Kellermann authored
Renamed functions, types, variables.
-
- 01 Jan, 2009 1 commit
-
-
Max Kellermann authored
Use GLib's G_GNUC_UNUSED instead of gcc.h's mpd_unused.
-
- 05 Nov, 2008 2 commits
-
-
Max Kellermann authored
The output thread automatically waits some time before retrying to open the device. Don't duplicate this check in the pulse plugin.
-
Max Kellermann authored
The pulse plugin crashed with a segmentation fault when the pulse server was killed.
-
- 30 Oct, 2008 1 commit
-
-
Max Kellermann authored
Commit d692e9 broke configurations without explicit server or sink configuration. Check for getBlockParam()==NULL.
-
- 29 Oct, 2008 4 commits
-
-
Max Kellermann authored
Don't return 0/-1 on success/error, but true/false. Instead of int, use bool for storing flags.
-
Max Kellermann authored
The pointer becomes invalid due to pa_simple_free(), which may lead to segmentation faults when the output is reopened later.
-
Max Kellermann authored
Use GLib allocation and logging functions.
-
Max Kellermann authored
-
- 26 Oct, 2008 2 commits
-
-
Max Kellermann authored
Don't compile the sources of disabled output plugins at all.
-
Max Kellermann authored
Again, no CamelCase in the directory name.
-
- 25 Oct, 2008 1 commit
-
-
Max Kellermann authored
PA_SAMPLE_S16NE is the only sample format which is suported by both MPD and pulseaudio. Unfortunately, pulse does not accept 24 bit samples. Instead of bailing out with an error message, we should tell the MPD core to convert all samples to 16 bit for pulse.
-
- 10 Oct, 2008 1 commit
-
-
Max Kellermann authored
The last bit of CamelCase in audio_format.h. Additionally, rename a bunch of local variables.
-
- 29 Sep, 2008 1 commit
-
-
Max Kellermann authored
The old struct initializers are error prone and don't allow moving elements around. Since we are going to overhaul some of the APIs soon, it's easier to have all implementations use C99 initializers.
-
- 24 Sep, 2008 3 commits
-
-
Max Kellermann authored
We have eliminated direct accesses to the audio_output struct from the all output plugins. Make it opaque for them, and move its real declaration to output_internal.h, similar to decoder_internal.h. Pass the opaque structure to plugin.init() only, which will return the plugin's data pointer on success, and NULL on failure. This data pointer will be passed to all other methods instead of the audio_output struct.
-
Max Kellermann authored
Since the output plugin returns a value indicating success or error, we can have the output core code assign the "open" flag.
-
Max Kellermann authored
Pass the globally configured audio_format as a const pointer to plugin.init(). plugin.open() gets a writable pointer which contains the audio_format requested by the plugin. Its initial value is either the configured audio_format or the input file's audio_format.
-
- 08 Sep, 2008 1 commit
-
-
Max Kellermann authored
Since the plugin struct is never modified, we should store it in constant locations.
-
- 07 Sep, 2008 3 commits
-
-
Max Kellermann authored
Also rename AudioOutputPlugin to struct audio_output_plugin, and use forward declarations to reduce include dependencies.
-
Max Kellermann authored
Just like decoder_api.h, output_api.h provides the audio output API which is used by the plugins.
-
Max Kellermann authored
Get rid of CamelCase, and don't use a typedef, so we can forward-declare it, and unclutter the include dependencies.
-
- 12 Apr, 2008 1 commit
-
-
Max Kellermann authored
The audio output plugins should get a constant pointer, because they must not modify the buffer. Since the size is a non-negative buffer size in bytes, we should change its type to size_t. git-svn-id: https://svn.musicpd.org/mpd/trunk@7293 09075e82-0dd4-0310-85a5-a0d7c8717e4f
-
- 03 Jan, 2008 1 commit
-
-
Eric Wong authored
This will make refactoring features easier, especially now that pthreads support and larger refactorings are on the horizon. Hopefully, this will make porting to other platforms (even non-UNIX-like ones for masochists) easier, too. os_compat.h will house all the #includes for system headers considered to be the "core" of MPD. Headers for optional features will be left to individual source files. git-svn-id: https://svn.musicpd.org/mpd/trunk@7130 09075e82-0dd4-0310-85a5-a0d7c8717e4f
-
- 05 Apr, 2007 1 commit
-
-
Avuton Olrich authored
git-svn-id: https://svn.musicpd.org/mpd/trunk@5834 09075e82-0dd4-0310-85a5-a0d7c8717e4f
-
- 26 Aug, 2006 1 commit
-
-
Eric Wong authored
I'm checking for zero-size allocations and assert()-ing them, so we can more easily get backtraces and debug problems, but we'll also allow -DNDEBUG people to live on the edge if they wish. We do not rely on errno when checking for OOM errors because some implementations of malloc do not set it, and malloc is commonly overridden by userspace wrappers. I've spent some time looking through the source and didn't find any obvious places where we would explicitly allocate 0 bytes, so we shouldn't trip any of those assertions. We also avoid allocating zero bytes because C libraries don't handle this consistently (some return NULL, some not); and it's dangerous either way. git-svn-id: https://svn.musicpd.org/mpd/trunk@4690 09075e82-0dd4-0310-85a5-a0d7c8717e4f
-
- 08 Aug, 2006 1 commit
-
-
Eric Wong authored
git-svn-id: https://svn.musicpd.org/mpd/trunk@4599 09075e82-0dd4-0310-85a5-a0d7c8717e4f
-
- 20 Jul, 2006 1 commit
-
-
J. Alexander Treuman authored
git-svn-id: https://svn.musicpd.org/mpd/trunk@4412 09075e82-0dd4-0310-85a5-a0d7c8717e4f
-