aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Tag subtracks according to "cuesheet" vorbis comment valueJochen Keil2009-03-311-4/+32
| | | | | | | Cuesheets are often saved as vorbis comment flac files (CUESHEET=.. case doesn't matter). We can parse this now and use the information to tag the subtracks (from the embedded cuesheets).
* track length is computed correctly nowJochen Keil2009-03-311-2/+1
|
* free previously allocated flac metadata objectJochen Keil2009-03-311-0/+1
|
* remove old commented codeJochen Keil2009-03-311-8/+0
|
* Configure/Make dependencies for cue/cue_tag.h/.cJochen Keil2009-03-312-3/+29
| | | | | | | 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.
* Build tags from information in cue sheetsJochen Keil2009-03-312-0/+296
| | | | | | | | With these methods a tag struct can be created from the cdtext information in a cue sheet. The methods depend on a cue parsing library. Reading from strings (char*) as well as from a file (FILE*) is supported.
* do not consider single mode with "next" commandRomain Bignon2009-03-311-0/+7
| | | | | | This is a little ugly, but as nextSongInPlaylist is both called when queued is update (in case playlist ended) and for user "next" command, there isn't any other (simple) solution
* exconf: Fix spacingAvuton Olrich2009-03-301-0/+3
|
* client: group static function declarations together.Avuton Olrich2009-03-301-6/+5
|
* queue_print: queue_print_song_info() is not necessry for export.Avuton Olrich2009-03-302-13/+9
|
* queue: queue_generate_id() is not necessary for export.Avuton Olrich2009-03-302-7/+4
|
* player_control: remove unused function playerCurrentDecodeSong().Avuton Olrich2009-03-302-10/+0
|
* conf: config_param_free() not necessary for export.Avuton Olrich2009-03-302-3/+1
|
* command: command_error() is not necessary for export.Avuton Olrich2009-03-302-4/+1
|
* client: client_write() does not necessary for export.Avuton Olrich2009-03-302-6/+4
|
* implemented the 'consume' modeRomain Bignon2009-03-308-15/+103
| | | | Consume mode removes each song played
* configure.ac: fix error on disabled featuresMax Kellermann2009-03-291-1/+1
| | | | | In the MPD_AUTO_DISABLED() function, I forgot to check for "explicitly disabled".
* exconf: update mixer documentation.Avuton Olrich2009-03-291-7/+12
|
* exconf: The usual defaults updates.Avuton Olrich2009-03-291-60/+65
| | | | | Ths usual defaults updates, this includes clarifications, cleanups, updates and fixes.
* exconf: Comment formerly required files.Avuton Olrich2009-03-291-4/+4
|
* exconf: Merge required files with optional.Avuton Olrich2009-03-291-5/+1
|
* configure.ac: use more MPD_AUTO_PKG()Max Kellermann2009-03-281-86/+83
|
* configure.ac: added M4 function MPD_AUTO_PKG() for ALSAMax Kellermann2009-03-282-6/+12
| | | | | MPD_AUTO_PKG() runs pkg-config and then forwards control to MPD_AUTO_RESULT(). This is a commonly used short cut.
* Makefile.am: use PULSE_CFLAGS and PULSE_LIBSMax Kellermann2009-03-282-4/+4
| | | | Don't add those to MPD_CFLAGS and MPD_LIBS.
* Makefile.am: use JACK_CFLAGS and JACK_LIBSMax Kellermann2009-03-282-5/+4
| | | | Don't add those to MPD_CFLAGS and MPD_LIBS.
* Makefile.am: use SAMPLERATE_CFLAGS and SAMPLERATE_LIBSMax Kellermann2009-03-282-4/+9
| | | | Don't add those to MPD_CFLAGS and MPD_LIBS.
* configure.ac: removed debug lineMax Kellermann2009-03-281-1/+0
|
* configure.ac: fail when ALSA is enabled but not foundMax Kellermann2009-03-282-4/+49
| | | | | | | | | This patch adds a small autoconf M4 library which deals with auto-detected features. The default for those features is "auto", which is like the old default: if the library is present on the system, enable the feature, disable otherwise. If the user explicitly enables that feature (--enable-alsa), and the library is not present, configure must fail, because it cannot fulfill the request.
* Bugfix for time/offset in flac pluginJochen Keil2009-03-281-3/+3
| | | | | | Previous cast to float didn't have any effect because one value is uint and the other is a floating type but the number itself is even.. This caused some tracks to end before they were really at an end.
* mixer: assert that the new volume value is validMax Kellermann2009-03-273-7/+2
| | | | | Added an assertion in mixer_set_volume(). Removed the range checks from the ALSA and OSS plugins.
* mpcdec: changed plugin name to "mpcdec"Max Kellermann2009-03-271-3/+3
| | | | The "mpcdec" plugin is based on the libmpcdec library.
* mpcdec: support the new libmpcdec SV8 APIMax Kellermann2009-03-273-15/+100
|
* mpcdec: no CamelCaseMax Kellermann2009-03-271-57/+65
| | | | Renamed variables and functions.
* tag_pool: use memcmp() instead of strcmp() for non-terminated stringMax Kellermann2009-03-271-1/+3
| | | | | | The strings passed to tag_pool_get_item() are not null-terminated, and the caller passes the string length. Don't assume it is null-terminated anyway by using strcmp().
* tag_pool: use size_t for string lengthMax Kellermann2009-03-272-4/+4
|
* configure.ac: require GLib 2.6Max Kellermann2009-03-271-2/+2
| | | | | | We're using GLib macros which were introduced in GLib 2.6, like G_GNUC_MALLOC. Let's just drop support for GLib versions older than 2.6 instead of adding more complicated compatibility hacks.
* event_pipe can only be non-blocking if !WIN32Sean McNamara2009-03-271-0/+2
|
* More debugging for Win32 ioctlsocket: complain if it's not a WinsockSean McNamara2009-03-271-3/+12
| | | | socket, because there is no ioctl for non-sockets on Windows
* Add winsock2 headers for curl's use of select() on socketsSean McNamara2009-03-271-1/+7
|
* Uniform getaddrinfo() on WIN32 or POSIX, because MinGW now supports itSean McNamara2009-03-271-23/+0
|
* Winsock2 is needed on MinGW (or other pure Win32 toolchains) forSean McNamara2009-03-271-0/+36
| | | | networking, select(), ntohl(), etc.
* sticker: move SQLite statements into an arrayMax Kellermann2009-03-271-70/+75
| | | | Simplify initialization and finalization.
* pulse_mixer: protect the struct with a mutexMax Kellermann2009-03-271-1/+29
| | | | | | There are numerous race conditions between the libpulse thread (pulse_mixer.c callbacks) and the rest of MPD. Protect the volatile attributes of the pulse_mixer struct with a mutex to fix that.
* pulse_mixer: return if mixer is offlineMax Kellermann2009-03-271-29/+27
| | | | | Eliminate one indent level. Also remove several debug useless debug messages.
* pulse_mixer: removed superfluous G_GNUC_UNUSED attributesMax Kellermann2009-03-271-4/+4
| | | | Those parameters are used after all.
* pulse_mixer: use local pa_cvolume variable for set_volume()Max Kellermann2009-03-271-2/+3
| | | | | | Don't mess with pulse_mixer.volume for setting the volume. This variable should only be used to transfer the current volume from sink_input_vol() to pulse_mixer_get_volume().
* pulse_mixer: wait for get_volume() operation to completeMax Kellermann2009-03-271-1/+34
| | | | | | | | | | The pa_context_get_sink_input_info() function is asynchronous, and after it returns, libpulse does not guarantee that the operation has completed yet; in fact, it is not likely. Explicitly wait for the operation to complete. The code for the new pulse_wait_for_operation() function was inspired by mplayer and xine code.
* mixer_control: don't lock the mutex twice in mixer_failed()Max Kellermann2009-03-271-5/+14
| | | | | | The function mixer_failed() expects the mixer mutex to be already locked, yet it calls mixer_close(), which attempts to lock the mutex again, deadlocking itself.
* renamed smartstop to single and changed behaviorRomain Bignon2009-03-278-34/+49
| | | | | When single mode is enabled, after current song it stops playback, or it replay same song if repeat mode is activated.
* implements the smartstop featureRomain Bignon2009-03-278-2/+87
| | | | | | | | | The smartstop feature is a way to tell mpd to stop playing after current song. This patche provides: - 'state' command returns 'smartstop' state (1 or 0) - 'smartstop' can activate or not the smartstop state - when song is terminated, mpd stops playing and smartstop is set to 0