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
e710037760
output_init: added option to disable the hardware mixer
...
Added the per-device option "mixer_enabled" which allows users to
disable the hardware mixer of an audio output.
2009-04-28 20:33:06 +02:00
Max Kellermann
61b0835512
command: added "sticker delete" command
2009-04-28 20:25:07 +02:00
Max Kellermann
610940a06d
sticker: added sticker_delete_value()
...
sticker_delete_value() deletes only one value in a sticker, while
the old function sticker_delete() deletes all values.
2009-04-28 20:23:27 +02:00
Max Kellermann
7d9316a52d
song_save: don't call tag_free(NULL)
...
When a song was in the database twice (which shouldn't happen), and
the first song had no tag items, MPD calledd tag_free(NULL). Add a
check to that source location, and an assertion to tag_free().
2009-04-28 19:57:49 +02:00
Daniel Kahn Gillmor
fd09a3cf1f
clean up documentation of mixer options.
2009-04-28 17:21:26 +02:00
Max Kellermann
fd81e7e3b6
libsamplerate: use g_ascii_strncasecmp() instead of strncasecmp()
...
strncasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:42:05 +02:00
Max Kellermann
3db834f6b3
command: use g_ascii_strcasecmp() instead of strcasecmp()
...
strcasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:34:03 +02:00
Max Kellermann
b546cf65bc
utils: use g_ascii_strcasecmp() instead of strcasecmp()
...
strcasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:33:44 +02:00
Max Kellermann
d3c93c1c77
tag: use g_ascii_strcasecmp() instead of strcasecmp()
...
strcasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:32:38 +02:00
Max Kellermann
b2924405ae
conf: use g_ascii_strcasecmp() instead of strcasecmp()
...
strcasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:32:09 +02:00
Max Kellermann
b1c177528f
locate: use g_ascii_strcasecmp() instead of strcasecmp()
...
strcasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:31:44 +02:00
Max Kellermann
0edfbc8a5f
input_curl: use g_ascii_strcasecmp() instead of strcasecmp()
...
strcasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:30:12 +02:00
Max Kellermann
c434379d79
mad_decoder: use g_ascii_strcasecmp() instead of strcasecmp()
...
strcasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:29:39 +02:00
Max Kellermann
d5b3dd36fd
mp4ff_decoder: use g_ascii_strcasecmp() instead of strcasecmp()
...
strcasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:29:11 +02:00
Max Kellermann
9038882d95
alsa_mixer: use g_ascii_strcasecmp() instead of strcasecmp()
...
strcasecmp() is locale dependent, making it a bad choice for internal
string comparisons.
2009-04-28 09:28:16 +02:00
Daniel Kahn Gillmor
05dfdfdb39
alsa_mixer: add mixer_index option
...
This allows you to select controls with duplicate names.
2009-04-28 09:15:48 +02: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
f4966ba42c
decoder_api: removed dc.pipe assertion from decoder_read()
...
Database update was broken due to the dc.pipe!=NULL assertion. This
assertion is only valid while MPD decodes a song, not during database
update.
2009-04-26 10:57:02 +02:00
Max Kellermann
ecb7f24b01
vorbis_encoder: reinitialize vorbis_dsp_state after flush
...
libvorbis goes into a very long loop if we try to add data after a
flush was invoked by vorbis_analysis_wrote(0). This seems to be a
problem with the internal end-of-stream marker. Thus, we cannot reuse
the vorbis_dsp_state object.
2009-04-25 18:27:39 +02:00
Max Kellermann
3888ef2f55
decoder_control: properly cancel an existing command in dc_stop()
...
When the decoder thread has a pending command, send the STOP command
to cancel this command. Send STOP again if the decoder thread is
still running after that, just in case the decoder thread has executed
the previous command (which was overwritten).
2009-04-25 15:19:01 +02:00
Max Kellermann
ceb00f787e
decoder: added assertions on dc.pipe
...
dc.pipe must be non-NULL while the decoder thread is running. Ensure
that with a load of assertions.
2009-04-25 15:07:22 +02:00
Max Kellermann
d01d1ccad2
client: use GTimer to track timeouts
2009-04-25 14:16:24 +02:00
Max Kellermann
616dc9d465
playlist_control: use GTimer in previousSongInPlaylist()
...
To determine whether to rewind the current song or to go to the
previous song, use a GTimer instead of manually diffing time(NULL).
2009-04-25 14:08:31 +02:00
Max Kellermann
d2010c0289
pulse_mixer: use PULSE's mainloop lock instead of GMutex
...
Using two different kinds of locks may result in a race condition with
a deadlock. The libpulse callbacks need no locks at all, because the
mainloop object can be assumed to be already locked.
2009-04-25 13:53:15 +02:00
Max Kellermann
11bcd7f013
curl: moved proxy settings to "input" block
...
The old global settings "http_proxy_host", "http_proxy_port",
"http_proxy_user" and "http_proxy_password" continue to work.
2009-04-25 13:35:04 +02:00
Max Kellermann
bd014483c2
doc: added input plugin documentation
2009-04-25 13:22:09 +02:00
Max Kellermann
8b5d6d17ff
doc: added decoder documentation
2009-04-25 13:21:45 +02:00
Max Kellermann
de95caa346
doc: added more audio output documentation
2009-04-25 13:21:36 +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
6593bb41af
INSTALL: added libcue dependency
2009-04-25 12:32:50 +02:00
Max Kellermann
80de8fb93b
fluidsynth: added "experimental" comments in the source file
2009-04-25 12:32:22 +02:00
Max Kellermann
472b994779
player_thread: pause when all audio outputs fail to play
...
When all audio outputs have been closed due to failures, pause the
playback instead of stopping it. This way, the user may resume
at the current position after the problem has been dealt with.
2009-04-25 11:55:36 +02:00
Max Kellermann
70faf59275
player_thread: pause when output fails while seeking
...
When no audio outputs could be opened while seeking, leave MPD seeked
at that position and pause playback. The user may continue from this
point at any time, as soon as the audio outputs are fixed. The old
behaviour triggered an assertion failure: the failure wasn't passed
properly to the do_play() function, which attempted to play audio
chunks.
2009-04-25 11:36:45 +02:00
Max Kellermann
5ce625ea97
stored_playlist: don't close NULL file on error
...
spl_append_song() can crash when fopen() fails, because it attempts to
close the invalid file handle (NULL) in the error handler.
2009-04-24 08:57:01 +02:00
Max Kellermann
85658965c9
alsa_output: don't use atexit() to clean up the ALSA library
...
Call snd_config_update_free_global() manually in our finish() method,
don't use atexit().
2009-04-21 22:47:12 +02:00
Max Kellermann
eb059a789c
alsa_mixer: call snd_config_update_free_global() in finish()
...
snd_config_update_free_global() frees cached ALSA configuration. This
keeps valgrind a little bit more quiet. This patch moves the call
from the open() method into the finish() method, which seems more
natural: it allows the use of the config cache, and improves the
cleanup phase.
2009-04-21 22:47:08 +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
c7c809ecba
output_control: close mixer on pause
...
For non-global mixers (only "pulse" currently), close the mixer when
MPD playback is paused.
2009-04-21 22:17:52 +02:00
Max Kellermann
c9c0415d65
client: free the fifo buffer
...
This patch fixes a memory leak: the fifo_buffer object was not freed
when the client connection was closed.
2009-04-17 11:37:27 +02:00
Max Kellermann
9db7c13ef5
configure.ac: check for C++ detection failure
...
When no C++ compiler is found, let CXX fall back to $CC, and disable
all features which require C++.
2009-04-15 22:29:16 +02:00
Max Kellermann
c13cecc0ae
configure.ac: automatically detect the sidplay decoder
...
Set sidplay to "auto" by default, and enable it when it's found.
2009-04-15 22:24:59 +02:00
Max Kellermann
6e6917ac4e
configure.ac: added a real check for libsidplay2
...
We still can't use the pkg-config file because it requires libtool.
2009-04-15 22:24:19 +02:00
Max Kellermann
60f5150d2b
configure.ac: moved the sidplay check to its argument
...
Checks for features should be right next to its argument definition.
2009-04-15 22:23:50 +02:00
Max Kellermann
d23a23db10
configure.ac: added function MPD_AUTO_PRE
...
This function checks whether a prerequisite for a feature was found.
2009-04-15 22:23:46 +02:00
Max Kellermann
a6ed888f9f
configure.ac: print feature name in error message
...
When MPD_AUTO_DISABLED prints a fatal error message, include the
feature name. This might be an important piece of information for the
user, just in case the preceding line doesn't tell him.
2009-04-15 21:57:12 +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
Max Kellermann
c824013e94
configure.ac: fail when bzip2 plugin is enabled but not found
2009-04-13 20:39:51 +02:00
Max Kellermann
2cbda895fb
icy_server: don't export icy_server_metadata_string()
...
icy_server_metadata_string() is only called by
icy_server_metadata_page().
2009-04-13 19:39:33 +02:00