Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | Merge branch 'v0.17.x' | Max Kellermann | 2012-08-15 | 1 | -53/+28 | |
|\| | ||||||
| * | decoder/fluidsynth: add "sample_rate" setting | Max Kellermann | 2012-08-15 | 1 | -6/+14 | |
| | | ||||||
| * | decoder/fluidsynth: add "soundfont" setting | Max Kellermann | 2012-08-15 | 1 | -6/+7 | |
| | | | | | | | | Replaces the old global "soundfont" which never worked. | |||||
| * | configure.ac: auto-detect libfluidsynth | Max Kellermann | 2012-08-15 | 1 | -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 file | Max Kellermann | 2012-08-15 | 1 | -5/+4 | |
| | | | | | | | | Use libfluidsynth's new function fluid_player_get_status(). | |||||
| * | decoder/fluidsynth: don't duplicate path | Max Kellermann | 2012-08-15 | 1 | -6/+1 | |
| | | | | | | | | The libfluidsynth now accepts const strings. | |||||
| * | decoder/fluidsynth: check if file is really a MIDI | Max Kellermann | 2012-08-15 | 1 | -4/+1 | |
| | | | | | | | | Use fluid_is_midifile() to verify the file format. | |||||
| * | decoder/fluidsynth: remove throttle (requires libfluidsynth 1.1) | Max Kellermann | 2012-08-15 | 1 | -17/+1 | |
| | | | | | | | | | | The libfluidsynth API is now sane, and does not require real-time decoding. | |||||
* | | Merge branch 'v0.17.x' | Max Kellermann | 2012-08-14 | 10 | -126/+261 | |
|\| | ||||||
| * | log: store duplicated path string | Max Kellermann | 2012-08-14 | 3 | -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 Kellermann | 2012-08-14 | 1 | -4/+11 | |
| | | | | | | | | Eliminate the g_usleep() call. | |||||
| * | output/pulse: implement method delay() | Max Kellermann | 2012-08-14 | 1 | -7/+21 | |
| | | | | | | | | Reduce command latency while paused. | |||||
| * | output/pulse: simplify _wait_stream() | Max Kellermann | 2012-08-14 | 1 | -55/+16 | |
| | | | | | | | | One large loop and only one pa_stream_get_state() call. | |||||
| * | output/httpd: move delay from _pause() to _delay() | Max Kellermann | 2012-08-14 | 1 | -1/+5 | |
| | | ||||||
| * | output/httpd: fix throttling bug after resuming playback | Max Kellermann | 2012-08-14 | 1 | -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 Kellermann | 2012-08-14 | 1 | -11/+27 | |
| | | ||||||
| * | timer: use monotonic clock if available | Max Kellermann | 2012-08-14 | 3 | -13/+140 | |
| | | ||||||
| * | input/ffmpeg: remove fallback AV_VERSION_INT definition | Max Kellermann | 2012-08-14 | 1 | -4/+1 | |
| | | | | | | | | This is part of libavutil. | |||||
* | | Merge branch 'v0.17.x' | Max Kellermann | 2012-08-14 | 8 | -76/+103 | |
|\| | | | | | | | | | Conflicts: src/mapper.h | |||||
| * | mapper: fix non-UTF8 music directory name | Max Kellermann | 2012-08-14 | 4 | -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 Kellermann | 2012-08-14 | 1 | -4/+4 | |
| | | ||||||
| * | playlist_song: improve const-correctness | Max Kellermann | 2012-08-14 | 1 | -5/+4 | |
| | | ||||||
| * | playlist_song: move code to playlist_check_load_song() | Max Kellermann | 2012-08-14 | 1 | -23/+23 | |
| | | ||||||
| * | input_stream, main: remove obsolete GLib version checks | Max Kellermann | 2012-08-14 | 3 | -8/+0 | |
| | | | | | | | | MPD requires GLib 2.16. | |||||
* | | Merge branch 'v0.17.x' | Max Kellermann | 2012-08-13 | 1 | -2/+0 | |
|\| | | | | | | | | | | | | | Conflicts: NEWS configure.ac src/client_file.h | |||||
| * | client_file: remove pure attribute from client_allow_file(). | Anton Khirnov | 2012-08-13 | 1 | -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(). | |||||
* | | Directory: move code to directory_allocate() | Max Kellermann | 2012-08-09 | 1 | -8/+18 | |
| | | ||||||
* | | player_control: add GError attribute | Max Kellermann | 2012-08-08 | 4 | -68/+56 | |
| | | | | | | | | | | Rewrite of the pc_get_error_message() function, now using a GError object instead of the complicated "errored_song" attribute. | |||||
* | | output_all: add basic GError support | Max Kellermann | 2012-08-08 | 4 | -11/+74 | |
| | | ||||||
* | | decoder_control: add GError attribute | Max Kellermann | 2012-08-08 | 4 | -1/+106 | |
| | | ||||||
* | | player_control: rename attribute "error" to "error_type" | Max Kellermann | 2012-08-08 | 4 | -12/+14 | |
| | | ||||||
* | | player_control: rename player_error enum values | Max Kellermann | 2012-08-08 | 4 | -16/+24 | |
| | | ||||||
* | | player_control: remove unused enum player_error values | Max Kellermann | 2012-08-08 | 3 | -19/+1 | |
| | | ||||||
* | | player_control: inline trivial functions | Max Kellermann | 2012-08-08 | 2 | -40/+25 | |
| | | ||||||
* | | song: use C++ compiler | Max Kellermann | 2012-08-08 | 2 | -8/+16 | |
| | | ||||||
* | | tag_pool: use GStaticMutex | Max Kellermann | 2012-08-08 | 4 | -32/+22 | |
| | | | | | | | | Eliminates explicit global initialisation. | |||||
* | | song: include cleanup | Max Kellermann | 2012-08-08 | 1 | -1/+0 | |
| | | ||||||
* | | directory: use gcc.h macros, not GLib | Max Kellermann | 2012-08-08 | 1 | -6/+7 | |
| | | ||||||
* | | conf: add a "database" block | Max Kellermann | 2012-08-08 | 2 | -6/+19 | |
| | | | | | | | | | | The new block overrides the "db_file" setting, and allows configuring any database plugin. | |||||
* | | DatabaseGlue: look up the database plugin | Max Kellermann | 2012-08-08 | 1 | -1/+11 | |
| | | | | | | | | No more hard-coded "simple" plugin. | |||||
* | | DatabaseGlue: pass block to db_init() | Max Kellermann | 2012-08-08 | 3 | -13/+9 | |
| | | | | | | | | Let the caller take care for legacy conversion. | |||||
* | | DatabaseGlue: add function db_is_simple() | Max Kellermann | 2012-08-08 | 4 | -5/+38 | |
| | | | | | | | | Preparing for non-"simple" database plugins. | |||||
* | | main: don't call db_init() without database | Max Kellermann | 2012-08-08 | 1 | -1/+0 | |
| | | | | | | | | Useless call. | |||||
* | | ProxyDatabasePlugin: obey the "recursive" flag | Max Kellermann | 2012-08-08 | 1 | -2/+3 | |
| | | ||||||
* | | ProxyDatabasePlugin: use an artificial "root" directory | Max Kellermann | 2012-08-08 | 1 | -2/+9 | |
| | | | | | | | | Fixes assertion failures in the Directory library. | |||||
* | | DatabasePrint: don't print Last-Modified if unknown | Max Kellermann | 2012-08-08 | 2 | -2/+4 | |
| | | ||||||
* | | time_print: new library, function time_print() | Max Kellermann | 2012-08-08 | 5 | -57/+87 | |
| | | | | | | | | | | Implements error checking for the gmtime_r() call, which was missing in two code locations. | |||||
* | | ProxyDatabasePlugin: new database plugin using libmpdclient | Max Kellermann | 2012-08-08 | 3 | -0/+377 | |
| | | | | | | | | | | Implementation incomplete, but sort-of-works. DumpDatabase works, but MPD is still hard-coded on the "simple" plugin. | |||||
* | | DatabaseCommands: allow empty criteria for "list" | Max Kellermann | 2012-08-08 | 1 | -3/+5 | |
| | | | | | | | | Fixes regression. | |||||
* | | DatabaseSelection: add "match" attribute | Max Kellermann | 2012-08-08 | 11 | -97/+56 | |
| | | | | | | | | Let the database plugin do the match. |