Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | cue_parser: fix CUE files with only one track | Max Kellermann | 2013-01-03 | 1 | -7/+47 |
| | | | | | Track whether _finish() has been called, and deliver all partial results then. Fixes Mantis ticket 0003621. | ||||
* | cue_parser: add code comments | Max Kellermann | 2013-01-03 | 1 | -2/+21 |
| | |||||
* | cue_parser: fix memory leak | Max Kellermann | 2013-01-03 | 1 | -0/+3 |
| | |||||
* | cmdline: bunch of fixes related to config file selection | Denis Krjuchkov | 2013-01-03 | 1 | -4/+4 |
| | | | | | | | | | | | | | | - fix potential memory leak of system_path 'Potential' because currently g_get_system_config_dirs() returns single entry on Windows, but that might change. - remove incorrect g_free() call It's not required at all because g_get_system_config_dirs() returns GLib owned memory. - remove extra semicolon | ||||
* | playlist_song: fix potential charset bug in apply_song_metadata() | Max Kellermann | 2012-10-05 | 1 | -2/+9 |
| | | | | The song's URI must be UTF-8, not filesystem character set. | ||||
* | playlist_save: use temp2 instead of temp | Max Kellermann | 2012-10-05 | 1 | -1/+2 |
| | | | | Fixes minor Windows compatibility problem. | ||||
* | decoder/ffmpeg: support planar audio | Max Kellermann | 2012-10-05 | 1 | -0/+6 |
| | | | | Implements Mantis feature request 3582. | ||||
* | decoder/ffmpeg: fix playback of planar PCM data | Max Kellermann | 2012-10-05 | 1 | -8/+13 |
| | | | | | Interleaving was completely wrong. This code was never used, so it didn't have an effect. | ||||
* | decoder/ffmpeg: move code to copy_interleave_frame2() | Max Kellermann | 2012-10-05 | 1 | -5/+14 |
| | |||||
* | decoder/ffmpeg: ignore negative time stamps | Max Kellermann | 2012-10-05 | 1 | -1/+1 |
| | | | | Works around assertion failure in decoder_timestamp(). | ||||
* | decoder/ffmpeg: show unsupported sample format name | Max Kellermann | 2012-10-05 | 1 | -2/+13 |
| | | | | Use av_get_sample_fmt_string() to obtain a human-readable string. | ||||
* | decoder/ffmpeg: pass AVSampleFormat to ffmpeg_sample_format() | Max Kellermann | 2012-10-05 | 1 | -4/+9 |
| | | | | API simplification. | ||||
* | decoder/ffmpeg: remove duplicate sample format error message | Max Kellermann | 2012-10-05 | 1 | -1/+6 |
| | |||||
* | OSX: Set mDataByteSize correctly on AudioBuffers during render. | Gregory Smith | 2012-10-02 | 1 | -3/+7 |
| | |||||
* | output/{recorder,shout}: call encoder_read() in a loop | Max Kellermann | 2012-10-02 | 3 | -16/+23 |
| | | | | This is necessary for Ogg packets that span more than one page. | ||||
* | output/recorder: move code to _write_to_file() | Max Kellermann | 2012-10-02 | 1 | -19/+31 |
| | |||||
* | output/recorder: fix write() error check | Max Kellermann | 2012-10-02 | 1 | -3/+3 |
| | | | | We can only check for negative values if the variable is signed. | ||||
* | output/recorder: make variables more local | Max Kellermann | 2012-10-02 | 1 | -16/+12 |
| | |||||
* | output/httpd: make variables more local | Max Kellermann | 2012-10-02 | 1 | -31/+16 |
| | |||||
* | encoder/vorbis: make variables more local | Max Kellermann | 2012-10-02 | 1 | -20/+12 |
| | |||||
* | output/recorder, test/*: invoke encoder_read() after _open() | Max Kellermann | 2012-10-02 | 2 | -0/+11 |
| | | | | | Make sure the file header gets written at the beginning, before _write() gets called. | ||||
* | output/shout: eliminate struct shout_buffer | Max Kellermann | 2012-10-02 | 1 | -7/+3 |
| | | | | Move the raw buffer to struct shout_data. | ||||
* | output/shout: remove shout_buffer.len | Max Kellermann | 2012-10-02 | 1 | -9/+4 |
| | | | | Make it a local variable instead. | ||||
* | output/shout: fix memory leak in error handler | Max Kellermann | 2012-10-02 | 1 | -2/+7 |
| | |||||
* | output/shout: make variables more local | Max Kellermann | 2012-10-02 | 1 | -49/+26 |
| | |||||
* | decoder_control: remove MixRamp debug messages | Max Kellermann | 2012-09-25 | 4 | -10/+4 |
| | | | | | These are confusing, and since MixRamp development has ceased, not useful to anybody. | ||||
* | decoder/wavpack: support all APEv2 tags | Max Kellermann | 2012-09-25 | 3 | -17/+17 |
| | | | | | WavPack tags are always APEv2, by definition. Reuse the tag_table from tag_ape.c, instead of rolling our own. | ||||
* | locate: cast enum tag_type to int before comparing with integer | Max Kellermann | 2012-09-22 | 1 | -4/+4 |
| | | | | | Avoids clang pickiness. This code is not correct, but we'll fix that another day. | ||||
* | decoder/_ogg_common: fix buffer size check | Max Kellermann | 2012-09-04 | 1 | -1/+1 |
| | | | | Fixes potential access to uninitialised memory. | ||||
* | decoder/_ogg_common: simplify the large "if" expression | Max Kellermann | 2012-09-04 | 1 | -6/+8 |
| | |||||
* | AudioCompress: abort on out-of-memory | Max Kellermann | 2012-09-03 | 1 | -0/+7 |
| | | | | | | This library crashes on out-of-memory (NULL pointer dereference). There's not much useful MPD can do in such a situation, so let's explicitly abort instead, just like GLib does. | ||||
* | update_walk: fix unsafe readlink() usage | Max Kellermann | 2012-09-03 | 1 | -2/+10 |
| | |||||
* | playlist/cue: map "PERFORMER" to "artist" or "album artist" | Max Kellermann | 2012-08-25 | 1 | -1/+11 |
| | | | | Implements Mantis ticket 0003549. | ||||
* | player_thread: disable cross-fading in "single" mode | Max Kellermann | 2012-08-25 | 4 | -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 bool | Max Kellermann | 2012-08-21 | 1 | -1/+1 |
| | |||||
* | queue_save: save song priorities | Max Kellermann | 2012-08-21 | 4 | -6/+25 |
| | |||||
* | playlist_print: fix memory leak | Max Kellermann | 2012-08-16 | 1 | -0/+3 |
| | |||||
* | playlist_song: pass const song to _check_load_song() | Max Kellermann | 2012-08-16 | 1 | -1/+1 |
| | |||||
* | playlist_song: fix user-after-free bug | Max Kellermann | 2012-08-16 | 1 | -1/+3 |
| | |||||
* | player_thread: add local variable "start_ms" | Max Kellermann | 2012-08-15 | 1 | -1/+3 |
| | | | | Just in case "song" becomes invalid at some point. | ||||
* | playlist: fix unprotected player_control access | Max Kellermann | 2012-08-15 | 1 | -1/+5 |
| | |||||
* | filter/volume: include cleanup | Max Kellermann | 2012-08-15 | 2 | -2/+0 |
| | |||||
* | mapper: fix potential crash in file permission check | Max Kellermann | 2012-08-15 | 1 | -3/+3 |
| | |||||
* | 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. |