Arch specific calls should have an emms_c following to keep the cpu state consistent.
Reported-By: wm4 CC: [email protected] --- libavfilter/af_volume.c | 1 + libavfilter/vf_gradfun.c | 1 + libavfilter/vf_hqdn3d.c | 1 + 3 files changed, 3 insertions(+) diff --git a/libavfilter/af_volume.c b/libavfilter/af_volume.c index 12d496e..2cdfe23 100644 --- a/libavfilter/af_volume.c +++ b/libavfilter/af_volume.c @@ -262,6 +262,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *buf) vol->scale_samples(out_buf->extended_data[p], buf->extended_data[p], plane_samples, vol->volume_i); + emms_c(); } } else if (av_get_packed_sample_fmt(vol->sample_fmt) == AV_SAMPLE_FMT_FLT) { for (p = 0; p < vol->planes; p++) { 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(...) \ -- 1.8.5.1 _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
