X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Finterpolate%2Finterpolate.C;h=e7133ab1122307565a1e87c9e06138e656f5450b;hb=02595181cff2bce97eb19634bc3855778cb8c3b6;hp=64fa589b188d109aef4ed3e7b28520977a4a9d94;hpb=9d832a1fff11b11aaa1108c460690ed05e2bdc05;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/plugins/interpolate/interpolate.C b/cinelerra-5.1/plugins/interpolate/interpolate.C index 64fa589b..e7133ab1 100644 --- a/cinelerra-5.1/plugins/interpolate/interpolate.C +++ b/cinelerra-5.1/plugins/interpolate/interpolate.C @@ -167,7 +167,7 @@ InterpolatePixelsMain::~InterpolatePixelsMain() delete engine; } -const char* InterpolatePixelsMain::plugin_title() { return _("Interpolate Bayer"); } +const char* InterpolatePixelsMain::plugin_title() { return N_("Interpolate Bayer"); } int InterpolatePixelsMain::is_realtime() { return 1; } @@ -278,7 +278,7 @@ int InterpolatePixelsMain::process_buffer(VFrame *frame, delete out_temp; out_temp = 0; } if( !out_temp ) - out_temp = new VFrame(0, -1, w, h, active_model, -1); + out_temp = new VFrame(w, h, active_model, 0); out_frame = out_temp; } @@ -327,19 +327,19 @@ int InterpolatePixelsMain::handle_opengl() get_output()->to_texture(); get_output()->enable_opengl(); - const char *shader_stack[] = { 0, 0, 0 }; - int current_shader = 0; - INTERPOLATE_COMPILE(shader_stack, current_shader) - unsigned int frag = VFrame::make_shader(0, - shader_stack[0], - 0); - if(frag > 0) - { - glUseProgram(frag); - glUniform1i(glGetUniformLocation(frag, "tex"), 0); - INTERPOLATE_UNIFORMS(frag) - } + const char *shader_stack[16]; + memset(shader_stack,0, sizeof(shader_stack)); + int current_shader = 0; + INTERPOLATE_COMPILE(shader_stack, current_shader); + + shader_stack[current_shader] = 0; + unsigned int shader = VFrame::make_shader(shader_stack); + if( shader > 0 ) { + glUseProgram(shader); + glUniform1i(glGetUniformLocation(shader, "tex"), 0); + INTERPOLATE_UNIFORMS(shader); + } get_output()->init_screen(); get_output()->bind_texture(0);