Max Kellermann
4a0d4a02a6
output/recorder: new output plugin for recording radio streams
...
The recorder plugin writes audio played by MPD to a file. This may be
useful for recording radio streams.
This implementation is incomplete, because support for tags is
missing, and MPD should be able to record each track to a different
file.
2009-08-24 18:57:06 +02:00
Max Kellermann
f78366910e
client: splitted client.c into several pieces
...
The soure file client.c has nearly 1000 lines, time for splitting it
into smaller pieces to improve readability.
2009-07-28 17:17:23 +02:00
Max Kellermann
c426bbcf95
client: moved struct client to client_internal.h
...
Prepare splitting client.c into several sources.
2009-07-28 16:42:40 +02:00
Max Kellermann
9322f04529
cmdline: obey $(sysconfdir) for default mpd.conf location
...
Instead of hard-coding the path "/etc/mpd.conf", use the configured
$(sysconfdir) path. This can be set with:
./configure --sysconfdir=/etc
Note that this changes the default path to "/usr/local/etc/mpd.conf",
given the default prefix "/usr/local". This is actually more correct
than the old default.
2009-07-28 16:17:18 +02:00
Max Kellermann
c9d43b4d71
Merge branch 'master' of git://git.infradead.org/users/dwmw2/mpd
...
Conflicts:
Makefile.am
2009-07-19 18:18:32 +02:00
David Woodhouse
05693e2d5d
Add reverse_endian field to struct audio_format and handle conversion
2009-07-19 17:15:21 +01:00
Max Kellermann
b58aa1f5ee
removed buffer2array.c
2009-07-19 15:15:41 +02:00
Max Kellermann
16ff44ad30
conf: use the tokenizer library
2009-07-19 15:11:37 +02:00
Max Kellermann
1745e68795
tokenizer: new library replacing buffer2array()
...
The new code is more robust and more flexible. It provides detailed
error information in GError objects.
2009-07-19 15:11:36 +02:00
Max Kellermann
6233de0546
encoder/twolame: new encoder plugin based on libtwolame
...
This encoder plugin is a replacement for the LAME encoder plugin for
those who prefer a "free" (non-patent encumbered) encoder library.
Most of the plugin source code is copied from the LAME encoder plugin,
since the LAME and TwoLAME APIs are nearly the same.
2009-07-14 23:07:41 +02:00
Max Kellermann
a620e936cc
Makefile.am: use WAVPACK_CFLAGS and WAVPACK_LIBS
...
Don't append these to MPD_CFLAGS and MPD_LIBS.
2009-07-14 21:29:01 +02:00
Max Kellermann
1eebbc746f
decoder/sndfile: new decoder plugin based on libsndfile
2009-07-07 08:58:51 +02:00
Max Kellermann
971fbe5d8e
Makefile.am: disable test/run_encoder without plugins
...
If the encoder plugin API is disabled at compile time, don't compile
test/run_encoder.c.
2009-07-06 22:50:07 +02:00
Max Kellermann
0275690b5c
output: use the software mixer plugin
...
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.
2009-07-06 22:00:50 +02:00
Max Kellermann
5d74b1efef
mixer/software: new mixer which controls filter/volume
...
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.
2009-07-06 21:52:15 +02:00
Max Kellermann
e47bdfe8e6
output: attach a filter chain to each audio_output
...
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.
2009-07-06 10:01:47 +02:00
Max Kellermann
cd9c0a6b3e
filter/convert: new filter which calls pcm_convert() on demand
2009-07-06 10:01:02 +02:00
Max Kellermann
c372c3756b
filter/chain: new library for creating a chain of filters
2009-07-06 10:01:02 +02:00
Max Kellermann
89d4f438c0
mixer_type: moved volume_mixer_type from volume.c
2009-07-06 07:37:37 +02:00
Max Kellermann
86e279f886
filter/volume: don't use volume_level_get()
...
Added public methods to get and set the current volume.
2009-07-05 16:31:47 +02:00
Max Kellermann
12e82b9e33
test: added program "run_filter"
...
This program runs filter plugins in an isolated environment.
2009-07-05 06:54:48 +02:00
Max Kellermann
e3c436f411
filter: added "volume" plugin
...
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.
2009-07-03 01:06:17 +02:00
Max Kellermann
48f3e13bec
filter: added new plugin API for filters
...
The filter API allows us to implement software volume as a pluggable
filter, and we will be able to integrate libraries like SoX.
2009-07-03 01:02:53 +02:00
Max Kellermann
5b78b46a30
Makefile.am: require automake 1.10
...
Refuse to build with automake 1.9. 1.9 is quite old already, and I'm
too lazy to test with ancient versions.
2009-06-25 11:52:55 +02:00
Max Kellermann
3483c891dc
doc: added Developer's Manual
...
Just a start...
2009-06-02 21:09:45 +02:00
Max Kellermann
1d0be2a031
doc: fixed DocBook markup in doc/sticker.xml
...
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).
2009-05-15 18:54:50 +02:00
Max Kellermann
46e0b49e71
Makefile.am: added doc/doxygen.conf to $(EXTRA_DIST)
2009-05-15 18:43:22 +02:00
Max Kellermann
e6ea7ffdcb
Makefile.am: run sparse once with all sources
...
Don't loop over source files, do all checks in one run.
2009-05-04 09:43:05 +02:00
Max Kellermann
2c7508f72c
Makefile.am: ship DocBook sources even when documentation is disabled
2009-04-30 11:43:19 +02:00
Avuton Olrich
6dde36d683
scripts: Remove mpd.spec, it was always half-baked.
...
Remove mpd.spec and makerpm.sh. It was never used or maintained
and the distributors take care of this kinda thing now anyhow.
2009-04-29 02:43:04 -07:00
Max Kellermann
70d322b296
Makefile.am: moved doxygen invocation out of HAVE_XMLTO
...
The doxygen invocation was misplaced: it was only defined when xmlto
is available.
2009-04-26 20:02:53 +02:00
Max Kellermann
eea2866190
Makefile.am: moved source files to $(TAG_SRC)
...
$(TAG_SRC) contains the names of all tag reader source files. Some of
these are required for test/run_decoder.
2009-04-25 13:21:28 +02:00
Max Kellermann
63710ff5a6
test: added program "read_mixer"
...
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.
2009-04-21 22:46:41 +02:00
Max Kellermann
e1f0c5347c
configure.ac: detect libiso9660 with pkg-config
...
Fail if the iso9660 plugin is enabled but not found.
2009-04-13 20:47:28 +02:00
Max Kellermann
e216e01ab3
configure.ac: detect libzzip with pkg-config
...
Fail if the zzip plugin is enabled but not found.
2009-04-13 20:46:31 +02:00
Hagen Schink
92ba754fc6
Implemented basic icy support for the httpd output
...
[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]
2009-04-13 19:35:02 +02:00
Max Kellermann
99a88988d5
test: added run_input test program
2009-04-13 19:18:10 +02:00
Max Kellermann
e18d67338b
removed TODO file
...
Most of that was already implemented, and for other feature requests,
we have the bug tracker.
2009-04-10 09:14:25 +02:00
Max Kellermann
e823e78d0f
test: added configuration file reader
2009-04-10 09:14:12 +02:00
Avuton Olrich
27491c77b9
make: gitignore is not necessary for distribution.
2009-04-02 09:44:59 +02:00
Max Kellermann
a7685780ed
configure.ac: renamed --enable-mod to --enable-mikmod
2009-04-01 22:48:06 +02:00
Max Kellermann
5242305a90
configure.ac: renamed --enable-oggvorbis to --enable-vorbis
2009-04-01 22:45:17 +02:00
Max Kellermann
b914d3f6eb
Makefile.am: use TREMOR_CFLAGS and TREMOR_LIBS
...
Don't append those two CFLAGS/LIBS in configure.ac.
2009-04-01 22:45:00 +02:00
Max Kellermann
b9a5e78780
Makefile.am: use LAME_CFLAGS and LAME_LIBS
...
Don't append LAME_CFLAGS/LAME_LIBS to MPD_CFLAGS/MPD_LIBS in
configure.ac. Export them via AC_SUBST() instead.
2009-04-01 22:05:53 +02:00
Max Kellermann
cb35d6e687
sticker_print: new library for sending stickers to a client
2009-04-01 17:30:56 +02:00
Jochen Keil
192e29107d
Configure/Make dependencies for cue/cue_tag.h/.c
...
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.
2009-03-31 22:17:56 +02:00
Max Kellermann
33aeac4fcb
Makefile.am: use PULSE_CFLAGS and PULSE_LIBS
...
Don't add those to MPD_CFLAGS and MPD_LIBS.
2009-03-28 21:39:26 +01:00
Max Kellermann
5164cc1ff8
Makefile.am: use JACK_CFLAGS and JACK_LIBS
...
Don't add those to MPD_CFLAGS and MPD_LIBS.
2009-03-28 21:38:53 +01:00
Max Kellermann
50c53e4b24
Makefile.am: use SAMPLERATE_CFLAGS and SAMPLERATE_LIBS
...
Don't add those to MPD_CFLAGS and MPD_LIBS.
2009-03-28 21:38:44 +01:00
Viliam Mateicka
71cd24954a
move printAllOutputPluginTypes to output_list.c
2009-03-21 09:45:42 +01:00