diff --git a/ffplay.c b/ffplay.c index 56236d861b..e3e6e378dc 100644 --- a/ffplay.c +++ b/ffplay.c @@ -31,6 +31,7 @@ #include "libavutil/imgutils.h" #include "libavutil/parseutils.h" #include "libavutil/samplefmt.h" +#include "libavutil/avassert.h" #include "libavformat/avformat.h" #include "libavdevice/avdevice.h" #include "libswscale/swscale.h" @@ -1582,6 +1583,8 @@ static int input_get_buffer(AVCodecContext *codec, AVFrame *pic) int i, w, h, stride[4]; unsigned edge; + av_assert0(codec->flags & CODEC_FLAG_EMU_EDGE); + if (codec->codec->capabilities & CODEC_CAP_NEG_LINESIZES) perms |= AV_PERM_NEG_LINESIZES; @@ -1664,8 +1667,8 @@ static int input_init(AVFilterContext *ctx, const char *args, void *opaque) codec = priv->is->video_st->codec; codec->opaque = ctx; if((codec->codec->capabilities & CODEC_CAP_DR1) - && codec->codec_id != CODEC_ID_SVQ1 //chroma alignment from lavfi is insufficient ) { + codec->flags |= CODEC_FLAG_EMU_EDGE; priv->use_dr1 = 1; codec->get_buffer = input_get_buffer; codec->release_buffer = input_release_buffer;