Added Record run no gaps timecode for movie clips.

Also get rid of hardcoded constants in readfile and use constants from ImBuf headers.
This commit is contained in:
2011-12-21 11:01:08 +00:00
parent 056c49e9ec
commit 8fbff6100d
5 changed files with 20 additions and 5 deletions

View File

@@ -372,7 +372,10 @@ static MovieClip *movieclip_alloc(const char *name)
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;

View File

@@ -32,6 +32,7 @@ set(INC
../nodes
../render/extern/include
../../../intern/guardedalloc
../imbuf
)
set(INC_SYS

View File

@@ -5,7 +5,7 @@ sources = env.Glob('intern/*.c')
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']

View File

@@ -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 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
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 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
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! */

View File

@@ -78,6 +78,7 @@ static void rna_def_movieclip_proxy(BlenderRNA *brna)
{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);