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:
@@ -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;
|
||||
|
@@ -32,6 +32,7 @@ set(INC
|
||||
../nodes
|
||||
../render/extern/include
|
||||
../../../intern/guardedalloc
|
||||
../imbuf
|
||||
)
|
||||
|
||||
set(INC_SYS
|
||||
|
@@ -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']
|
||||
|
||||
|
@@ -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! */
|
||||
|
@@ -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);
|
||||
|
Reference in New Issue
Block a user