[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53557] trunk/blender/source/blender/ blenkernel/intern/sequencer.c: Correction for rev53555 which was obviously wrong -- always setting alpha to premul

Sergey Sharybin sergey.vfx at gmail.com
Fri Jan 4 14:20:02 CET 2013


Revision: 53557
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53557
Author:   nazgul
Date:     2013-01-04 13:19:57 +0000 (Fri, 04 Jan 2013)
Log Message:
-----------
Correction for rev53555 which was obviously wrong -- always setting alpha to premul

Also optimized it a bit by skipping byte/float buffer allocation.

Revision Links:
--------------
    http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53555

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/sequencer.c

Modified: trunk/blender/source/blender/blenkernel/intern/sequencer.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/sequencer.c	2013-01-04 12:44:38 UTC (rev 53556)
+++ trunk/blender/source/blender/blenkernel/intern/sequencer.c	2013-01-04 13:19:57 UTC (rev 53557)
@@ -3962,16 +3962,16 @@
 
 		/* initialize input color space */
 		if (seq->type == SEQ_TYPE_IMAGE) {
-			ibuf = IMB_loadiffname(name, IB_rect, seq->strip->colorspace_settings.name);
+			ibuf = IMB_loadiffname(name, IB_test | IB_alphamode_detect, seq->strip->colorspace_settings.name);
 
 			/* byte images are default to straight alpha, however sequencer
 			 * works in premul space, so mark strip to be premultiplied first
 			 */
-			seq->alpha_mode = SEQ_ALPHA_PREMUL;
+			seq->alpha_mode = SEQ_ALPHA_STRAIGHT;
 			if (ibuf) {
-				if (ibuf->rect_float) {
-					seq->alpha_mode = SEQ_ALPHA_PREMUL;
-				}
+				if (ibuf->flags & IB_alphamode_premul)
+					seq->alpha_mode = IMA_ALPHA_PREMUL;
+
 				IMB_freeImBuf(ibuf);
 			}
 		}




More information about the Bf-blender-cvs mailing list