aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-10-05decoder/ffmpeg: fix playback of planar PCM dataMax Kellermann1-8/+13
Interleaving was completely wrong. This code was never used, so it didn't have an effect.
2012-10-05decoder/ffmpeg: move code to copy_interleave_frame2()Max Kellermann1-5/+14
2012-10-05decoder/ffmpeg: ignore negative time stampsMax Kellermann1-1/+1
Works around assertion failure in decoder_timestamp().
2012-10-05decoder/ffmpeg: show unsupported sample format nameMax Kellermann1-2/+13
Use av_get_sample_fmt_string() to obtain a human-readable string.
2012-10-05decoder/ffmpeg: pass AVSampleFormat to ffmpeg_sample_format()Max Kellermann1-4/+9
API simplification.
2012-10-05decoder/ffmpeg: remove duplicate sample format error messageMax Kellermann1-1/+6
2012-10-02OSX: Set mDataByteSize correctly on AudioBuffers during render.Gregory Smith1-3/+7
2012-10-02output/{recorder,shout}: call encoder_read() in a loopMax Kellermann3-16/+23
This is necessary for Ogg packets that span more than one page.
2012-10-02output/recorder: move code to _write_to_file()Max Kellermann1-19/+31
2012-10-02output/recorder: fix write() error checkMax Kellermann1-3/+3
We can only check for negative values if the variable is signed.
2012-10-02output/recorder: make variables more localMax Kellermann1-16/+12
2012-10-02output/httpd: make variables more localMax Kellermann1-31/+16
2012-10-02encoder/vorbis: make variables more localMax Kellermann1-20/+12
2012-10-02output/recorder, test/*: invoke encoder_read() after _open()Max Kellermann2-0/+11
Make sure the file header gets written at the beginning, before _write() gets called.
2012-10-02output/shout: eliminate struct shout_bufferMax Kellermann1-7/+3
Move the raw buffer to struct shout_data.
2012-10-02output/shout: remove shout_buffer.lenMax Kellermann1-9/+4
Make it a local variable instead.
2012-10-02output/shout: fix memory leak in error handlerMax Kellermann1-2/+7
2012-10-02output/shout: make variables more localMax Kellermann1-49/+26
2012-09-25decoder_control: remove MixRamp debug messagesMax Kellermann4-10/+4
These are confusing, and since MixRamp development has ceased, not useful to anybody.
2012-09-25decoder/wavpack: support all APEv2 tagsMax Kellermann3-17/+17
WavPack tags are always APEv2, by definition. Reuse the tag_table from tag_ape.c, instead of rolling our own.
2012-09-22locate: cast enum tag_type to int before comparing with integerMax Kellermann1-4/+4
Avoids clang pickiness. This code is not correct, but we'll fix that another day.
2012-09-04decoder/_ogg_common: fix buffer size checkMax Kellermann1-1/+1
Fixes potential access to uninitialised memory.
2012-09-04decoder/_ogg_common: simplify the large "if" expressionMax Kellermann1-6/+8
2012-09-03AudioCompress: abort on out-of-memoryMax Kellermann1-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.
2012-09-03update_walk: fix unsafe readlink() usageMax Kellermann1-2/+10
2012-08-25playlist/cue: map "PERFORMER" to "artist" or "album artist"Max Kellermann1-1/+11
Implements Mantis ticket 0003549.
2012-08-25player_thread: disable cross-fading in "single" modeMax Kellermann4-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.
2012-08-21command: make "single" a boolMax Kellermann1-1/+1
2012-08-21queue_save: save song prioritiesMax Kellermann4-6/+25
2012-08-16playlist_print: fix memory leakMax Kellermann1-0/+3
2012-08-16playlist_song: pass const song to _check_load_song()Max Kellermann1-1/+1
2012-08-16playlist_song: fix user-after-free bugMax Kellermann1-1/+3
2012-08-15player_thread: add local variable "start_ms"Max Kellermann1-1/+3
Just in case "song" becomes invalid at some point.
2012-08-15playlist: fix unprotected player_control accessMax Kellermann1-1/+5
2012-08-15filter/volume: include cleanupMax Kellermann2-2/+0
2012-08-15mapper: fix potential crash in file permission checkMax Kellermann1-3/+3
2012-08-15decoder/fluidsynth: add "sample_rate" settingMax Kellermann1-6/+14
2012-08-15decoder/fluidsynth: add "soundfont" settingMax Kellermann1-6/+7
Replaces the old global "soundfont" which never worked.
2012-08-15configure.ac: auto-detect libfluidsynthMax Kellermann1-9/+0
Now that the libfluidsynth API was sanitized, we can enable the plugin automatically if libfluidsynth is installed.
2012-08-15decoder/fluidsynth: stop playback at end of fileMax Kellermann1-5/+4
Use libfluidsynth's new function fluid_player_get_status().
2012-08-15decoder/fluidsynth: don't duplicate pathMax Kellermann1-6/+1
The libfluidsynth now accepts const strings.
2012-08-15decoder/fluidsynth: check if file is really a MIDIMax Kellermann1-4/+1
Use fluid_is_midifile() to verify the file format.
2012-08-15decoder/fluidsynth: remove throttle (requires libfluidsynth 1.1)Max Kellermann1-17/+1
The libfluidsynth API is now sane, and does not require real-time decoding.
2012-08-14log: store duplicated path stringMax Kellermann3-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).
2012-08-14output/jack: implement method delay()Max Kellermann1-4/+11
Eliminate the g_usleep() call.
2012-08-14output/pulse: implement method delay()Max Kellermann1-7/+21
Reduce command latency while paused.
2012-08-14output/pulse: simplify _wait_stream()Max Kellermann1-55/+16
One large loop and only one pa_stream_get_state() call.
2012-08-14output/httpd: move delay from _pause() to _delay()Max Kellermann1-1/+5
2012-08-14output/httpd: fix throttling bug after resuming playbackMax Kellermann1-0/+8
Reset the timer when paused and no client is connected. This fixes Mantis ticket 0003527.
2012-08-14output/httpd: move code to _has_clients()Max Kellermann1-11/+27