aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* output/openal: move code to inline functionsMax Kellermann2011-12-131-9/+25
|
* output/openal: use alGetSourcei(AL_BUFFER) to force-unqueue buffersMax Kellermann2011-12-131-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" unsignedMax Kellermann2011-12-131-1/+1
|
* output/openal: remove bogus format check from _open()Max Kellermann2011-12-131-8/+0
| | | | The expression "!format" does not make sense, and cannot occur.
* output/fifo: implement output_plugin method delay()Max Kellermann2011-12-131-3/+11
|
* output/null: implement output_plugin method delay()Max Kellermann2011-12-131-3/+11
|
* output/null: don't initialize the "timer" attribute in _init()Max Kellermann2011-12-131-6/+1
| | | | Unnecessary overhead.
* Merge branch 'v0.16.x'Max Kellermann2011-12-136-14/+18
|\ | | | | | | | | | | Conflicts: NEWS configure.ac
| * output/openal: force 16 bit playback, as 8 bit doesn't workMax Kellermann2011-12-131-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 Kellermann2011-12-131-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 Kellermann2011-12-131-0/+2
| |
| * decoder/mp4ff: work around assertion failure in read() callbackMax Kellermann2011-12-131-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()sAvuton Olrich2011-12-121-2/+0
| |
| * configure/utils: Add ipv6 support for mingw buildAvuton Olrich2011-12-121-1/+5
| |
* | pcm_buffer: poison the old buffer before returning itMax Kellermann2011-12-131-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.hMax Kellermann2011-12-133-0/+4
| |
* | pcm_buffer: eliminate merge conflict falloutMax Kellermann2011-12-131-4/+0
| |
* | winmm_output_plugin: fail if wrong device specified instead of using fallback.Denis Krjuchkov2011-12-131-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 Krjuchkov2011-12-131-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 problemMax Kellermann2011-12-121-0/+13
| |
* | Merge branch 'v0.16.x'Max Kellermann2011-11-2817-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 countMax Kellermann2011-11-281-8/+12
| | | | | | | | | | Initialize the audio_format before calling avcodec_open(), because avcodec_open() will fill bogus values.
| * mapper: check "r" permission on music directoryMax Kellermann2011-11-281-0/+7
| | | | | | | | Yet another common support case.
| * mapper: check "x" permission on music directoryMax Kellermann2011-11-281-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 messageMax Kellermann2011-11-281-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 Kellermann2011-11-281-8/+11
| |
| * log: print reason for failureMax Kellermann2011-11-281-2/+2
| |
| * encoder/wave: support packed 24 bit samplesMax Kellermann2011-11-281-0/+5
| | | | | | | | Convert to padded 24 bit samples, instead of falling back to 16 bit.
| * encoder/null: use fifo_buffer instead of pcm_bufferMax Kellermann2011-11-281-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_bufferMax Kellermann2011-11-281-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_bufferMax Kellermann2011-11-281-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_bufferMax Kellermann2011-11-282-0/+163
| |
| * fifo_buffer: add function fifo_buffer_realloc()Max Kellermann2011-11-282-2/+47
| | | | | | | | For growing FIFO buffers.
| * fifo_buffer: add functions _capacity() and _available()Max Kellermann2011-11-272-0/+29
| |
| * pcm_buffer: add assertionsMax Kellermann2011-11-272-0/+10
| |
| * pcm_buffer: move formula to new function align_8k()Max Kellermann2011-11-271-2/+11
| |
| * pcm_buffer: un-inline pcm_buffer_get()Max Kellermann2011-11-272-14/+38
| | | | | | | | This method is too complex for inlining.
| * directory: rename attribute "stat" to "have_stat"Max Kellermann2011-11-272-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 boolMax Kellermann2011-11-272-2/+2
| |
| * stats: explicitly cast "time_t" to "long"Max Kellermann2011-11-271-1/+1
| | | | | | | | Fixes warning on mingw32.
| * decoder_api: cancel initial seek when song is not seekableMax Kellermann2011-11-271-0/+6
| | | | | | | | Fixes assertion failure.
| * path: autodetect filesystem encoding on Win32Denis Krjuchkov2011-10-231-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 WINVERMax Kellermann2011-10-133-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 includeMax Kellermann2011-10-131-0/+1
| |
| * event_pipe: fix WIN32 regressionMax Kellermann2011-10-131-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 startupMax Kellermann2011-11-271-0/+8
| | | | | | | | | | Ensure that the io.thread variable is set before entering the event loop.
* | decoder/dsdiff: provide floating point samplesMax Kellermann2011-10-201-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 integerMax Kellermann2011-10-201-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 floatMax Kellermann2011-10-203-1/+218
| |
* | pcm_convert: add function pcm_convert_channels()Max Kellermann2011-10-201-0/+50
| | | | | | | | For future internal use.