X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Finterpolate%2Finterpolate.C;fp=cinelerra-5.1%2Fplugins%2Finterpolate%2Finterpolate.C;h=64fa589b188d109aef4ed3e7b28520977a4a9d94;hb=9d832a1fff11b11aaa1108c460690ed05e2bdc05;hp=4c130eca4893f0966318a5d75952d4a778b168be;hpb=4fedf98530b3a6ff1ada6d2b9fbbc470e3df300c;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/plugins/interpolate/interpolate.C b/cinelerra-5.1/plugins/interpolate/interpolate.C index 4c130eca..64fa589b 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 Pixels"); } +const char* InterpolatePixelsMain::plugin_title() { return _("Interpolate Bayer"); } int InterpolatePixelsMain::is_realtime() { return 1; } @@ -400,6 +400,13 @@ void InterpolatePixelsUnit::process_package(LoadPackage *package) float color_matrix[9]; memcpy(color_matrix, server->color_matrix, sizeof(color_matrix)); +// printf("InterpolatePixelsUnit::process_package %d color_matrix=", __LINE__); +// for(int i = 0; i < 9; i++) +// { +// printf("%f ", color_matrix[i]); +// } +// printf("\n"); + y1 = MAX(y1, 1); y2 = MIN(y2, h - 1); @@ -451,9 +458,14 @@ void InterpolatePixelsUnit::process_package(LoadPackage *package) b = current_row[BLUE]; } - out_row[0] = r * color_matrix[0] + g * color_matrix[1] + b * color_matrix[2]; - out_row[1] = r * color_matrix[3] + g * color_matrix[4] + b * color_matrix[5]; - out_row[2] = r * color_matrix[6] + g * color_matrix[7] + b * color_matrix[8]; +// out_row[0] = r * color_matrix[0] + g * color_matrix[1] + b * color_matrix[2]; +// out_row[1] = r * color_matrix[3] + g * color_matrix[4] + b * color_matrix[5]; +// out_row[2] = r * color_matrix[6] + g * color_matrix[7] + b * color_matrix[8]; + + out_row[0] = r; + out_row[1] = g; + out_row[2] = b; + prev_row += components; current_row += components; next_row += components; @@ -486,9 +498,14 @@ void InterpolatePixelsUnit::process_package(LoadPackage *package) b = (prev_row[BLUE] + next_row[BLUE]) / 2; } - out_row[0] = r * color_matrix[0] + g * color_matrix[1] + b * color_matrix[2]; - out_row[1] = r * color_matrix[3] + g * color_matrix[4] + b * color_matrix[5]; - out_row[2] = r * color_matrix[6] + g * color_matrix[7] + b * color_matrix[8]; +// out_row[0] = r * color_matrix[0] + g * color_matrix[1] + b * color_matrix[2]; +// out_row[1] = r * color_matrix[3] + g * color_matrix[4] + b * color_matrix[5]; +// out_row[2] = r * color_matrix[6] + g * color_matrix[7] + b * color_matrix[8]; + + out_row[0] = r; + out_row[1] = g; + out_row[2] = b; + prev_row += components; current_row += components; next_row += components; @@ -514,6 +531,10 @@ void InterpolatePixelsEngine::init_packages() char string[BCTEXTLEN]; string[0] = 0; plugin->get_output()->get_params()->get("DCRAW_MATRIX", string); + +// printf("InterpolatePixelsEngine::init_packages %d\n", __LINE__); +// plugin->get_output()->dump_params(); + sscanf(string, "%f %f %f %f %f %f %f %f %f", &color_matrix[0],