aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-01-28InputStream: use std::stringMax Kellermann2-4/+6
2013-01-28InputStream: store references instead of pointersMax Kellermann1-1/+1
2013-01-28decoder/ffmpeg: require ffmpeg/libav 0.7.6Max Kellermann3-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.
2013-01-28decoder/mp4ff: delete obsolete pluginMax Kellermann1-448/+0
The underlying library has been obsolete for many years.
2013-01-27DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCondMax Kellermann1-2/+2
2013-01-26input_stream: forward-declare the structMax Kellermann16-54/+71
Hide the definition from C code, to prepare the transition to C++.
2013-01-26decoder/ffmpeg: convert to C++Max Kellermann4-24/+66
2013-01-16decoder/ffmpeg: support float planar audioBrice Jaglin1-0/+5
2013-01-11string_util.c: provide fallback strndup() implementationDenis Krjuchkov1-0/+1
This patch also adds extern "C" { } wrapper around string_util.h to allow its usage in C++ code
2013-01-10decoder/wavpack: convert to C++Max Kellermann2-24/+57
2013-01-10decoder/wavpack: include cleanupMax Kellermann1-3/+0
2013-01-08decoder/OggUtil,Opus: move code to new class OggSyncStateMax Kellermann4-36/+102
2013-01-08decoder/Opus: read total timeMax Kellermann3-0/+100
2013-01-08decoder/OggUtil: add OggExpectPageSeek()Max Kellermann2-0/+56
2013-01-08decoder/Opus: move page reader into the decoder classMax Kellermann1-13/+34
2013-01-08decoder/Opus: move code to HandlePackets()Max Kellermann1-0/+7
2013-01-08decoder/Opus: make internal methods inlineMax Kellermann1-5/+5
2013-01-08decoder/OggUtil: add OggExpectFirstPage() and OggExpectPageIn()Max Kellermann3-8/+48
2013-01-08decoder/Opus: use OggExpectPage() in main loopMax Kellermann1-7/+5
2013-01-08decoder/OggUtil: add struct forward declarationsMax Kellermann2-5/+8
2013-01-07input_stream: add method _cheap_seeking()Max Kellermann1-3/+1
Move code from the Vorbis decoder plugin.
2013-01-07decoder/ogg_codec: convert to C++Max Kellermann5-15/+8
2013-01-07decoder/vorbis: convert to C++Max Kellermann4-19/+55
2013-01-07decoder_api.h, ...: add "extern C"Max Kellermann8-16/+7
2013-01-05DecoderAPI: _replay_gain() returns voidMax Kellermann2-6/+4
Let the function decoder_replay_gain() update decoder_control::replay_gain_db instead of letting each decoder plugin take care for that.
2013-01-02don't include stdbool.h in C++ sourcesMax Kellermann2-2/+0
The "bool" type is built-in.
2012-10-27Add tag support for DSD (DSDIFF & DSF) decodersJurgen Kramer4-2/+226
2012-10-05decoder/ffmpeg: support planar audioMax Kellermann1-0/+6
Implements Mantis feature request 3582.
2012-10-05decoder/ffmpeg: fix playback of planar PCM dataMax Kellermann1-8/+13
Interleaving was completely wrong. This code was never used, so it didn't have an effect.
2012-10-05decoder/ffmpeg: move code to copy_interleave_frame2()Max Kellermann1-5/+14
2012-10-05decoder/ffmpeg: ignore negative time stampsMax Kellermann1-1/+1
Works around assertion failure in decoder_timestamp().
2012-10-05decoder/ffmpeg: show unsupported sample format nameMax Kellermann1-2/+13
Use av_get_sample_fmt_string() to obtain a human-readable string.
2012-10-05decoder/ffmpeg: pass AVSampleFormat to ffmpeg_sample_format()Max Kellermann1-4/+9
API simplification.
2012-10-05decoder/ffmpeg: remove duplicate sample format error messageMax Kellermann1-1/+6
2012-10-04decoder/flac: support FLAC files inside archivesMax Kellermann4-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.
2012-10-04decoder/flac: move flac_scan_file2() to main plugin fileMax Kellermann3-20/+9
2012-10-02decoder/flac: move callbacks to class FLACInputMax Kellermann5-110/+242
2012-10-02decoder/flac: add ctor/dtor to struct flac_dataMax Kellermann3-34/+17
2012-10-02decoder/flac: add method FLACMetadataChain::Scan()Max Kellermann3-12/+12
Merge common code.
2012-10-02decoder/flac: don't use FLAC__Metadata_SimpleIteratorMax Kellermann1-32/+8
Use the new FLACMetadataIterator C++ class, which is more powerful.
2012-10-02decoder/flac: add C++ libFLAC wrappersMax Kellermann2-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.
2012-10-02decoder/flac: eliminate the obsolete "track number" codeMax Kellermann4-41/+18
This has been deprecated by the "embcue" playlist plugin.
2012-10-02decoder/flac: remove unused function flac_tag_load()Max Kellermann2-17/+0
2012-10-02decoder/flac: use C++ compilerMax Kellermann8-60/+109
2012-10-02{decoder,encoder}/flac: drop support for libFLAC 1.1Max Kellermann2-168/+5
2012-09-25decoder/adplug: new decoder pluginMax Kellermann2-0/+173
2012-09-25decoder/vorbis: skip 16 bit quantisation, provide float samplesSimon Hosie1-0/+44
Internally the vorbis (non-Tremor) decoder is working in floating point, and it's not really necessary to cut the output back to 16-bit if the soundcard or OS supports higher resolution. The decoder can be trivially modified to bypass its internal quantisation and produce floating-point output, and a separate quantisation can be used as appropriate to the platform.
2012-09-25decoder/vorbis: rename local variablesMax Kellermann1-14/+13
2012-09-25decoder/vorbis: improved support for initial seekMax Kellermann1-1/+1
Call decoder_get_command() before doing anything else.
2012-09-25decoder/vorbis: make variables more localMax Kellermann1-26/+20