From bb6e0abeba379a4820ce5c04bd6148343f22fc3b Mon Sep 17 00:00:00 2001 From: Sam Edwards Date: Sat, 31 Mar 2018 03:35:59 -0600 Subject: [PATCH] ffmpeg: Switch the video cursor to the new decoding API --- panda/src/ffmpeg/ffmpegVideoCursor.cxx | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/panda/src/ffmpeg/ffmpegVideoCursor.cxx b/panda/src/ffmpeg/ffmpegVideoCursor.cxx index cf2b01bf5c..21137b30e8 100644 --- a/panda/src/ffmpeg/ffmpegVideoCursor.cxx +++ b/panda/src/ffmpeg/ffmpegVideoCursor.cxx @@ -903,7 +903,18 @@ decode_frame(int &finished) { */ void FfmpegVideoCursor:: do_decode_frame(int &finished) { +#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 37, 100) + // While the audio cursor has a really nice async loop for decoding, we + // don't really do that much with video since we're already delegated to + // another thread here. This is just to silence the deprecation warning + // on avcodec_decode_video2. + avcodec_send_packet(_video_ctx, _packet); + + int ret = avcodec_receive_frame(_video_ctx, _frame); + finished = (ret == 0); +#else avcodec_decode_video2(_video_ctx, _frame, &finished, _packet); +#endif } /**