aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder (unfollow)
Commit message (Collapse)AuthorFilesLines
2011-09-01decoder/oggflac: delete this obsolete pluginMax Kellermann1-354/+0
libOggFLAC has been deprecated for 5 years now, and we havn't been testing it for a long time. Let's delete it.
2011-08-27rename 'Timer' to 'struct timer'Jonathan Neuschäfer1-1/+1
2011-08-23decoder/mpcdec: fix gcc warningMax Kellermann1-2/+2
Move the variable "vbr_update_acc" into the #ifdef block.
2011-07-20wavpack: obey all decoder commands, stop at CUE track borderMax Kellermann1-9/+6
It used to ignore the decoder_data() return value.
2011-07-20decoder/wavpack: use the correct integer typesMax Kellermann1-10/+5
libwavpack provides int32_t samples, and wants uin32_t for sample counts.
2011-07-20decoder/wavpack: simplify the WavpackUnpackSamples()==0 checkMax Kellermann1-17/+14
.. and remove one indent level.
2011-07-18decoder/ffmpeg: use avformat_open_input() if availableMax Kellermann1-4/+35
av_open_input_stream() has been deprecated.
2011-07-18decoder: use AVDictionary instead of AVMetadataMax Kellermann1-1/+14
AVMetadata has been deprecated.
2011-07-03decoder/flac: validate the sample rate when scanning the tagMax Kellermann2-1/+5
Don't calculate the song duration when the sample rate is 0 (division by zero crash).
2011-07-03ffmpeg: workaround for semantic API change in recent ffmpeg versionsoblique1-2/+2
2011-05-09decoder/ffpmeg: don't use av_metadata_conv() in ffmpeg 0.7Max Kellermann1-0/+2
It's a no-op and deprecated.
2011-05-09decoder/ffmpeg: use AVIOContext instead of ByteIOContextMax Kellermann1-0/+12
2011-05-09decoder/ffmpeg: use avcodec_decode_audio3() if availableMax Kellermann1-1/+22
avcodec_decode_audio3() has been added in libavformat 52.25.0, and the predecessor avcodec_decode_audio2() has been deprecated.
2011-05-09decoder/ffmpeg: make variables more localMax Kellermann1-27/+16
2011-05-09decoder/ffmpeg: don't use deprecated CODEC_TYPE_AUDIO with new lavcAnton Khirnov1-0/+4
fixes build with lavc 53.
2011-05-09decoder/ffmpeg: define fallback macro AV_VERSION_INT()Max Kellermann1-1/+5
For ffmpeg < 0.5. Copied from libavutil 0.5.
2011-04-12decoder/ffmpeg: use avcodec_decode_audio3() if availableMax Kellermann1-1/+22
avcodec_decode_audio3() has been added in libavformat 52.25.0, and the predecessor avcodec_decode_audio2() has been deprecated.
2011-04-12decoder/ffmpeg: make variables more localMax Kellermann1-27/+16
2011-04-12decoder/ffmpeg: drop support for pre-0.5 ffmpegAnton Khirnov1-46/+0
All modern distros ship 0.5, so there's no need to support old and buggy ffmpeg versions.
2011-03-23decoder/flac: fix enum mismatch in flac_tell_cb()Max Kellermann1-1/+1
Fix clang warning.
2011-03-23decoder: PCM decoder: Inherit seekable from the input streamSimon Kagstrom1-1/+1
E.g., spotify isn't seekable.
2011-03-23decoder: PCM decoder: Break loop if EOF is encounteredSimon Kagstrom1-0/+4
Otherwise the song playing might go on forever.
2011-02-09general: whitespace cleanupThomas Jansen1-1/+1
Remove trailing whitespace found by this command: find -name '*.[ch]' | xargs grep "[[:space:]]$"
2011-02-03Set fadeout in gme_decoder_plugin. Due to the nature of the gme library,Tony Miller1-0/+3
this needs to be done for the end of songs to be detected.
2011-01-29copyright year 2011Max Kellermann28-28/+28
2011-01-21mpg123 decoder: implement seekingYuriy Kaminskiy1-2/+14
2011-01-21mpg123 decoder: report bitrateYuriy Kaminskiy1-1/+25
2010-12-22decoder: new "pcm" decoder pluginMax Kellermann2-0/+117
Just there to support the "cdio_paranoia" input plugin.
2010-12-21decoder/mad: work around build failure on SolarisAlex Viskovatoff1-2/+2
Rename the "version" struct, because it seems to be a reserved name on Solaris: "src/decoder/mad_decoder_plugin.c", line 550: (enum) tag redeclared: version cc: acomp failed for src/decoder/mad_decoder_plugin.c
2010-11-05decoder/{mp4ff,ffmpeg}: add extension ".m4b" (audio book)Max Kellermann2-2/+10
Same as ".m4a".
2010-11-04decoder/ffmpeg: check AVCodecContext.sample_fmt valueMax Kellermann1-7/+9
.. instead of av_get_bits_per_sample_format(). The SampleFormat enum value is authoritative.
2010-10-27decoder/sidplay: play mus, str, prg, x00 filesAlder Hornbridge1-0/+4
2010-10-27decoder/sidplay: play monaural SID tunes in monoAlder Hornbridge1-2/+10
2010-10-14Container support for gme decoder.Tony Miller1-8/+114
2010-09-25eliminate g_error() usageThomas Jansen1-2/+3
Replaced all occurrences of g_error() with MPD_ERROR() located in a new header file 'mpd_error.h'. This macro uses g_critical() to print the error message and then exits gracefully in contrast to g_error() which would internally call abort() to produce a core dump. The macro name is distinctive and allows to find all places with dubious error handling. The long-term goal is to get rid of MPD_ERROR() altogether. To facilitate the eventual removal of this macro it was added in a new header file rather than to an existing header file. This fixes #2995 and #3007.
2010-09-23decoder/mp4ff: support more variations of "album artist"Max Kellermann1-0/+4
According to the mantis bug report 2847, there are several possible variations of the "album artist" tag: - "album artist" - "album_artist" - "albumartist" This patch adds support for the latter two.
2010-09-23decoder_control: use g_free() to manage mixramp allocationsMax Kellermann2-7/+4
Be consistent with the rest of MPD, and don't use the non-portable header "malloc.h".
2010-07-23Added album tag support for libgme decoderRasi1-0/+2
2010-07-20decoder/mad: move RVA2 code to tag_rva2.cMax Kellermann1-89/+2
2010-07-20tag_rva2: set "gain", not "peak"Max Kellermann1-2/+2
RVA2 tags only store the "gain" value, there is no "peak" attribute.
2010-07-20decoder/mad: parse_rva2() returns boolMax Kellermann1-9/+8
2010-07-20decoder/wildmidi: support version 0.2.3Max Kellermann1-0/+4
In libwildmidi 0.2.3, the function WildMidi_SampledSeek() was removed, without changing the SO name. This patch adds an autoconf check for that function. Fall back to WildMidi_FastSeek() if WildMidi_SampledSeek() is not available anymore.
2010-07-19decoder/ffmpeg: fix libavformat 0.6 by using av_open_input_stream()Max Kellermann1-89/+65
libavformat 0.6 does not pass the original URI pointer to the "open" method, which leads to a crash because MPD was using a dirty hack to pass a pointer to that method. This patch switches to av_open_input_stream() with a custom ByteIOContext class, instead of doing the URI string hack with av_open_input_file(). Loosely based on a patch from Jasper St. Pierre.
2010-07-19decoder/ffmpeg: manual format probingMax Kellermann1-2/+47
Use the libavformat function av_probe_input_format() to probe the AVInputFormat, instead of letting av_open_input_file() do it implicitly. We will switch to av_open_input_stream() very soon, which does not have the probing code. Loosely based on a patch from Jasper St. Pierre.
2010-07-12ffmpeg: read the audio stream metadata in addition to globalAnton Khirnov1-1/+5
in some formats, e.g. vorbis, the metadata is stored per-stream.
2010-07-12ffmpeg: factor tag_type <-> ffmpeg tag name maps into a table.Anton Khirnov1-21/+32
2010-06-30decoder/ffmpeg: fix libavformat 0.6 by using av_open_input_stream()Max Kellermann1-82/+52
libavformat 0.6 does not pass the original URI pointer to the "open" method, which leads to a crash because MPD was using a dirty hack to pass a pointer to that method. This patch switches to av_open_input_stream() with a custom ByteIOContext class, instead of doing the URI string hack with av_open_input_file(). Loosely based on a patch from Jasper St. Pierre.
2010-06-30decoder/ffmpeg: manual format probingMax Kellermann1-4/+47
Use the libavformat function av_probe_input_format() to probe the AVInputFormat, instead of letting av_open_input_file() do it implicitly. We will switch to av_open_input_stream() very soon, which does not have the probing code. Loosely based on a patch from Jasper St. Pierre.
2010-06-30decoder/ffmpeg: free URI, fix memory leakMax Kellermann1-1/+3
Free the string allocated by decoder_get_uri().
2010-06-30decoder/vorbis: handle uri==NULLMax Kellermann1-0/+3
This fixes a theoretical crash, which has never occurred in practice.