[Bf-blender-cvs] [72e821b] gooseberry_farm: Jpeg2000: Fixed for DCP pipeline

Sergey Sharybin noreply at git.blender.org
Mon Jul 27 22:36:55 CEST 2015


Commit: 72e821bacc5090368811c2207faf1d0edc42e9c9
Author: Sergey Sharybin
Date:   Mon Jul 27 22:34:55 2015 +0200
Branches: gooseberry_farm
https://developer.blender.org/rB72e821bacc5090368811c2207faf1d0edc42e9c9

Jpeg2000: Fixed for DCP pipeline

Profile and color space were not properly set.

Conflicts:
	source/blender/imbuf/intern/jp2.c

===================================================================

M	source/blender/imbuf/intern/jp2.c

===================================================================

diff --git a/source/blender/imbuf/intern/jp2.c b/source/blender/imbuf/intern/jp2.c
index 8750b82..e8dd8a8 100644
--- a/source/blender/imbuf/intern/jp2.c
+++ b/source/blender/imbuf/intern/jp2.c
@@ -58,6 +58,11 @@ typedef struct img_folder {
 	float *rates;
 } img_fol_t;
 
+enum {
+    DCP_CINEMA2K = 3,
+    DCP_CINEMA4K = 4,
+};
+
 static int check_jp2(unsigned char *mem) /* J2K_CFMT */
 {
 	return memcmp(JP2_HEAD, mem, sizeof(JP2_HEAD)) ? 0 : 1;
@@ -458,7 +463,6 @@ static void cinema_parameters(opj_cparameters_t *parameters)
 
 	/* 9-7 transform */
 	parameters->irreversible = 1;
-
 }
 
 static void cinema_setup_encoder(opj_cparameters_t *parameters, opj_image_t *image, img_fol_t *img_fol)
@@ -478,6 +482,9 @@ static void cinema_setup_encoder(opj_cparameters_t *parameters, opj_image_t *ima
 				        image->comps[0].w, image->comps[0].h);
 				parameters->cp_rsiz = STD_RSIZ;
 			}
+			else {
+				parameters->cp_rsiz = DCP_CINEMA2K;
+			}
 			break;
 	
 		case CINEMA4K_24:
@@ -493,6 +500,9 @@ static void cinema_setup_encoder(opj_cparameters_t *parameters, opj_image_t *ima
 				        image->comps[0].w, image->comps[0].h);
 				parameters->cp_rsiz = STD_RSIZ;
 			}
+			else {
+				parameters->cp_rsiz = DCP_CINEMA2K;
+			}
 			parameters->numpocs = initialise_4K_poc(parameters->POC, parameters->numresolution);
 			break;
 		case OFF:
@@ -606,7 +616,7 @@ static opj_image_t *ibuftoimage(ImBuf *ibuf, opj_cparameters_t *parameters)
 			cinema_parameters(parameters);
 		}
 		
-		color_space = CLRSPC_SYCC;
+		color_space = (ibuf->foptions.flag & JP2_YCC) ? CLRSPC_SYCC : CLRSPC_SRGB;
 		prec = 12;
 		numcomps = 3;
 	}




More information about the Bf-blender-cvs mailing list