diff --git a/libavfilter/af_volume.c b/libavfilter/af_volume.c index 3f3ad47258..c8e88975e7 100644 --- a/libavfilter/af_volume.c +++ b/libavfilter/af_volume.c @@ -282,6 +282,8 @@ static int filter_frame(AVFilterLink *inlink, AVFilterBufferRef *buf) } } + emms_c(); + if (buf != out_buf) avfilter_unref_buffer(buf); diff --git a/libavfilter/vf_gradfun.c b/libavfilter/vf_gradfun.c index 79e149009d..b9fd50f826 100644 --- a/libavfilter/vf_gradfun.c +++ b/libavfilter/vf_gradfun.c @@ -117,6 +117,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, const char *args) diff --git a/libavfilter/vf_hqdn3d.c b/libavfilter/vf_hqdn3d.c index e2d90d53ab..ae794d8df0 100644 --- a/libavfilter/vf_hqdn3d.c +++ b/libavfilter/vf_hqdn3d.c @@ -155,6 +155,7 @@ static void denoise_depth(HQDN3DContext *hqdn3d, else denoise_temporal(src, dst, frame_ant, w, h, sstride, dstride, temporal, depth); + emms_c(); } #define denoise(...) \