diff --git a/libeplayer3/container/container_ffmpeg.c b/libeplayer3/container/container_ffmpeg.c index 6120998..74274f3 100644 --- a/libeplayer3/container/container_ffmpeg.c +++ b/libeplayer3/container/container_ffmpeg.c @@ -2294,11 +2294,13 @@ int32_t container_ffmpeg_update_tracks(Context_t *context, char *filename, int32 if (track.avCodecCtx) { ffmpeg_printf(10, " Handle inject_as_pcm = %d\n", track.inject_as_pcm); -#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59,0,100) + +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59, 0, 100) AVCodec *codec = avcodec_find_decoder(get_codecpar(stream)->codec_id); #else const AVCodec *codec = avcodec_find_decoder(get_codecpar(stream)->codec_id); #endif + int errorCode = avcodec_open2(track.avCodecCtx, codec, NULL); if (codec != NULL && !errorCode) { diff --git a/libeplayer3/external/ffmpeg/put_bits.h b/libeplayer3/external/ffmpeg/put_bits.h index 2265de4..7d76f2e 100644 --- a/libeplayer3/external/ffmpeg/put_bits.h +++ b/libeplayer3/external/ffmpeg/put_bits.h @@ -28,9 +28,11 @@ #include #include +#include #include "libavutil/intreadwrite.h" #include "libavutil/avassert.h" +#include "libavutil/common.h" typedef struct PutBitContext { diff --git a/libeplayer3/external/ffmpeg/src/bitstream.c b/libeplayer3/external/ffmpeg/src/bitstream.c index c992273..b9c5b43 100644 --- a/libeplayer3/external/ffmpeg/src/bitstream.c +++ b/libeplayer3/external/ffmpeg/src/bitstream.c @@ -30,6 +30,7 @@ #include #include +#include void avpriv_align_put_bits(PutBitContext *s) diff --git a/libeplayer3/include/manager.h b/libeplayer3/include/manager.h index 7e8b983..f610769 100644 --- a/libeplayer3/include/manager.h +++ b/libeplayer3/include/manager.h @@ -9,6 +9,10 @@ #include #include #include +#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59, 0, 100) +#include +#include +#endif typedef enum {