[Bf-blender-cvs] [a6ea38d345b] blender2.8: Cleanup: remove unused interlace code after removal of fields.

Brecht Van Lommel noreply at git.blender.org
Tue Jul 10 17:59:10 CEST 2018


Commit: a6ea38d345b77f740a553fdc053afead814c58f1
Author: Brecht Van Lommel
Date:   Tue Jul 10 17:54:20 2018 +0200
Branches: blender2.8
https://developer.blender.org/rBa6ea38d345b77f740a553fdc053afead814c58f1

Cleanup: remove unused interlace code after removal of fields.

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

M	source/blender/blenkernel/BKE_image.h
M	source/blender/blenkernel/intern/image.c
M	source/blender/blenkernel/intern/writeavi.c
M	source/blender/imbuf/IMB_imbuf.h
M	source/blender/imbuf/IMB_imbuf_types.h
M	source/blender/imbuf/intern/allocimbuf.c
M	source/blender/imbuf/intern/divers.c
M	source/blender/imbuf/intern/readimage.c
M	source/blender/imbuf/intern/stereoimbuf.c
M	source/blender/render/intern/source/imagetexture.c

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

diff --git a/source/blender/blenkernel/BKE_image.h b/source/blender/blenkernel/BKE_image.h
index 060ed4536a4..a41d9582add 100644
--- a/source/blender/blenkernel/BKE_image.h
+++ b/source/blender/blenkernel/BKE_image.h
@@ -114,8 +114,6 @@ void    BKE_imbuf_to_image_format(struct ImageFormatData *im_format, const struc
 struct anim *openanim(const char *name, int flags, int streamindex, char colorspace[IMA_MAX_SPACE]);
 struct anim *openanim_noload(const char *name, int flags, int streamindex, char colorspace[IMA_MAX_SPACE]);
 
-void    BKE_image_de_interlace(struct Image *ima, int odd);
-
 void    BKE_image_make_local(struct Main *bmain, struct Image *ima, const bool lib_local);
 
 void    BKE_image_tag_time(struct Image *ima);
diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c
index b6aeebd81a5..bf27d6021b6 100644
--- a/source/blender/blenkernel/intern/image.c
+++ b/source/blender/blenkernel/intern/image.c
@@ -186,76 +186,6 @@ void BKE_images_exit(void)
 	BLI_spin_end(&image_spin);
 }
 
-/* ******** IMAGE PROCESSING ************* */
-
-static void de_interlace_ng(struct ImBuf *ibuf) /* neogeo fields */
-{
-	struct ImBuf *tbuf1, *tbuf2;
-
-	if (ibuf == NULL) return;
-	if (ibuf->flags & IB_fields) return;
-	ibuf->flags |= IB_fields;
-
-	if (ibuf->rect) {
-		/* make copies */
-		tbuf1 = IMB_allocImBuf(ibuf->x, (ibuf->y >> 1), (unsigned char)32, (int)IB_rect);
-		tbuf2 = IMB_allocImBuf(ibuf->x, (ibuf->y >> 1), (unsigned char)32, (int)IB_rect);
-
-		ibuf->x *= 2;
-
-		IMB_rectcpy(tbuf1, ibuf, 0, 0, 0, 0, ibuf->x, ibuf->y);
-		IMB_rectcpy(tbuf2, ibuf, 0, 0, tbuf2->x, 0, ibuf->x, ibuf->y);
-
-		ibuf->x /= 2;
-		IMB_rectcpy(ibuf, tbuf1, 0, 0, 0, 0, tbuf1->x, tbuf1->y);
-		IMB_rectcpy(ibuf, tbuf2, 0, tbuf2->y, 0, 0, tbuf2->x, tbuf2->y);
-
-		IMB_freeImBuf(tbuf1);
-		IMB_freeImBuf(tbuf2);
-	}
-	ibuf->y /= 2;
-}
-
-static void de_interlace_st(struct ImBuf *ibuf) /* standard fields */
-{
-	struct ImBuf *tbuf1, *tbuf2;
-
-	if (ibuf == NULL) return;
-	if (ibuf->flags & IB_fields) return;
-	ibuf->flags |= IB_fields;
-
-	if (ibuf->rect) {
-		/* make copies */
-		tbuf1 = IMB_allocImBuf(ibuf->x, (ibuf->y >> 1), (unsigned char)32, IB_rect);
-		tbuf2 = IMB_allocImBuf(ibuf->x, (ibuf->y >> 1), (unsigned char)32, IB_rect);
-
-		ibuf->x *= 2;
-
-		IMB_rectcpy(tbuf1, ibuf, 0, 0, 0, 0, ibuf->x, ibuf->y);
-		IMB_rectcpy(tbuf2, ibuf, 0, 0, tbuf2->x, 0, ibuf->x, ibuf->y);
-
-		ibuf->x /= 2;
-		IMB_rectcpy(ibuf, tbuf2, 0, 0, 0, 0, tbuf2->x, tbuf2->y);
-		IMB_rectcpy(ibuf, tbuf1, 0, tbuf2->y, 0, 0, tbuf1->x, tbuf1->y);
-
-		IMB_freeImBuf(tbuf1);
-		IMB_freeImBuf(tbuf2);
-	}
-	ibuf->y /= 2;
-}
-
-void BKE_image_de_interlace(Image *ima, int odd)
-{
-	ImBuf *ibuf = BKE_image_acquire_ibuf(ima, NULL, NULL);
-	if (ibuf) {
-		if (odd)
-			de_interlace_st(ibuf);
-		else
-			de_interlace_ng(ibuf);
-	}
-	BKE_image_release_ibuf(ima, ibuf, NULL);
-}
-
 /* ***************** ALLOC & FREE, DATA MANAGING *************** */
 
 static void image_free_cached_frames(Image *image)
