diff options
author | Max Kellermann <max@duempel.org> | 2014-01-15 11:13:50 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2014-01-15 11:33:18 +0100 |
commit | 313d1d5d8379ce8c0763f43775e767832942a7ef (patch) | |
tree | f9182256644fa32c2df8880458fdb6a2c77d7f70 /src | |
parent | b7d6133593dcfca7b52eff13985f10a39098862f (diff) | |
download | mpd-313d1d5d8379ce8c0763f43775e767832942a7ef.tar.gz mpd-313d1d5d8379ce8c0763f43775e767832942a7ef.tar.xz mpd-313d1d5d8379ce8c0763f43775e767832942a7ef.zip |
decoder/ffmpeg: support libav v10_alpha1
Diffstat (limited to 'src')
-rw-r--r-- | src/decoder/FfmpegDecoderPlugin.cxx | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/decoder/FfmpegDecoderPlugin.cxx b/src/decoder/FfmpegDecoderPlugin.cxx index 1876425e2..593f42d39 100644 --- a/src/decoder/FfmpegDecoderPlugin.cxx +++ b/src/decoder/FfmpegDecoderPlugin.cxx @@ -38,6 +38,10 @@ extern "C" { #include <libavutil/avutil.h> #include <libavutil/log.h> #include <libavutil/mathematics.h> + +#if LIBAVUTIL_VERSION_MAJOR >= 53 +#include <libavutil/frame.h> +#endif } #include <assert.h> @@ -453,7 +457,11 @@ ffmpeg_decode(Decoder &decoder, InputStream &input) decoder_initialized(decoder, audio_format, input.seekable, total_time); +#if LIBAVUTIL_VERSION_MAJOR >= 53 + AVFrame *frame = av_frame_alloc(); +#else AVFrame *frame = avcodec_alloc_frame(); +#endif if (!frame) { LogError(ffmpeg_domain, "Could not allocate frame"); avformat_close_input(&format_context); @@ -497,7 +505,9 @@ ffmpeg_decode(Decoder &decoder, InputStream &input) } } while (cmd != DecoderCommand::STOP); -#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54, 28, 0) +#if LIBAVUTIL_VERSION_MAJOR >= 53 + av_frame_free(&frame); +#elif LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54, 28, 0) avcodec_free_frame(&frame); #else av_freep(&frame); |