| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
Do all the software volume stuff inside each output thread, not in the
player thread. This allows one software mixer per output device, and
also allows the user to configure the mixer type (hardware or
software) for each audio output.
This moves the global "mixer_type" setting into the "audio_output"
section, deprecating the "mixer_enabled" flag.
|
|
|
|
|
|
|
| |
This mixer plugin may be used instead of the traditional global
software mixer. It integrates with the "volume" filter plugin, and
can control the software volume of an audio output which has no
hardware mixer.
|
|
|
|
|
|
|
|
| |
This patch adds initial filter support for audio outputs. Each audio
output gets a "filter" attribute, which is used by ao_play_chunk().
The PCM conversion is now performed by convert_filter_plugin.
audio_output.convert_state has been removed.
|
| |
|
| |
|
| |
|
|
|
|
| |
Added public methods to get and set the current volume.
|
|
|
|
| |
This program runs filter plugins in an isolated environment.
|
|
|
|
|
|
|
|
|
|
| |
The "volume" filter plugin will replace the current software volume
code. One "volume" filter may be attached to each output device.
This will allow the user to use hardware mixers for some devices, and
software mixers for other devices at the same time.
Currently, neither the filter API nor the "volume" plugin is
integrated into MPD.
|
|
|
|
|
| |
The filter API allows us to implement software volume as a pluggable
filter, and we will be able to integrate libraries like SoX.
|
|
|
|
|
| |
Refuse to build with automake 1.9. 1.9 is quite old already, and I'm
too lazy to test with ancient versions.
|
|
|
|
| |
Just a start...
|
|
|
|
|
| |
The old sticker.xml used elements which are not valid in DocBook. Now
that the file is valid, let's add it to $(DOCBOOK_FILES).
|
| |
|
|
|
|
| |
Don't loop over source files, do all checks in one run.
|
| |
|
|
|
|
|
| |
Remove mpd.spec and makerpm.sh. It was never used or maintained
and the distributors take care of this kinda thing now anyhow.
|
|
|
|
|
| |
The doxygen invocation was misplaced: it was only defined when xmlto
is available.
|
|
|
|
|
| |
$(TAG_SRC) contains the names of all tag reader source files. Some of
these are required for test/run_decoder.
|
|
|
|
|
|
| |
This little program is used to test mixer plugins in an isolated
environment. This is ALSA-only currently, because we don't have a
real "plugin list" yet, and I'm too lazy to implement a switch.
|
|
|
|
| |
Fail if the iso9660 plugin is enabled but not found.
|
|
|
|
| |
Fail if the zzip plugin is enabled but not found.
|
|
|
|
|
|
| |
[mk: folded with patch "Put icy related functions in extra source
files"; moved icy_server.c from HAVE_CURL to ENABLE_HTTPD_OUTPUT;
removed an unused variable]
|
| |
|
|
|
|
|
| |
Most of that was already implemented, and for other feature requests,
we have the bug tracker.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Don't append those two CFLAGS/LIBS in configure.ac.
|
|
|
|
|
| |
Don't append LAME_CFLAGS/LAME_LIBS to MPD_CFLAGS/MPD_LIBS in
configure.ac. Export them via AC_SUBST() instead.
|
| |
|
|
|
|
|
|
|
| |
Autoconf/automake support for libcue which
is needed for cue/cue_tag.h/.c.
Libcue will have/has pkg-config support
so this is fairly straightforward.
|
|
|
|
| |
Don't add those to MPD_CFLAGS and MPD_LIBS.
|
|
|
|
| |
Don't add those to MPD_CFLAGS and MPD_LIBS.
|
|
|
|
| |
Don't add those to MPD_CFLAGS and MPD_LIBS.
|
| |
|
| |
|
|
|
|
| |
Copy all tags know to MPD to the vorbis_comment.
|
|
|
|
|
| |
This "upload" target uploads generated documentation to
http://www.musicpd.org/doc/, and works only for my user account.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Let's get rid of the "shout" plugin, and the awfully complicated
icecast daemon setup! MPD can do better if it's doing the HTTP server
stuff on its own. This new plugin has several advantages:
- easier to set up - only one daemon, no password settings, no mount
settings
- MPD controls the encoder and thus already knows the packet
boundaries - icecast has to parse them
- MPD doesn't bother to encode data while nobody is listening
This implementation is very experimental (no header parsing, ignores
request URI, no icy-metadata, ...). It should be able to suport
several encoders in parallel in the future (with different bit rates,
different codec, ...), to make MPD the perfect streaming server. Once
MPD gets multi-player support, we can even mount several different
radio stations on one server.
|
| |
|
|
|
|
|
|
| |
It is a library which I have written years ago for other projects.
This library is licensed under BSD 2-clause, because it is very
generic.
|
|
|
|
|
|
|
|
|
| |
Even if libsamplerate support is enabled, compile the fallback
resampler. When the user specifies the option
"samplerate_converter=internal", it is chosen in favor of
libsamplerate. This may help users with a weak FPU who don't want to
compile a custom MPD from source, because the fallback resampler does
not use floating point operations.
|
|
|
|
|
|
| |
Added diversion functions to pcm_resample.c. These check which
resampler is enabled at compile time (libsamplerate or fallback).
This prepares the following patch.
|
|
|
|
| |
sparse cannot deal with C++.
|
|
|
|
|
| |
sparse complains that a lot of limit.h macros are missing. Define
them to keep sparse quiet.
|
|
|
|
|
|
| |
This patch allows the output plugins to import only mixer_list.h,
instead of the full mixer_api.h (which would expose internal
structures).
|
|
|
|
|
|
| |
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).
|
| |
|