diff --git a/source/blender/blenkernel/intern/writeavi.c b/source/blender/blenkernel/intern/writeavi.c
index 994592ec307..1db239b3c6f 100644
--- a/source/blender/blenkernel/intern/writeavi.c
+++ b/source/blender/blenkernel/intern/writeavi.c
@@ -197,8 +197,6 @@ static int start_avi(void *context_v, Scene *UNUSED(scene), RenderData *rd, int
 
 	avi->interlace = 0;
 	avi->odd_fields = 0;
-/*  avi->interlace = rd->mode & R_FIELDS; */
-/*  avi->odd_fields = (rd->mode & R_ODDFIELD) ? 1 : 0; */
 
 	printf("Created avi: %s\n", name);
 	return 1;
diff --git a/source/blender/imbuf/IMB_imbuf.h b/source/blender/imbuf/IMB_imbuf.h
index 75f8df99e63..04ce2d6eaa3 100644
--- a/source/blender/imbuf/IMB_imbuf.h
+++ b/source/blender/imbuf/IMB_imbuf.h
@@ -431,7 +431,6 @@ bool IMB_isfloat(struct ImBuf *ibuf);
  * \attention Defined in divers.c
  */
 void IMB_de_interlace(struct ImBuf *ibuf);
-void IMB_interlace(struct ImBuf *ibuf);
 
 /* create char buffer, color corrected if necessary, for ImBufs that lack one */
 void IMB_rect_from_float(struct ImBuf *ibuf);
diff --git a/source/blender/imbuf/IMB_imbuf_types.h b/source/blender/imbuf/IMB_imbuf_types.h
index ee51854d7ed..e83357ac82e 100644
--- a/source/blender/imbuf/IMB_imbuf_types.h
+++ b/source/blender/imbuf/IMB_imbuf_types.h
@@ -242,7 +242,6 @@ typedef struct ImBuf {
 
 #define IB_rect				(1 << 0)
 #define IB_test				(1 << 1)
-#define IB_fields			(1 << 2)
 #define IB_zbuf				(1 << 3)
 #define IB_mem				(1 << 4)
 #define IB_rectfloat		(1 << 5)
diff --git a/source/blender/imbuf/intern/allocimbuf.c b/source/blender/imbuf/intern/allocimbuf.c
index 589955d2ab3..58554693aeb 100644
--- a/source/blender/imbuf/intern/allocimbuf.c
+++ b/source/blender/imbuf/intern/allocimbuf.c
@@ -521,7 +521,6 @@ ImBuf *IMB_dupImBuf(const ImBuf *ibuf1)
 
 	x = ibuf1->x;
 	y = ibuf1->y;
-	if (ibuf1->flags & IB_fields) y *= 2;
 
 	ibuf2 = IMB_allocImBuf(x, y, ibuf1->planes, flags);
 	if (ibuf2 == NULL) return NULL;
diff --git a/source/blender/imbuf/intern/divers.c b/source/blender/imbuf/intern/divers.c
index 2b6fa573e63..e6635080163 100644
--- a/source/blender/imbuf/intern/divers.c
+++ b/source/blender/imbuf/intern/divers.c
@@ -45,62 +45,6 @@
 
 #include "MEM_guardedalloc.h"
 
-/**************************** Interlace/Deinterlace **************************/
-
-void IMB_de_interlace(ImBuf *ibuf)
-{
-	ImBuf *tbuf1, *tbuf2;
-
-	if (ibuf == NULL) return;
-	if (ibuf->flags & IB_fields) return;
-	ibuf->flags |= IB_fields;
-
-	if (ibuf->rect) {
-		/* make copies */
-		tbuf1 = IMB_allocImBuf(ibuf->x, ibuf->y / 2, 32, IB_rect);
-		tbuf2 = IMB_allocImBuf(ibuf->x, ibuf->y / 2, 32, IB_rect);
-
-		ibuf->x *= 2;
-		IMB_rectcpy(tbuf1, ibuf, 0, 0, 0, 0, ibuf->x, ibuf->y);
-		IMB_rectcpy(tbuf2, ibuf, 0, 0, tbuf2->x, 0, ibuf->x, ibuf->y);
-
-		ibuf->x /= 2;
-		IMB_rectcpy(ibuf, tbuf1, 0, 0, 0, 0, tbuf1->x, tbuf1->y);
-		IMB_rectcpy(ibuf, tbuf2, 0, tbuf2->y, 0, 0, tbuf2->x, tbuf2->y);
-
-		IMB_freeImBuf(tbuf1);
-		IMB_freeImBuf(tbuf2);
-	}
-	ibuf->y /= 2;
-}
-
-void IMB_interlace(ImBuf *ibuf)
-{
-	ImBuf *tbuf1, *tbuf2;
-
-	if (ibuf == NULL) return;
-	ibuf->flags &= ~IB_fields;
-
-	ibuf->y *= 2;
-
-	if (ibuf->rect) {
-		/* make copies */
-		tbuf1 = IMB_allocImBuf(ibuf->x, ibuf->y / 2, 32, IB_rect);
-		tbuf2 = IMB_allocImBuf(ibuf->x, ibuf->y / 2, 32, IB_rect);
-
-		IMB_rectcpy(tbuf1, ibuf, 0, 0, 0, 0, ibuf->x, ibuf->y);
-		IMB_rectcpy(tbuf2, ibuf, 0, 0, 0, tbuf2->y, ibuf->x, ibuf->y);
-
-		ibuf->x *= 2;
-		IMB_rectcpy(ibuf, tbuf1, 0, 0, 0, 0, tbuf1->x, tbuf1->y);
-		IMB_rectcpy(ibuf, tbuf2, tbuf2->x, 0, 0, 0, tbuf2->x, tbuf2->y);
-		ibuf->x /= 2;
-
-		IMB_freeImBuf(tbuf1);
-		IMB_freeImBuf(tbuf2);
-	}
-}
-
 /************************* Floyd-Steinberg dithering *************************/
 
 typedef struct DitherContext {
diff --git a/source/blender/imbuf/intern/readimage.c b/source/blender/imbuf/intern/readimage.c
index 0b4490a3beb..0cb1ab4b2c5 100644
--- a/source/blender/imbuf/intern/readimage.c
+++ b/source/blender/imbuf/intern/readimage.c
@@ -230,7 +230,6 @@ ImBuf *IMB_loadiffname(const char *filepath, int flags, char colorspace[IM_MAX_S
 		BLI_strncpy(ibuf->cachename, filepath_tx, sizeof(ibuf->cachename));
 		for (a = 1; a < ibuf->miptot; a++)
 			BLI_strncpy(ibuf->mipmap[a - 1]->cachename, filepath_tx, sizeof(ibuf->cachename));
-		if (flags & IB_fields) IMB_de_interlace(ibuf);
 	}
 
 	close(file);
diff --git a/source/blender/imbuf/intern/stereoimbuf.c b/source/blender/imbuf/intern/stereoimbuf.c
index a4418443790..7c58815c216 100644
--- a/source/blender/imbuf/intern/stereoimbuf.c
+++ b/source/blender/imbuf/intern/stereoimbuf.c
@@ -722,7 +722,6 @@ ImBuf *IMB_stereo3d_ImBuf(ImageFormatData *im_format, ImBuf *ibuf_left, ImBuf *i
 	ibuf_stereo->rect_colorspace = ibuf_left->rect_colorspace;
 	ibuf_stereo->float_colorspace = ibuf_left->float_colorspace;
 
-	/* copy flags for IB_fields and other settings */
 	ibuf_stereo->flags = ibuf_left->flags;
 
 	imb_stereo3d_data_initialize(
@@ -1233,7 +1232,6 @@ void IMB_ImBufFromStereo3d(
 	ibuf_left = IMB_allocImBuf(width, height, ibuf_stereo3d->planes, (is_float ? IB_rectfloat : IB_rect));
 	ibuf_right = IMB_allocImBuf(width, height, ibuf_stereo3d->planes, (is_float ? IB_rectfloat : IB_rect));
 
-	/* copy flags for IB_fields and other settings */
 	ibuf_left->flags = ibuf_stereo3d->flags;
 	ibuf_right->flags = ibuf_stereo3d->flags;
 
diff --git a/source/blender/render/intern/source/imagetexture.c b/source/blender/render/intern/source/imagetexture.c
index 1e9ad79e599..3a31413c5cd 100644
--- a/source/blender/render/intern/source/imagetexture.c
+++ b/source/blender/render/intern/source/imagetexture.c
@@ -873,29 +873,25 @@ static void alpha_clip_aniso(ImBuf *ibuf, float minx, float miny, float maxx, fl
 static void image_mipmap_test(Tex *tex, ImBuf *ibuf)
 {
 	if (tex->imaflag & TEX_MIPMAP) {
-		if ((ibuf->flags & IB_fields) == 0) {
-
-			if (ibuf->mipmap[0] && (ibuf->userflags & IB_MIPMAP_INVALID)) {
-				BLI_thread_lock(LOCK_IMAGE);
-				if (ibuf->userflags & IB_MIPMAP_INVALID) {
-					IMB_remakemipmap(ibuf, tex->imaflag & TEX_GAUSS_MIP);
-					ibuf->userflags &= ~IB_MIPMAP_INVALID;
-				}
-				BLI_thread_unlock(LOCK_IMAGE);
-			}
-			if (ibuf->mipmap[0] == NULL) {
-				BLI_thread_lock(LOCK_IMAGE);
-				if (ibuf->mipmap[0] == NULL)
-					IMB_makemipmap(ibuf, tex->imaflag & TEX_GAUSS_MIP);
-				BLI_thread_unlock(LOCK_IMAGE);
-			}
-			/* if no mipmap could be made, fall back on non-mipmap render */
-			if (ibuf->mipmap[0] == NULL) {
-				tex->imaflag &= ~TEX_MIPMAP;
+		if (ibuf->mipmap[0] && (ibuf->userflags & IB_MIPMAP_INVALID)) {
+			BLI_thread_lock(LOCK_IMAGE);
+			if (ibuf->userflags & IB_MIPMAP_INVALID) {
+				IMB_remakemipmap(ibuf, tex->imaflag & TEX_GAUSS_MIP);
+				ibuf->userflags &= ~IB_MIPMAP_INVALID;
 			}
+			BLI_thread_unlock(LOCK_IMAGE);
+		}
+		if (ibuf->mipmap[0] == NULL) {
+			BLI_thread_lock(LOCK_IMAGE);
+			if (ibuf->mipmap[0] == NULL)
+				IMB_makemipmap(ibuf, tex->imaflag & TEX_GAUSS_MIP);
+			BLI_thread_unlock(LOCK_IMAGE);
+		}
+		/* if no mipmap could be made, fall back on non-mipmap render */
+		if (ibuf->mipmap[0] == NULL) {
+			tex->imaflag &= ~TEX_MIPMAP;
 		}
 	}
-
 }
 
 static int imagewraposa_aniso(Tex *tex, Image *ima, ImBuf *ib

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list