comparison libvo/vo_gl.c @ 26836:ba086caf1230

Add a filter strength parameter for blurring/sharpening scalers.
author reimar
date Sat, 24 May 2008 11:19:38 +0000
parents aadfce1c25c8
children ea6c5ea1aa64
comparison
equal deleted inserted replaced
26835:315e911d5762 26836:ba086caf1230
72 72
73 static int use_aspect; 73 static int use_aspect;
74 static int use_yuv; 74 static int use_yuv;
75 static int lscale; 75 static int lscale;
76 static int cscale; 76 static int cscale;
77 static float filter_strength;
77 static int yuvconvtype; 78 static int yuvconvtype;
78 static int use_rectangle; 79 static int use_rectangle;
79 static int err_shown; 80 static int err_shown;
80 static uint32_t image_width; 81 static uint32_t image_width;
81 static uint32_t image_height; 82 static uint32_t image_height;
179 float rgamma = exp(log(8.0) * eq_rgamma / 100.0); 180 float rgamma = exp(log(8.0) * eq_rgamma / 100.0);
180 float ggamma = exp(log(8.0) * eq_ggamma / 100.0); 181 float ggamma = exp(log(8.0) * eq_ggamma / 100.0);
181 float bgamma = exp(log(8.0) * eq_bgamma / 100.0); 182 float bgamma = exp(log(8.0) * eq_bgamma / 100.0);
182 gl_conversion_params_t params = {gl_target, yuvconvtype, 183 gl_conversion_params_t params = {gl_target, yuvconvtype,
183 bri, cont, hue, sat, rgamma, ggamma, bgamma, 184 bri, cont, hue, sat, rgamma, ggamma, bgamma,
184 texture_width, texture_height}; 185 texture_width, texture_height, filter_strength};
185 glSetupYUVConversion(&params); 186 glSetupYUVConversion(&params);
186 if (custom_prog) { 187 if (custom_prog) {
187 FILE *f = fopen(custom_prog, "r"); 188 FILE *f = fopen(custom_prog, "r");
188 if (!f) 189 if (!f)
189 mp_msg(MSGT_VO, MSGL_WARN, 190 mp_msg(MSGT_VO, MSGL_WARN,
807 {"slice-height", OPT_ARG_INT, &slice_height, (opt_test_f)int_non_neg}, 808 {"slice-height", OPT_ARG_INT, &slice_height, (opt_test_f)int_non_neg},
808 {"rectangle", OPT_ARG_INT, &use_rectangle,(opt_test_f)int_non_neg}, 809 {"rectangle", OPT_ARG_INT, &use_rectangle,(opt_test_f)int_non_neg},
809 {"yuv", OPT_ARG_INT, &use_yuv, (opt_test_f)int_non_neg}, 810 {"yuv", OPT_ARG_INT, &use_yuv, (opt_test_f)int_non_neg},
810 {"lscale", OPT_ARG_INT, &lscale, (opt_test_f)int_non_neg}, 811 {"lscale", OPT_ARG_INT, &lscale, (opt_test_f)int_non_neg},
811 {"cscale", OPT_ARG_INT, &cscale, (opt_test_f)int_non_neg}, 812 {"cscale", OPT_ARG_INT, &cscale, (opt_test_f)int_non_neg},
813 {"filter-strength", OPT_ARG_FLOAT, &filter_strength, NULL},
812 {"ati-hack", OPT_ARG_BOOL, &ati_hack, NULL}, 814 {"ati-hack", OPT_ARG_BOOL, &ati_hack, NULL},
813 {"force-pbo", OPT_ARG_BOOL, &force_pbo, NULL}, 815 {"force-pbo", OPT_ARG_BOOL, &force_pbo, NULL},
814 {"glfinish", OPT_ARG_BOOL, &use_glFinish, NULL}, 816 {"glfinish", OPT_ARG_BOOL, &use_glFinish, NULL},
815 {"swapinterval", OPT_ARG_INT, &swap_interval,NULL}, 817 {"swapinterval", OPT_ARG_INT, &swap_interval,NULL},
816 {"customprog", OPT_ARG_MSTRZ,&custom_prog, NULL}, 818 {"customprog", OPT_ARG_MSTRZ,&custom_prog, NULL},
829 scaled_osd = 0; 831 scaled_osd = 0;
830 use_aspect = 1; 832 use_aspect = 1;
831 use_yuv = 0; 833 use_yuv = 0;
832 lscale = 0; 834 lscale = 0;
833 cscale = 0; 835 cscale = 0;
836 filter_strength = 0.5;
834 use_rectangle = 0; 837 use_rectangle = 0;
835 use_glFinish = 0; 838 use_glFinish = 0;
836 ati_hack = 0; 839 ati_hack = 0;
837 force_pbo = 0; 840 force_pbo = 0;
838 swap_interval = 1; 841 swap_interval = 1;