aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* | pcm_mix: implement float samplesMax Kellermann2011-10-201-4/+31
| |
* | pcm_volume: implement float samplesMax Kellermann2011-10-202-2/+19
| |
* | audio_format: basic support for floating point samplesMax Kellermann2011-10-2011-0/+138
| | | | | | | | | | Support for conversion from float to 16, 24 and 32 bit integer samples.
* | pcm_mix: return bool, make unimplemented format non-fatalMax Kellermann2011-10-203-28/+43
| | | | | | | | Let the caller deal with a failure.
* | pcm_volume: pass an "end" pointer instead of a sample countMax Kellermann2011-10-201-20/+13
| |
* | pcm_volume: remove "default" statementMax Kellermann2011-10-201-3/+9
| | | | | | | | Don't suppress gcc warnings.
* | pcm_volume: "length" is a "size_t", not "int"Max Kellermann2011-10-202-2/+2
| |
* | pcm_resample: add function pcm_resample_float()Max Kellermann2011-10-204-0/+95
| | | | | | | | | | A version of the resampler that doesn't need int->float->int conversion.
* | pcm_format: move "case" code to separate functionsMax Kellermann2011-10-201-95/+166
| | | | | | | | Reduce the mess with local variables inside switch{}.
* | pcm_*: add "restrict" keywordsMax Kellermann2011-10-202-18/+29
| | | | | | | | Allow more compiler optimizations.
* | crossfade: include cleanupMax Kellermann2011-10-201-1/+0
| |
* | pcm_format: pass an "end" pointer instead of a sample countMax Kellermann2011-10-191-58/+28
| |
* | pcm_channels: pass an "end" pointer instead of a sample countMax Kellermann2011-10-191-39/+40
| |
* | pcm_{channels,resample}: pass channel count as integer, not uint8_tMax Kellermann2011-10-197-27/+27
| | | | | | | | Reduces number of implicit integer conversions.
* | pcm_{channels,format}: add alignment assertionsMax Kellermann2011-10-192-0/+12
| |
* | pcm_utils: add function pcm_end_pointer()Max Kellermann2011-10-192-1/+13
| |
* | pcm_byteswap: use "end" pointer instead of buffer sizeMax Kellermann2011-10-101-6/+12
| |
* | pcm_dither: pass an "end" pointer instead of a sample countMax Kellermann2011-10-103-19/+14
| | | | | | | | | | This is easier and more efficient to loop on, because only two variables get modified (src and dest).