Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | output/openal: use alGetSourcei(AL_BUFFER) to force-unqueue buffers | Max Kellermann | 2011-12-13 | 1 | -14/+4 |
| | | | | | | | | The implementation of cancel() did not work well: you cannot use alSourceUnqueueBuffers() to unqueue queued buffers, and our function openal_unqueue_buffers() left the OpenAL library in a rather undefined state; nothing was supposed to be queued, but the "filled" variable was not reset. | ||||
* | output/openal: make attribute "filled" unsigned | Max Kellermann | 2011-12-13 | 1 | -1/+1 |
| | |||||
* | output/openal: remove bogus format check from _open() | Max Kellermann | 2011-12-13 | 1 | -8/+0 |
| | | | | The expression "!format" does not make sense, and cannot occur. | ||||
* | output/fifo: implement output_plugin method delay() | Max Kellermann | 2011-12-13 | 1 | -3/+11 |
| | |||||
* | output/null: implement output_plugin method delay() | Max Kellermann | 2011-12-13 | 1 | -3/+11 |
| | |||||
* | output/null: don't initialize the "timer" attribute in _init() | Max Kellermann | 2011-12-13 | 1 | -6/+1 |
| | | | | Unnecessary overhead. | ||||
* | Merge branch 'v0.16.x' | Max Kellermann | 2011-12-13 | 6 | -14/+18 |
|\ | | | | | | | | | | | Conflicts: NEWS configure.ac | ||||
| * | output/openal: force 16 bit playback, as 8 bit doesn't work | Max Kellermann | 2011-12-13 | 1 | -10/+4 |
| | | | | | | | | | | | | The OpenAL specification says that AL_FORMAT_MONO8 and AL_FORMAT_STEREO8 expect unsigned 8 bit samples, but MPD uses unsigned samples. | ||||
| * | timer: fix time unit mixup in timer_delay() | Max Kellermann | 2011-12-13 | 1 | -1/+1 |
| | | | | | | | | | | | | | | The local variable was already divided by 1000, and the return value was being divided by 1000 again - doh! This caused delays in the httpd output plugin that were too small by three orders of magnitude, and the buffer was filled too quickly. | ||||
| * | update_walk: print debug message for song_file_load() | Max Kellermann | 2011-12-13 | 1 | -0/+2 |
| | | |||||
| * | decoder/mp4ff: work around assertion failure in read() callback | Max Kellermann | 2011-12-13 | 1 | -0/+6 |
| | | | | | | | | | | This workaround leads to an infinite loop instead of an assertion failure, but hey, now it's libmp4ff's fault. | ||||
| * | cmdline: Remove duplicate g_free()s | Avuton Olrich | 2011-12-12 | 1 | -2/+0 |
| | | |||||
| * | configure/utils: Add ipv6 support for mingw build | Avuton Olrich | 2011-12-12 | 1 | -1/+5 |
| | | |||||
* | | pcm_buffer: poison the old buffer before returning it | Max Kellermann | 2011-12-13 | 1 | -0/+4 |
| | | | | | | | | | | | | Make valgrind find more buffer misuses. Buffer contents are not persistent, they get invalidated by pcm_buffer_get(), because this function may allocate a new buffer, but will not copy old data. | ||||
* | | pcm_buffer, output_plugin, ...: include config.h | Max Kellermann | 2011-12-13 | 3 | -0/+4 |
| | | |||||
* | | pcm_buffer: eliminate merge conflict fallout | Max Kellermann | 2011-12-13 | 1 | -4/+0 |
| | | |||||
* | | winmm_output_plugin: fail if wrong device specified instead of using fallback. | Denis Krjuchkov | 2011-12-13 | 1 | -12/+29 |
| | | | | | | | | | | Silently choosing default is misleading and can cause hours of investigation. It's better to fail immediately telling user what is wrong with config. | ||||
* | | output_init: initialize replay gain filters to NULL in ao_base_init() | Denis Krjuchkov | 2011-12-13 | 1 | -0/+2 |
| | | | | | | | | | | | | If output plugin fails to init it will try to call ao_base_finish() immediately, which segfaults because replay gain filters are not initialized yet and contain garbage values. | ||||
* | | input/soup: disable -Wcast-qual to work around libsoup header problem | Max Kellermann | 2011-12-12 | 1 | -0/+13 |
| | | |||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-11-28 | 17 | -78/+410 |
|\| | | | | | | | | | | | | | | | | | | | Conflicts: Makefile.am NEWS configure.ac src/encoder/flac_encoder.c src/log.c src/pcm_buffer.c | ||||
| * | decoder/ffmpeg: work around bogus channel count | Max Kellermann | 2011-11-28 | 1 | -8/+12 |
| | | | | | | | | | | Initialize the audio_format before calling avcodec_open(), because avcodec_open() will fill bogus values. | ||||
| * | mapper: check "r" permission on music directory | Max Kellermann | 2011-11-28 | 1 | -0/+7 |
| | | | | | | | | Yet another common support case. | ||||
| * | mapper: check "x" permission on music directory | Max Kellermann | 2011-11-28 | 1 | -0/+8 |
| | | | | | | | | | | This is a common support case, and hopefully, the new error message will allow the user to understand the error without requiring support. | ||||
| * | mapper: fix the bogus "not a directory" error message | Max Kellermann | 2011-11-28 | 1 | -1/+13 |
| | | | | | | | | | | Use stat() instead of g_file_test() to detect other types of errors, such as "permission denied". | ||||
| * | mapper: move code to check_directory() | Max Kellermann | 2011-11-28 | 1 | -8/+11 |
| | | |||||
| * | log: print reason for failure | Max Kellermann | 2011-11-28 | 1 | -2/+2 |
| | | |||||
| * | encoder/wave: support packed 24 bit samples | Max Kellermann | 2011-11-28 | 1 | -0/+5 |
| | | | | | | | | Convert to padded 24 bit samples, instead of falling back to 16 bit. | ||||
| * | encoder/null: use fifo_buffer instead of pcm_buffer | Max Kellermann | 2011-11-28 | 1 | -19/+15 |
| | | | | | | | | | | | | This fixes a buffer corruption bug; pcm_buffer is not designed to be a persistent buffers, and will discard anything between two consecutive calls. | ||||
| * | encoder/wave: use fifo_buffer instead of pcm_buffer | Max Kellermann | 2011-11-28 | 1 | -19/+27 |
| | | | | | | | | | | | | This fixes a buffer corruption bug; pcm_buffer is not designed to be a persistent buffers, and will discard anything between two consecutive calls. | ||||
| * | encoder/flac: use fifo_buffer instead of pcm_buffer | Max Kellermann | 2011-11-28 | 1 | -16/+20 |
| | | | | | | | | | | | | This fixes a buffer corruption bug; pcm_buffer is not designed to be a persistent buffers, and will discard anything between two consecutive calls. | ||||
| * | growing_fifo: new utility library for growing fifo_buffer | Max Kellermann | 2011-11-28 | 2 | -0/+163 |
| | | |||||
| * | fifo_buffer: add function fifo_buffer_realloc() | Max Kellermann | 2011-11-28 | 2 | -2/+47 |
| | | | | | | | | For growing FIFO buffers. | ||||
| * | fifo_buffer: add functions _capacity() and _available() | Max Kellermann | 2011-11-27 | 2 | -0/+29 |
| | | |||||
| * | pcm_buffer: add assertions | Max Kellermann | 2011-11-27 | 2 | -0/+10 |
| | | |||||
| * | pcm_buffer: move formula to new function align_8k() | Max Kellermann | 2011-11-27 | 1 | -2/+11 |
| | | |||||
| * | pcm_buffer: un-inline pcm_buffer_get() | Max Kellermann | 2011-11-27 | 2 | -14/+38 |
| | | | | | | | | This method is too complex for inlining. | ||||
| * | directory: rename attribute "stat" to "have_stat" | Max Kellermann | 2011-11-27 | 2 | -3/+3 |
| | | | | | | | | | | "stat" is a macro on mingw32, which is a pretty stupid thing, and this commit works around this build failure. | ||||
| * | directory: convert "stat" to a bool | Max Kellermann | 2011-11-27 | 2 | -2/+2 |
| | | |||||
| * | stats: explicitly cast "time_t" to "long" | Max Kellermann | 2011-11-27 | 1 | -1/+1 |
| | | | | | | | | Fixes warning on mingw32. | ||||
| * | decoder_api: cancel initial seek when song is not seekable | Max Kellermann | 2011-11-27 | 1 | -0/+6 |
| | | | | | | | | Fixes assertion failure. | ||||
| * | path: autodetect filesystem encoding on Win32 | Denis Krjuchkov | 2011-10-23 | 1 | -0/+16 |
| | | | | | | | | | | | | | | WinAPI explicitly declares filesystem encoding. It can be determined by GetACP(). Use that instead of Glib routine that always "detects" UTF-8 on Win32, which is incorrect for MPD case. | ||||
| * | configure.ac: define WINVER | Max Kellermann | 2011-10-13 | 3 | -3/+0 |
| | | | | | | | | | | | | Ensure that WINVER is defined early enough, so other system headers won't fall back to their default value. Specifically, this solves a build failure (-Werror) with mingw-w64 ("WINVER redefined"). | ||||
| * | decoder_thread: add missing stdio.h include | Max Kellermann | 2011-10-13 | 1 | -0/+1 |
| | | |||||
| * | event_pipe: fix WIN32 regression | Max Kellermann | 2011-10-13 | 1 | -2/+5 |
| | | | | | | | | | | The event pipe is not a socket, and the patch that introduced g_io_channel_new_socket() to the event pipe library was wrong. | ||||
* | | io_thread: fix race condition during startup | Max Kellermann | 2011-11-27 | 1 | -0/+8 |
| | | | | | | | | | | Ensure that the io.thread variable is set before entering the event loop. | ||||
* | | decoder/dsdiff: provide floating point samples | Max Kellermann | 2011-10-20 | 1 | -30/+3 |
| | | | | | | | | | | Eliminate the conversion to integer samples, the MPD core can do this now. | ||||
* | | decoder/wavpack: read float samples as-is, don't convert to integer | Max Kellermann | 2011-10-20 | 1 | -5/+4 |
| | | | | | | | | | | For MPD's new floating point support: when a decoded wavpack file needs to be resampled, don't convert float to int and back to float. | ||||
* | | pcm_format: implement conversion to float | Max Kellermann | 2011-10-20 | 3 | -1/+218 |
| | | |||||
* | | pcm_convert: add function pcm_convert_channels() | Max Kellermann | 2011-10-20 | 1 | -0/+50 |
| | | | | | | | | For future internal use. | ||||
* | | pcm_mix: implement float samples | Max Kellermann | 2011-10-20 | 1 | -4/+31 |
| | |