diff options
-rw-r--r-- | common/av_common.c | 1 | ||||
-rw-r--r-- | demux/demux_lavf.c | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/common/av_common.c b/common/av_common.c index 3a424b0c62..95c6947eb7 100644 --- a/common/av_common.c +++ b/common/av_common.c @@ -160,6 +160,7 @@ void mp_set_av_packet(AVPacket *dst, struct demux_packet *mpkt, AVRational *tb) dst->side_data_elems = mpkt->avpacket->side_data_elems; if (dst->data == mpkt->avpacket->data) dst->buf = mpkt->avpacket->buf; + dst->flags |= mpkt->avpacket->flags; } if (mpkt && tb && tb->num > 0 && tb->den > 0) dst->duration = mpkt->duration / av_q2d(*tb); diff --git a/demux/demux_lavf.c b/demux/demux_lavf.c index 43f2569369..5aed536bf4 100644 --- a/demux/demux_lavf.c +++ b/demux/demux_lavf.c @@ -938,6 +938,10 @@ static int demux_lavf_fill_buffer(demuxer_t *demux) #endif dp->pos = pkt->pos; dp->keyframe = pkt->flags & AV_PKT_FLAG_KEY; +#if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(57, 50, 100) + if (pkt->flags & AV_PKT_FLAG_DISCARD) + MP_ERR(demux, "Edit lists are not correctly supported (FFmpeg issue).\n"); +#endif av_packet_unref(pkt); if (priv->format_hack.clear_filepos) |