[FFmpeg-cvslog] avfilter: Add missing emms_c when needed

Luca Barbato git at videolan.org
Wed Mar 5 13:55:36 CET 2014


ffmpeg | branch: master | Luca Barbato <lu_zero at gentoo.org> | Wed Mar  5 10:41:33 2014 +0100| [e995cf1bccc6e91bbaa6a8771e23fb3ab259c110] | committer: Luca Barbato

avfilter: Add missing emms_c when needed

Arch specific calls should have an emms_c following to keep the cpu
state consistent.

Reported-By: wm4
CC: libav-stable at libav.org

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

 libavfilter/af_volume.c  |    2 ++
 libavfilter/vf_gradfun.c |    1 +
 libavfilter/vf_hqdn3d.c  |    1 +
 3 files changed, 4 insertions(+)

diff --git a/libavfilter/af_volume.c b/libavfilter/af_volume.c
index 12d496e..59223e5 100644
--- a/libavfilter/af_volume.c
+++ b/libavfilter/af_volume.c
@@ -278,6 +278,8 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *buf)
         }
     }
 
+    emms_c();
+
     if (buf != out_buf)
         av_frame_free(&buf);
 
diff --git a/libavfilter/vf_gradfun.c b/libavfilter/vf_gradfun.c
index 79f6790..f7c4372 100644
--- a/libavfilter/vf_gradfun.c
+++ b/libavfilter/vf_gradfun.c
@@ -118,6 +118,7 @@ static void filter(GradFunContext *ctx, uint8_t *dst, uint8_t *src, int width, i
         ctx->filter_line(dst + y * dst_linesize, src + y * src_linesize, dc - r / 2, width, thresh, dither[y & 7]);
         if (++y >= height) break;
     }
+    emms_c();
 }
 
 static av_cold int init(AVFilterContext *ctx)
diff --git a/libavfilter/vf_hqdn3d.c b/libavfilter/vf_hqdn3d.c
index cd9f0d2..be6b761 100644
--- a/libavfilter/vf_hqdn3d.c
+++ b/libavfilter/vf_hqdn3d.c
@@ -147,6 +147,7 @@ static void denoise_depth(HQDN3DContext *s,
     else
         denoise_temporal(src, dst, frame_ant,
                          w, h, sstride, dstride, temporal, depth);
+    emms_c();
 }
 
 #define denoise(...) \



More information about the ffmpeg-cvslog mailing list