[FFmpeg-cvslog] ffplay: Set EMU_EDGE if dr1, this is an alternative fix for ticket40.

Michael Niedermayer git at videolan.org
Fri Apr 8 00:21:13 CEST 2011


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Thu Apr  7 15:12:03 2011 +0200| [f6d71b3942ae994ed576de81c9ddba2a08cb6f90] | committer: Michael Niedermayer

ffplay: Set EMU_EDGE if dr1, this is an alternative fix for ticket40.
Idea borrowed from mplayer.
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f6d71b3942ae994ed576de81c9ddba2a08cb6f90
---

 ffplay.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/ffplay.c b/ffplay.c
index 56236d8..e3e6e37 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;



More information about the ffmpeg-cvslog mailing list