avdemux: fix build with FFmpeg 4.4
authorTim-Philipp Müller <tim@centricular.com>
Tue, 13 Apr 2021 00:07:15 +0000 (01:07 +0100)
committerTim-Philipp Müller <tim@centricular.com>
Tue, 13 Apr 2021 00:14:52 +0000 (01:14 +0100)
Direct access to avstream->index_entries was removed
in favour of the newly added avformat_index_get_entry()
and friends.

Fixes https://gitlab.freedesktop.org/gstreamer/gst-libav/-/issues/85

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/127>

ext/libav/gstavdemux.c

index 21b46aa..80a0920 100644 (file)
@@ -483,7 +483,11 @@ gst_ffmpegdemux_do_seek (GstFFMpegDemux * demux, GstSegment * segment)
     GST_LOG_OBJECT (demux, "keyframeidx: %d", keyframeidx);
 
     if (keyframeidx >= 0) {
+#if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(58,78,0)
+      fftarget = avformat_index_get_entry (stream, keyframeidx)->timestamp;
+#else
       fftarget = stream->index_entries[keyframeidx].timestamp;
+#endif
       target = gst_ffmpeg_time_ff_to_gst (fftarget, stream->time_base);
 
       GST_LOG_OBJECT (demux,