Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | ffmpeg decoder plugin: do not allocate an AVFrame on stack. | Anton Khirnov | 2013-04-05 | 1 | -5/+24 |
| | | | | AVFrame must be allocated with avcodec_alloc_frame(). | ||||
* | decoder/Opus: replace non-static data member initializers | Max Kellermann | 2013-02-04 | 1 | -6/+9 |
| | | | | Would require gcc 4.7, and MPD attempts to be compatible with gcc 4.6. | ||||
* | decoder/faad: use the newer NeAAC* API | Max Kellermann | 2013-01-29 | 1 | -41/+26 |
| | | | | Drop support for the old faacDec* API. | ||||
* | InputStream: use std::string | Max Kellermann | 2013-01-28 | 2 | -4/+6 |
| | |||||
* | InputStream: store references instead of pointers | Max Kellermann | 2013-01-28 | 1 | -1/+1 |
| | |||||
* | decoder/ffmpeg: require ffmpeg/libav 0.7.6 | Max Kellermann | 2013-01-28 | 3 | -82/+3 |
| | | | | | | | | This is the version present in Ubuntu Oneiric, the oldest distribution with gcc 4.6. Debian Squeeze is off target, because it has gcc 4.4, which is unable to compile MPD anyway. This commit drops all API compatibility hacks for older versions. | ||||
* | decoder/mp4ff: delete obsolete plugin | Max Kellermann | 2013-01-28 | 1 | -448/+0 |
| | | | | The underlying library has been obsolete for many years. | ||||
* | DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCond | Max Kellermann | 2013-01-27 | 1 | -2/+2 |
| | |||||
* | input_stream: forward-declare the struct | Max Kellermann | 2013-01-26 | 16 | -54/+71 |
| | | | | Hide the definition from C code, to prepare the transition to C++. | ||||
* | decoder/ffmpeg: convert to C++ | Max Kellermann | 2013-01-26 | 4 | -24/+66 |
| | |||||
* | Merge branch 'v0.17.x' | Max Kellermann | 2013-01-16 | 1 | -0/+5 |
|\ | |||||
| * | decoder/ffmpeg: support float planar audio | Brice Jaglin | 2013-01-16 | 1 | -0/+5 |
| | | |||||
* | | string_util.c: provide fallback strndup() implementation | Denis Krjuchkov | 2013-01-11 | 1 | -0/+1 |
| | | | | | | | | | | This patch also adds extern "C" { } wrapper around string_util.h to allow its usage in C++ code | ||||
* | | decoder/wavpack: convert to C++ | Max Kellermann | 2013-01-10 | 2 | -24/+57 |
| | | |||||
* | | decoder/wavpack: include cleanup | Max Kellermann | 2013-01-10 | 1 | -3/+0 |
| | | |||||
* | | decoder/OggUtil,Opus: move code to new class OggSyncState | Max Kellermann | 2013-01-08 | 4 | -36/+102 |
| | | |||||
* | | decoder/Opus: read total time | Max Kellermann | 2013-01-08 | 3 | -0/+100 |
| | | |||||
* | | decoder/OggUtil: add OggExpectPageSeek() | Max Kellermann | 2013-01-08 | 2 | -0/+56 |
| | | |||||
* | | decoder/Opus: move page reader into the decoder class | Max Kellermann | 2013-01-08 | 1 | -13/+34 |
| | | |||||
* | | decoder/Opus: move code to HandlePackets() | Max Kellermann | 2013-01-08 | 1 | -0/+7 |
| | | |||||
* | | decoder/Opus: make internal methods inline | Max Kellermann | 2013-01-08 | 1 | -5/+5 |
| | | |||||
* | | decoder/OggUtil: add OggExpectFirstPage() and OggExpectPageIn() | Max Kellermann | 2013-01-08 | 3 | -8/+48 |
| | | |||||
* | | decoder/Opus: use OggExpectPage() in main loop | Max Kellermann | 2013-01-08 | 1 | -7/+5 |
| | | |||||
* | | decoder/OggUtil: add struct forward declarations | Max Kellermann | 2013-01-08 | 2 | -5/+8 |
| | | |||||
* | | input_stream: add method _cheap_seeking() | Max Kellermann | 2013-01-07 | 1 | -3/+1 |
| | | | | | | | | Move code from the Vorbis decoder plugin. | ||||
* | | decoder/ogg_codec: convert to C++ | Max Kellermann | 2013-01-07 | 5 | -15/+8 |
| | | |||||
* | | decoder/vorbis: convert to C++ | Max Kellermann | 2013-01-07 | 4 | -19/+55 |
| | | |||||
* | | decoder_api.h, ...: add "extern C" | Max Kellermann | 2013-01-07 | 8 | -16/+7 |
| | | |||||
* | | DecoderAPI: _replay_gain() returns void | Max Kellermann | 2013-01-05 | 2 | -6/+4 |
| | | | | | | | | | | | | Let the function decoder_replay_gain() update decoder_control::replay_gain_db instead of letting each decoder plugin take care for that. | ||||
* | | don't include stdbool.h in C++ sources | Max Kellermann | 2013-01-02 | 2 | -2/+0 |
| | | | | | | | | The "bool" type is built-in. | ||||
* | | Add tag support for DSD (DSDIFF & DSF) decoders | Jurgen Kramer | 2012-10-27 | 4 | -2/+226 |
| | | |||||
* | | Merge branch 'v0.17.x' | Max Kellermann | 2012-10-05 | 1 | -12/+53 |
|\| | | | | | | | | | Conflicts: src/PlaylistSave.cxx | ||||
| * | decoder/ffmpeg: support planar audio | Max Kellermann | 2012-10-05 | 1 | -0/+6 |
| | | | | | | | | Implements Mantis feature request 3582. | ||||
| * | decoder/ffmpeg: fix playback of planar PCM data | Max Kellermann | 2012-10-05 | 1 | -8/+13 |
| | | | | | | | | | | Interleaving was completely wrong. This code was never used, so it didn't have an effect. | ||||
| * | decoder/ffmpeg: move code to copy_interleave_frame2() | Max Kellermann | 2012-10-05 | 1 | -5/+14 |
| | | |||||
| * | decoder/ffmpeg: ignore negative time stamps | Max Kellermann | 2012-10-05 | 1 | -1/+1 |
| | | | | | | | | Works around assertion failure in decoder_timestamp(). | ||||
| * | decoder/ffmpeg: show unsupported sample format name | Max Kellermann | 2012-10-05 | 1 | -2/+13 |
| | | | | | | | | Use av_get_sample_fmt_string() to obtain a human-readable string. | ||||
| * | decoder/ffmpeg: pass AVSampleFormat to ffmpeg_sample_format() | Max Kellermann | 2012-10-05 | 1 | -4/+9 |
| | | | | | | | | API simplification. | ||||
| * | decoder/ffmpeg: remove duplicate sample format error message | Max Kellermann | 2012-10-05 | 1 | -1/+6 |
| | | |||||
* | | decoder/flac: support FLAC files inside archives | Max Kellermann | 2012-10-04 | 4 | -2/+215 |
| | | | | | | | | | | | | Implement the "scan_stream" method that can read tags from any input_stream object. This requires a FLAC__IOCallbacks implementation based on the input_stream API. | ||||
* | | decoder/flac: move flac_scan_file2() to main plugin file | Max Kellermann | 2012-10-04 | 3 | -20/+9 |
| | | |||||
* | | decoder/flac: move callbacks to class FLACInput | Max Kellermann | 2012-10-02 | 5 | -110/+242 |
| | | |||||
* | | decoder/flac: add ctor/dtor to struct flac_data | Max Kellermann | 2012-10-02 | 3 | -34/+17 |
| | | |||||
* | | decoder/flac: add method FLACMetadataChain::Scan() | Max Kellermann | 2012-10-02 | 3 | -12/+12 |
| | | | | | | | | Merge common code. | ||||
* | | decoder/flac: don't use FLAC__Metadata_SimpleIterator | Max Kellermann | 2012-10-02 | 1 | -32/+8 |
| | | | | | | | | Use the new FLACMetadataIterator C++ class, which is more powerful. | ||||
* | | decoder/flac: add C++ libFLAC wrappers | Max Kellermann | 2012-10-02 | 2 | -14/+71 |
| | | | | | | | | | | Not using libFLAC++ because this library adds a lot of overhead due to virtual method calls. This new class library is zero-overhead. | ||||
* | | decoder/flac: eliminate the obsolete "track number" code | Max Kellermann | 2012-10-02 | 4 | -41/+18 |
| | | | | | | | | This has been deprecated by the "embcue" playlist plugin. | ||||
* | | decoder/flac: remove unused function flac_tag_load() | Max Kellermann | 2012-10-02 | 2 | -17/+0 |
| | | |||||
* | | decoder/flac: use C++ compiler | Max Kellermann | 2012-10-02 | 8 | -60/+109 |
| | | |||||
* | | {decoder,encoder}/flac: drop support for libFLAC 1.1 | Max Kellermann | 2012-10-02 | 2 | -168/+5 |
| | |