aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* DatabasePlugin: add method ReturnSong()Max Kellermann2012-08-1613-14/+85
| | | | Allow the plugin to allocate the GetSong() return value.
* Merge branch 'v0.17.x'Max Kellermann2012-08-163-2/+9
|\
| * playlist_print: fix memory leakMax Kellermann2012-08-162-0/+4
| |
| * playlist_song: pass const song to _check_load_song()Max Kellermann2012-08-161-1/+1
| |
| * playlist_song: fix user-after-free bugMax Kellermann2012-08-162-1/+4
| |
* | ProxyDatabase: pass "detached" objects to visitorsMax Kellermann2012-08-153-40/+49
| | | | | | | | Fixes wrong object URIs with duplicate base names.
* | queue: duplicate all song objectsMax Kellermann2012-08-153-5/+40
| | | | | | | | | | Make sure the queue "owns" all song objects, so nobody else can free them.
* | player_control: duplicate the song objectMax Kellermann2012-08-155-7/+58
| | | | | | | | | | Make sure the player "owns" the next_song object, so nobody else can free it.
* | decoder_control: duplicate the song objectMax Kellermann2012-08-153-3/+15
| | | | | | | | | | Make sure the decoder "owns" the song object, so nobody else can free it.
* | Song: add function song_dup_detached()Max Kellermann2012-08-153-1/+81
| | | | | | | | | | Initial support for "detached" songs that come from the database, but are private copies.
* | Song: add function song_equals()Max Kellermann2012-08-153-1/+37
| | | | | | | | | | decoder_is_current_song() now recognizes different instances of the same physical song.
* | Song: move trivial inline functions upMax Kellermann2012-08-151-12/+12
| |
* | DatabasePlugin: add method GetStats()Max Kellermann2012-08-157-63/+148
| | | | | | | | | | Optimize the ProxyDatabase by invoking "stats" on the peer, instead of visiting all songs.
* | DatabasePlugin: add method VisitUniqueTags()Max Kellermann2012-08-159-53/+216
| | | | | | | | | | Optimize the ProxyDatabase by invoking "list" on the peer, instead of visiting all songs.
* | ProxyDatabase: obey visitor return valuesMax Kellermann2012-08-151-8/+11
| |
* | ProxyDatabasePlugin: add OO wrapper for mpd_entityMax Kellermann2012-08-151-11/+32
| | | | | | | | Let the C++ compiler take care for freeing the objects safely.
* | ProxyDatabasePlugin: move tag table to the global name spaceMax Kellermann2012-08-151-25/+25
| |
* | db_visitor: delete obsolete headerMax Kellermann2012-08-156-61/+0
| |
* | DatabasePrint: remove bogus "nonnull" attributesMax Kellermann2012-08-151-2/+2
| |
* | Merge branch 'v0.17.x'Max Kellermann2012-08-156-7/+12
|\| | | | | | | | | Conflicts: src/player_thread.c
| * 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-152-3/+4
| |
* | decoder_control: add function _is_current_song()Max Kellermann2012-08-153-15/+42
| | | | | | | | Replaces _current_song().
* | decoder_control: add assertion to dc_get_error()Max Kellermann2012-08-151-0/+1
| |
* | decoder_thread: create GError for mapper failureMax Kellermann2012-08-151-0/+3
| | | | | | | | Fixes crash.
* | Merge branch 'v0.17.x'Max Kellermann2012-08-156-60/+108
|\|
| * doc/user: add wildmidi documentationMax Kellermann2012-08-151-0/+31
| |
| * decoder/fluidsynth: add "sample_rate" settingMax Kellermann2012-08-153-6/+24
| |
| * decoder/fluidsynth: add "soundfont" settingMax Kellermann2012-08-152-6/+38
| | | | | | | | Replaces the old global "soundfont" which never worked.
| * configure.ac: auto-detect libfluidsynthMax Kellermann2012-08-153-12/+3
| | | | | | | | | | 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-152-5/+5
| | | | | | | | 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-152-4/+2
| | | | | | | | Use fluid_is_midifile() to verify the file format.
| * decoder/fluidsynth: remove throttle (requires libfluidsynth 1.1)Max Kellermann2012-08-154-21/+4
| | | | | | | | | | The libfluidsynth API is now sane, and does not require real-time decoding.
* | Merge branch 'v0.17.x'Max Kellermann2012-08-1414-139/+278
|\|
| * 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-142-0/+9
| | | | | | | | | | | | 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-145-17/+147
| |
| * input/ffmpeg: remove fallback AV_VERSION_INT definitionMax Kellermann2012-08-141-4/+1
| | | | | | | | This is part of libavutil.
| * mpd.conf(5): Document the existence of musicbrainz_ tagsWieland Hoffmann2012-08-142-9/+9
| | | | | | | | | | Additionally, update mpdconf.example to refer to mpd.conf(5) for the complete list of tags instead of trying to repeat it.
* | Merge branch 'v0.17.x'Max Kellermann2012-08-149-76/+104
|\| | | | | | | | | Conflicts: src/mapper.h
| * mapper: fix non-UTF8 music directory nameMax Kellermann2012-08-145-37/+74
| | | | | | | | | | | | 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
| |