aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder/FfmpegDecoderPlugin.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-08-13decoder/ffmpeg: use avcodec_descriptor_get() to determine codec nameMax Kellermann1-0/+9
In version 11, both ffmpeg and libav deprecate AVCodecContext::codec_name. The function avcodec_descriptor_get() has been introduced long ago.
2014-03-18decoder/ffmpeg: handle unknown stream start timeMax Kellermann1-2/+25
2014-03-18decoder/ffmpeg: pass AVSEEK_FLAG_ANY to av_seek_frame()Max Kellermann1-1/+1
This corrects a major mistake from commit 724a59aa - there was one small thing that commit was supposed to do, and it failed. AV_TIME_BASE is not a seek flag.
2014-01-15decoder/ffmpeg: support libav v10_alpha1Max Kellermann1-1/+11
2014-01-15decoder/ffmpeg: include cleanupMax Kellermann1-1/+0
2014-01-15decoder/ffmpeg: check for av_samples_get_buffer_size() errorsMax Kellermann1-0/+3
Fixes potential nullptr dereference.
2013-12-20fix FfmpegDecoderPlugin to use relative timestampsSteven O'Brien1-4/+6
2013-11-28decoder/ffmpeg: use IgnoreError instead of local Error instanceMax Kellermann1-5/+2
2013-11-04Log: add level "DEFAULT"Max Kellermann1-2/+2
Map LogLevel::INFO to G_LOG_LEVEL_INFO, and LogLevel::DEFAULT to G_LOG_LEVEL_MESSAGE. Now client connect/disconnect message are only logged on log_level "secure".
2013-10-23input_stream: rename struct to InputStreamMax Kellermann1-15/+15
2013-10-23InputStream: add method Rewind()Max Kellermann1-10/+4
2013-10-21decoder: rename the struct to "Decoder"Max Kellermann1-7/+7
2013-10-21decoder_plugin: rename struct to DecoderPluginMax Kellermann1-1/+1
2013-10-19*: use nullptr instead of NULLMax Kellermann1-17/+17
2013-10-19decoder/gme,input/curl,...: use static buffers instead of g_strdup_printf()Max Kellermann1-13/+7
2013-10-02Log: new logging library APIMax Kellermann1-27/+33
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
2013-09-27DecoderCommand: convert to strictly-typed enumMax Kellermann1-7/+6
2013-09-05Tag, ...: move to libtag.aMax Kellermann1-1/+1
2013-09-05InputLegacy: move functions to the input_stream classMax Kellermann1-3/+2
2013-09-04util/Error: new error passing libraryMax Kellermann1-6/+9
Replaces GLib's GError.
2013-08-07FfmpegDecoderPlugin: Allocate the interleaved buffer as needed instead of ↵Alexis Ballier1-17/+29
using an arbitrary big constant. Also, save a memcpy when FFmpeg outputs interleaved audio. Fixes build with FFmpeg 2.0.
2013-08-05decoder/ffmpeg: convert struct mpd_ffmpeg_stream to a classMax Kellermann1-47/+28
2013-08-04*: use gcc.h macros instead of GLibMax Kellermann1-4/+4
2013-08-04DecoderPlugin: pass config_param referenceMax Kellermann1-1/+1
2013-08-03audio_format: convert to C++Max Kellermann1-10/+15
2013-07-31decoder/ffmpeg: require ffmpeg/libav 0.8Max Kellermann1-89/+0
Now that even Debian stable has picked up version 0.8, we can safely make this a requirement, and remove a lot of old cruft.
2013-07-29audio_check: convert to C++Max Kellermann1-4/+1
2013-07-29tag_handler: convert to C++Max Kellermann1-1/+1
2013-07-28decoder_api: convert to C++Max Kellermann1-1/+1
2013-04-08decoder/ffmpeg: suppress warning about unused variableMax Kellermann1-0/+2
Only relevant for old ffmpeg versions.
2013-04-05ffmpeg decoder plugin: do not allocate an AVFrame on stack.Anton Khirnov1-5/+24
AVFrame must be allocated with avcodec_alloc_frame().
2013-01-28InputStream: use std::stringMax Kellermann1-3/+4
2013-01-28decoder/ffmpeg: require ffmpeg/libav 0.7.6Max Kellermann1-65/+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-26input_stream: forward-declare the structMax Kellermann1-0/+1
Hide the definition from C code, to prepare the transition to C++.
2013-01-26decoder/ffmpeg: convert to C++Max Kellermann1-18/+30
2013-01-16decoder/ffmpeg: support float planar audioBrice Jaglin1-0/+5
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-05-29decoder/ffmpeg: improve "decoding failed" messageJonathan Neuschäfer1-1/+1
"Frame skipped" might cause the impression that the decoding of a whole song failed.
2012-05-29decoder/ffmpeg: add webm as a supported formatJonathan Neuschäfer1-1/+3
2012-02-13decoder/ffmpeg: read the "year" tagMax Kellermann1-1/+1
This was disabled when compiled with a new ffmpeg version. Older ffmpeg versions used it explicitly, while newer ones may pass it through from the codec.
2012-02-11decoder_plugin: scan tags with callback tableMax Kellermann1-15/+16
Pass a callback table to scan_file() and scan_stream(), instead of returning a tag object.
2012-02-11decoder/ffmpeg: move code to ffmpeg_metadata.cMax Kellermann1-46/+1
2012-02-11decoder/ffmpeg: remove AV_VERSION_INT definitionMax Kellermann1-5/+0
All supported ffmpeg/libav versions have this.
2012-02-03decoder/ffmpeg: use AV_SAMPLE_FMT_* if availableMax Kellermann1-0/+8
Implements support for libavcodec 0.9, which removes the compatibility macros SAMPLE_FMT_*