From 71642f5d23ed4ae78172977ab46030e1f967b674 Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 16 Mar 2016 19:09:52 +0100 Subject: vo_opengl: fix sharpen filter Regression since commit 93546f0c. Fixes #2956. --- video/out/opengl/video.c | 3 ++- video/out/opengl/video_shaders.c | 4 ++-- video/out/opengl/video_shaders.h | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/video/out/opengl/video.c b/video/out/opengl/video.c index 3f0123eb65..939f979a86 100644 --- a/video/out/opengl/video.c +++ b/video/out/opengl/video.c @@ -2112,7 +2112,8 @@ static void pass_render_frame(struct gl_video *p) if (p->opts.unsharp != 0.0) { finish_pass_fbo(p, &p->unsharp_fbo, p->texture_w, p->texture_h, 0); - pass_sample_unsharp(p->sc, p->opts.unsharp); + int id = pass_read_fbo(p, &p->unsharp_fbo); + pass_sample_unsharp(p->sc, id, p->opts.unsharp); } pass_scale_main(p); diff --git a/video/out/opengl/video_shaders.c b/video/out/opengl/video_shaders.c index ff6663d9a5..62feb47738 100644 --- a/video/out/opengl/video_shaders.c +++ b/video/out/opengl/video_shaders.c @@ -398,10 +398,10 @@ void pass_sample_deband(struct gl_shader_cache *sc, struct deband_opts *opts, GLSLF("}\n"); } -void pass_sample_unsharp(struct gl_shader_cache *sc, float param) +void pass_sample_unsharp(struct gl_shader_cache *sc, int tex_num, float param) { GLSLF("// unsharp\n"); - sampler_prelude(sc, 0); + sampler_prelude(sc, tex_num); GLSLF("{\n"); GLSL(vec2 st1 = pt * 1.2;) diff --git a/video/out/opengl/video_shaders.h b/video/out/opengl/video_shaders.h index bbfeebb576..e010fdba55 100644 --- a/video/out/opengl/video_shaders.h +++ b/video/out/opengl/video_shaders.h @@ -41,6 +41,6 @@ void pass_delinearize(struct gl_shader_cache *sc, enum mp_csp_trc trc); void pass_sample_deband(struct gl_shader_cache *sc, struct deband_opts *opts, int tex_num, float tex_mul, GLenum tex_target, AVLFG *lfg); -void pass_sample_unsharp(struct gl_shader_cache *sc, float param); +void pass_sample_unsharp(struct gl_shader_cache *sc, int tex_num, float param); #endif -- cgit v1.2.3