aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* player_thread: disable cross-fading in "single" modeMax Kellermann2012-08-254-8/+47
| | | | | | | | | | | | | This commit reimplements the core of the "single" mode. Instead of doing the detection in the playlist code from the outside, it is moved to the player thread, which gets a new option called "border_pause". It will now pause playback exactly at the beginning of the new song, making the feature more reliable. Now that the player thread knows what will happen, it can suppress cross-fading. Fixes mantis tickets 0003055 and 0003166.
* command: make "single" a boolMax Kellermann2012-08-211-1/+1
|
* queue_save: save song prioritiesMax Kellermann2012-08-214-6/+25
|
* playlist_print: fix memory leakMax Kellermann2012-08-161-0/+3
|
* playlist_song: pass const song to _check_load_song()Max Kellermann2012-08-161-1/+1
|
* playlist_song: fix user-after-free bugMax Kellermann2012-08-161-1/+3
|
* player_thread: add local variable "start_ms"Max Kellermann2012-08-151-1/+3
| | | | Just in case "song" becomes invalid at some point.
* playlist: fix unprotected player_control accessMax Kellermann2012-08-151-1/+5
|
* filter/volume: include cleanupMax Kellermann2012-08-152-2/+0
|
* mapper: fix potential crash in file permission checkMax Kellermann2012-08-151-3/+3
|
* decoder/fluidsynth: add "sample_rate" settingMax Kellermann2012-08-151-6/+14
|
* decoder/fluidsynth: add "soundfont" settingMax Kellermann2012-08-151-6/+7
| | | | Replaces the old global "soundfont" which never worked.
* configure.ac: auto-detect libfluidsynthMax Kellermann2012-08-151-9/+0
| | | | | Now that the libfluidsynth API was sanitized, we can enable the plugin automatically if libfluidsynth is installed.
* decoder/fluidsynth: stop playback at end of fileMax Kellermann2012-08-151-5/+4
| | | | Use libfluidsynth's new function fluid_player_get_status().
* decoder/fluidsynth: don't duplicate pathMax Kellermann2012-08-151-6/+1
| | | | The libfluidsynth now accepts const strings.
* decoder/fluidsynth: check if file is really a MIDIMax Kellermann2012-08-151-4/+1
| | | | Use fluid_is_midifile() to verify the file format.
* decoder/fluidsynth: remove throttle (requires libfluidsynth 1.1)Max Kellermann2012-08-151-17/+1
| | | | | The libfluidsynth API is now sane, and does not require real-time decoding.
* log: store duplicated path stringMax Kellermann2012-08-143-31/+32
| | | | | | | Don't free the string right after calling log_init_file(). Add a new function log_deinit() that frees the string on shutdown. This fixes cycling the log file after SIGHUP (Mantis ticket 0003524).
* output/jack: implement method delay()Max Kellermann2012-08-141-4/+11
| | | | Eliminate the g_usleep() call.
* output/pulse: implement method delay()Max Kellermann2012-08-141-7/+21
| | | | Reduce command latency while paused.
* output/pulse: simplify _wait_stream()Max Kellermann2012-08-141-55/+16
| | | | One large loop and only one pa_stream_get_state() call.
* output/httpd: move delay from _pause() to _delay()Max Kellermann2012-08-141-1/+5
|
* output/httpd: fix throttling bug after resuming playbackMax Kellermann2012-08-141-0/+8
| | | | | | Reset the timer when paused and no client is connected. This fixes Mantis ticket 0003527.
* output/httpd: move code to _has_clients()Max Kellermann2012-08-141-11/+27
|
* timer: use monotonic clock if availableMax Kellermann2012-08-143-13/+140
|
* input/ffmpeg: remove fallback AV_VERSION_INT definitionMax Kellermann2012-08-141-4/+1
| | | | This is part of libavutil.
* mapper: fix non-UTF8 music directory nameMax Kellermann2012-08-144-37/+73
| | | | | | Duplicate the music_dir variable: one encoded in UTF-8, and another one using the configured filesystem character set. This fixes an ancient MPD bug.
* playlist_song: use map_to_relative_path()Max Kellermann2012-08-141-4/+4
|
* playlist_song: improve const-correctnessMax Kellermann2012-08-141-5/+4
|
* playlist_song: move code to playlist_check_load_song()Max Kellermann2012-08-141-23/+23
|
* input_stream, main: remove obsolete GLib version checksMax Kellermann2012-08-143-8/+0
| | | | MPD requires GLib 2.16.
* client_file: remove pure attribute from client_allow_file().Anton Khirnov2012-08-131-1/+0
| | | | | | | | That function is not pure, it writes to error. When marked as pure, the compiler is allowed to assume it does not do anything to error, so it can remain NULL, which would result in an invalid read in print_error().
* tcp_socket, ...: remove obsolet RAOP sourcesMax Kellermann2012-07-306-976/+0
|
* tag_ape: return false if no usable tag was foundMax Kellermann2012-07-291-7/+21
| | | | | | | Ignore APE tags that have no usable tags, and use the ID3 tag instead. This is useful when the APE tag only contains replay gain, and the real tags are stored as ID3. This implements feature request Mantis #0003521.
* cue_parser: support file types "MP3", "AIFF"Max Kellermann2012-07-261-1/+3
| | | | These two strings are common "FILE" types.
* Add song duration to DSF and DSDIFF DSD decoders.Jurgen Kramer2012-07-132-3/+24
|
* aiff: support the AIFC formatMax Kellermann2012-07-101-1/+2
|
* output_init: put the "convert" filter at the end of the listMax Kellermann2012-07-101-7/+7
| | | | | No, really! This fixes a regression of commit 74617389, which changed the order of filter plugins.
* require GLib 2.16Max Kellermann2012-07-1019-75/+2
| | | | | GLib 2.16 was released more than 4 years ago. Let's remove some cruft from the glib_compat.h header, and avoid new cruft to it.
* command: require appropriate permissions for searchadd{,pl}Jonathan Neuschäfer2012-07-101-2/+2
|
* patch to split DSD decoder into separate decoders for DSF en DFF. Move commonJurgen Kramer2012-06-277-324/+568
| | | | functions to new dsdlib. Update user doc.
* New command searchaddplgeneticdrift2012-06-273-0/+77
| | | | Search and add search result to a stored playlist.
* New command searchadd similar to command findadd.geneticdrift2012-06-273-0/+73
|
* locate: make variables more localMax Kellermann2012-06-271-19/+10
|
* update_walk: move code to update_song.cMax Kellermann2012-06-133-84/+151
|
* update_walk: move code to update_container.cMax Kellermann2012-06-133-91/+162
|
* update_walk: move code to update_archive.cMax Kellermann2012-06-134-135/+246
|
* update_internal.h: split headerMax Kellermann2012-06-135-19/+49
|
* update_walk: split update_regular_file()Max Kellermann2012-06-131-21/+58
|
* directory: require db lock for _{add,remove}_song()Max Kellermann2012-06-132-0/+10
|