Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge tag 'v0.19.11' | Max Kellermann | 2015-10-27 | 3 | -14/+27 |
|\ | |||||
| * | gme: don't loop forever, fall back to GME's default play length | Max Kellermann | 2015-10-26 | 1 | -3/+3 |
| | | | | | | | | Fixes http://bugs.musicpd.org/view.php?id=4432 | ||||
| * | decoder/gme: free the gme_info_t as early as possible | Max Kellermann | 2015-10-26 | 1 | -6/+7 |
| | | |||||
| * | decoder/gme: call decoder_seek_error() on seek error | Max Kellermann | 2015-10-26 | 1 | -2/+4 |
| | | |||||
| * | decoder/ffmpeg: fix crash due to wrong avio_alloc_context() call | Max Kellermann | 2015-10-26 | 1 | -4/+13 |
| | | | | | | | | | | | | | | | | Allocate the buffer dynamically using av_malloc(), and free AVIOContext.buffer in the destructor, as mandated by the libavformat documentation. Fixes http://bugs.musicpd.org/view.php?id=4446 | ||||
| * | decoder/mpcdec: use SampleTraits<SampleFormat::S24_P32> | Max Kellermann | 2015-10-16 | 1 | -11/+13 |
| | | | | | | | | | | | | Eliminates some duplicate code, and as a side effect, this works around clang 3.8 compiler warning because a negative value was shifted. | ||||
| * | decoder/mpcdec: use Clamp() | Max Kellermann | 2015-10-16 | 1 | -6/+2 |
| | | |||||
* | | decoder/gme: log the emulator type | Max Kellermann | 2015-10-26 | 1 | -0/+3 |
| | | |||||
* | | decoder/gme: add option "accuracy" | Max Kellermann | 2015-10-26 | 1 | -1/+24 |
| | | |||||
* | | decoder/mad: reduce memory usage while scanning tags | Max Kellermann | 2015-10-19 | 1 | -3/+11 |
| | | | | | | | | Allocate the frame pointers only when actually decoding the file. | ||||
* | | util/StringView: new utility class | Max Kellermann | 2015-09-30 | 1 | -1/+2 |
| | | |||||
* | | decoder/mpcdec: read the bit rate | Max Kellermann | 2015-08-05 | 1 | -4/+2 |
| | | | | | | | | | | This was lost in commit 8ead8f7ea, because this was never implemented for the new API. | ||||
* | | decoder/mpcdec: use SampleTraits<SampleFormat::S24_P32> | Max Kellermann | 2015-08-05 | 1 | -11/+13 |
| | | |||||
* | | decoder/mpcdec: use Clamp() | Max Kellermann | 2015-08-05 | 1 | -6/+2 |
| | | |||||
* | | decoder/mpcdec: make buffer more local | Max Kellermann | 2015-08-05 | 1 | -2/+1 |
| | | | | | | | | Allow the compiler to invalidate buffer contents. | ||||
* | | pcm/Interleave: add optimization for 32 bit samples | Max Kellermann | 2015-06-22 | 1 | -7/+3 |
| | | | | | | | | Move code from the "vorbis" decoder. | ||||
* | | decoder/ffmpeg: move code to pcm/Interleave.cxx | Max Kellermann | 2015-06-22 | 1 | -19/+6 |
| | | |||||
* | | decoder/ffmpeg: check for commands earlier | Max Kellermann | 2015-06-22 | 1 | -22/+22 |
| | | | | | | | | | | Improve initial seek by not reading/decoding the first frame before checking for the seek command. | ||||
* | | decoder/vorbis: check STOP before entering the loop | Max Kellermann | 2015-06-22 | 1 | -2/+2 |
| | | |||||
* | | Merge tag 'v0.19.10' | Max Kellermann | 2015-06-21 | 1 | -7/+67 |
|\| | |||||
| * | decoder/ffmpeg: skip unwanted samples after seeking | Max Kellermann | 2015-06-20 | 1 | -5/+48 |
| | | | | | | | | | | When seeking to the beginning of a packet, skip the samples that come before the desired time stamp. | ||||
| * | decoder/ffmpeg: use AVSEEK_FLAG_BACKWARD for seeking | Max Kellermann | 2015-06-20 | 1 | -1/+5 |
| | | | | | | | | | | | | Ask FFmpeg to seek to the next packet boundary *before* the seek position, so we don't miss audio data. Now we get too much, but we'll solve that in the next commit. | ||||
| * | decoder/ffmpeg: move code to StreamRelativePts() | Max Kellermann | 2015-06-19 | 1 | -6/+20 |
| | | |||||
* | | fs/NarrowPath: new utility class | Max Kellermann | 2015-03-05 | 1 | -2/+3 |
| | | |||||
* | | decoder/sndfile, ...: update API documentation | Max Kellermann | 2015-01-31 | 3 | -4/+4 |
| | | |||||
* | | decoder/DsdLib: fix integer overflow in ID3 size calculation | Max Kellermann | 2015-01-30 | 1 | -2/+4 |
| | | |||||
* | | decoder/DsdLib: check size before seeking | Max Kellermann | 2015-01-30 | 1 | -4/+3 |
| | | |||||
* | | decoder/DsdLib: don't use InputStream::GetOffset() after seeking | Max Kellermann | 2015-01-30 | 1 | -3/+2 |
| | | | | | | | | We already know the offset. | ||||
* | | decoder/DsdLib: pass offset_type t dsdlib_tag_id3() | Max Kellermann | 2015-01-30 | 2 | -4/+2 |
| | | |||||
* | | Merge branch 'v0.19.x' | Max Kellermann | 2015-01-29 | 1 | -8/+7 |
|\| | |||||
| * | decoder/DsdLib: use new[] to allocate the ID3 buffer | Max Kellermann | 2015-01-29 | 1 | -3/+5 |
| | | | | | | | | | | Don't abort the process if there's not enough memory. This buffer is not important and can be large. | ||||
| * | decoder/DsdLib: free ID3 buffer right after id3_tag_parse() | Max Kellermann | 2015-01-29 | 1 | -5/+2 |
| | | | | | | | | Merge two free() calls. | ||||
| * | decoder/DsdLib: raise ID3 tag limit to 1 MB | Max Kellermann | 2015-01-29 | 1 | -1/+1 |
| | | | | | | | | | | A bug report was submitted with a 600 kB ID3 tag that could not be read by MPD. | ||||
* | | config/Param: split block-specific attributes to new struct ConfigBlock | Max Kellermann | 2015-01-21 | 15 | -29/+29 |
| | | | | | | | | The old struct config_param remains only for top-level string options. | ||||
* | | config/Option: convert to strictly-typed enum | Max Kellermann | 2015-01-21 | 1 | -1/+1 |
| | | |||||
* | | Copyright year 2015 | Max Kellermann | 2015-01-01 | 80 | -80/+80 |
| | | |||||
* | | Merge branch 'v0.19.x' | Max Kellermann | 2014-12-26 | 1 | -0/+1 |
|\| | |||||
| * | decoder/ffmpeg: support interleaved floating point | Max Kellermann | 2014-12-23 | 1 | -0/+1 |
| | | |||||
* | | Merge branch 'v0.19.x' | Max Kellermann | 2014-12-23 | 1 | -6/+13 |
|\| | |||||
| * | decoder/DsdLib: add missing stdlib.h include | Max Kellermann | 2014-12-23 | 1 | -0/+1 |
| | | |||||
| * | DSF ID3 tags hitting 4k size limit | Jan Brittenson | 2014-12-23 | 1 | -6/+12 |
| | | | | | | | | | | | | | | | | | | Here's a change to dynamically allocate the DSD ID3 tag buffer. Pretty much anything with cover art is going to exceed the existing, static 4k limit... Here's a change to dynamically allocate the buffer and sanity check it at some upper limit. I rather arbitrarily pulled 256k out of thin air just to keep a corrupt file from causing it to trying to allocate a buffer larger than available memory. | ||||
* | | decoder/ffmpeg: fix indent | Max Kellermann | 2014-12-23 | 1 | -2/+2 |
| | | |||||
* | | decoder/ffmpeg: simplify mpd_ffmpeg_open_input() | Max Kellermann | 2014-12-22 | 1 | -17/+12 |
| | | |||||
* | | decoder/ffmpeg: move functions into the AvioStream struct | Max Kellermann | 2014-12-22 | 2 | -20/+37 |
| | | |||||
* | | decoder/ffmpeg: move code to lib/ffmpeg/Init.cxx | Max Kellermann | 2014-12-21 | 1 | -4/+2 |
| | | |||||
* | | decoder/ffmpeg: move code to lib/ffmpeg/LogCallback.cxx | Max Kellermann | 2014-12-20 | 1 | -34/+2 |
| | | |||||
* | | decoder/ffmpeg: remove obsolete comment | Max Kellermann | 2014-12-19 | 1 | -1/+0 |
| | | |||||
* | | decoder/ffmpeg: convert enums to constexpr | Max Kellermann | 2014-12-19 | 1 | -4/+2 |
| | | |||||
* | | decoder/ffmpeg: move struct AvioStream to FfmpegIo.hxx | Max Kellermann | 2014-12-19 | 3 | -74/+139 |
| | | |||||
* | | decoder/ffmpeg: remove unnecessary nullptr check for av_free() | Max Kellermann | 2014-12-19 | 1 | -2/+1 |
| | |