[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [42791] trunk/blender/source/blender: Added Record run no gaps timecode for movie clips.

Sergey Sharybin sergey.vfx at gmail.com
Wed Dec 21 12:01:09 CET 2011


Revision: 42791
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42791
Author:   nazgul
Date:     2011-12-21 11:01:08 +0000 (Wed, 21 Dec 2011)
Log Message:
-----------
Added Record run no gaps timecode for movie clips.
Also get rid of hardcoded constants in readfile and use constants from ImBuf headers.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/movieclip.c
    trunk/blender/source/blender/blenloader/CMakeLists.txt
    trunk/blender/source/blender/blenloader/SConscript
    trunk/blender/source/blender/blenloader/intern/readfile.c
    trunk/blender/source/blender/makesrna/intern/rna_movieclip.c

Modified: trunk/blender/source/blender/blenkernel/intern/movieclip.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/movieclip.c	2011-12-21 10:34:44 UTC (rev 42790)
+++ trunk/blender/source/blender/blenkernel/intern/movieclip.c	2011-12-21 11:01:08 UTC (rev 42791)
@@ -372,7 +372,10 @@
 	BKE_tracking_init_settings(&clip->tracking);
 
 	clip->proxy.build_size_flag= IMB_PROXY_25;
-	clip->proxy.build_tc_flag= IMB_TC_RECORD_RUN|IMB_TC_FREE_RUN|IMB_TC_INTERPOLATED_REC_DATE_FREE_RUN;
+	clip->proxy.build_tc_flag= IMB_TC_RECORD_RUN |
+	                           IMB_TC_FREE_RUN |
+	                           IMB_TC_INTERPOLATED_REC_DATE_FREE_RUN |
+	                           IMB_TC_RECORD_RUN_NO_GAPS;
 	clip->proxy.quality= 90;
 
 	return clip;

Modified: trunk/blender/source/blender/blenloader/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/blenloader/CMakeLists.txt	2011-12-21 10:34:44 UTC (rev 42790)
+++ trunk/blender/source/blender/blenloader/CMakeLists.txt	2011-12-21 11:01:08 UTC (rev 42791)
@@ -32,6 +32,7 @@
 	../nodes
 	../render/extern/include
 	../../../intern/guardedalloc
+	../imbuf
 )
 
 set(INC_SYS

Modified: trunk/blender/source/blender/blenloader/SConscript
===================================================================
--- trunk/blender/source/blender/blenloader/SConscript	2011-12-21 10:34:44 UTC (rev 42790)
+++ trunk/blender/source/blender/blenloader/SConscript	2011-12-21 11:01:08 UTC (rev 42791)
@@ -5,7 +5,7 @@
 
 incs = '. #/intern/guardedalloc ../blenlib ../blenkernel'
 incs += ' ../makesdna ../editors/include'
-incs += ' ../render/extern/include ../makesrna ../nodes'
+incs += ' ../render/extern/include ../makesrna ../nodes ../imbuf'
 
 incs += ' ' + env['BF_ZLIB_INC']
 

Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c	2011-12-21 10:34:44 UTC (rev 42790)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c	2011-12-21 11:01:08 UTC (rev 42791)
@@ -139,6 +139,8 @@
 #include "BKE_utildefines.h" // SWITCH_INT DATA ENDB DNA1 O_BINARY GLOB USER TEST REND
 #include "BKE_sound.h"
 
+#include "IMB_imbuf.h"  // for proxy / timecode versioning stuff
+
 #include "NOD_socket.h"
 
 //XXX #include "BIF_butspace.h" // badlevel, for do_versions, patching event codes
@@ -12588,10 +12590,12 @@
 					clip->aspy= 1.0f;
 				}
 
-				/* XXX: a bit hacky, probably include imbuf and use real constants are nicer */
-				clip->proxy.build_tc_flag= 7;
+				clip->proxy.build_tc_flag= IMB_TC_RECORD_RUN |
+				                           IMB_TC_FREE_RUN |
+				                           IMB_TC_INTERPOLATED_REC_DATE_FREE_RUN;
+
 				if(clip->proxy.build_size_flag==0)
-					clip->proxy.build_size_flag= 1;
+					clip->proxy.build_size_flag= IMB_PROXY_25;
 
 				if(clip->proxy.quality==0)
 					clip->proxy.quality= 90;
@@ -12731,6 +12735,12 @@
 					scene->gm.exitkey = 218; // Blender key code for ESC
 			}
 		}
+		{
+			MovieClip *clip;
+			for(clip= main->movieclip.first; clip; clip= clip->id.next) {
+				clip->proxy.build_tc_flag|= IMB_TC_RECORD_RUN_NO_GAPS;
+			}
+		}
 	}
 
 	/* WATCH IT!!!: pointers from libdata have not been converted yet here! */

Modified: trunk/blender/source/blender/makesrna/intern/rna_movieclip.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_movieclip.c	2011-12-21 10:34:44 UTC (rev 42790)
+++ trunk/blender/source/blender/makesrna/intern/rna_movieclip.c	2011-12-21 11:01:08 UTC (rev 42791)
@@ -78,6 +78,7 @@
 		{IMB_TC_RECORD_RUN, "RECORD_RUN", 0, "Record Run", "Use images in the order they are recorded"},
 		{IMB_TC_FREE_RUN, "FREE_RUN", 0, "Free Run", "Use global timestamp written by recording device"},
 		{IMB_TC_INTERPOLATED_REC_DATE_FREE_RUN, "FREE_RUN_REC_DATE", 0, "Free Run (rec date)", "Interpolate a global timestamp using the record date and time written by recording device"},
+		{IMB_TC_RECORD_RUN_NO_GAPS, "FREE_RUN_NO_GAPS", 0, "Free Run No Gaps", "Record run, but ignore timecode, changes in framerate or dropouts"},
 		{0, NULL, 0, NULL, NULL}};
 
 	srna = RNA_def_struct(brna, "MovieClipProxy", NULL);




More information about the Bf-blender-cvs mailing list