From 8fbff6100d9dc2430b98b61f4681a3afff24acae Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Wed, 21 Dec 2011 11:01:08 +0000 Subject: Added Record run no gaps timecode for movie clips. Also get rid of hardcoded constants in readfile and use constants from ImBuf headers. --- source/blender/blenloader/CMakeLists.txt | 1 + source/blender/blenloader/SConscript | 2 +- source/blender/blenloader/intern/readfile.c | 16 +++++++++++++--- 3 files changed, 15 insertions(+), 4 deletions(-) (limited to 'source/blender/blenloader') diff --git a/source/blender/blenloader/CMakeLists.txt b/source/blender/blenloader/CMakeLists.txt index 9cf721738a7..35271f7b873 100644 --- a/source/blender/blenloader/CMakeLists.txt +++ b/source/blender/blenloader/CMakeLists.txt @@ -32,6 +32,7 @@ set(INC ../nodes ../render/extern/include ../../../intern/guardedalloc + ../imbuf ) set(INC_SYS diff --git a/source/blender/blenloader/SConscript b/source/blender/blenloader/SConscript index d5d2df3ea35..0333eab7e1f 100644 --- a/source/blender/blenloader/SConscript +++ b/source/blender/blenloader/SConscript @@ -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'] diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index 593b526d38b..bf40a3e73b3 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -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! */ -- cgit v1.2.3 From 51016c4dea9904cbaea8b06d692d6f2dd747a6e8 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Thu, 22 Dec 2011 00:03:20 +0000 Subject: split >120 length lines (mostly if statements) --- source/blender/blenloader/intern/readfile.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'source/blender/blenloader') diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index bf40a3e73b3..2f3d14da4c2 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -10691,8 +10691,11 @@ static void do_versions(FileData *fd, Library *lib, Main *main) void *olddata = ob->data; ob->data = me; - if(me && me->id.lib==NULL && me->mr && me->mr->level_count > 1) /* XXX - library meshes crash on loading most yoFrankie levels, the multires pointer gets invalid - Campbell */ + /* XXX - library meshes crash on loading most yoFrankie levels, + * the multires pointer gets invalid - Campbell */ + if(me && me->id.lib==NULL && me->mr && me->mr->level_count > 1) { multires_load_old(ob, me); + } ob->data = olddata; } @@ -14271,7 +14274,8 @@ static void read_libraries(FileData *basefd, ListBase *mainlist) expand_main(fd, mainptr); - /* dang FileData... now new libraries need to be appended to original filedata, it is not a good replacement for the old global (ton) */ + /* dang FileData... now new libraries need to be appended to original filedata, + * it is not a good replacement for the old global (ton) */ while( fd->mainlist.first ) { Main *mp= fd->mainlist.first; BLI_remlink(&fd->mainlist, mp); @@ -14293,8 +14297,13 @@ static void read_libraries(FileData *basefd, ListBase *mainlist) ID *idn= id->next; if(id->flag & LIB_READ) { BLI_remlink(lbarray[a], id); - BKE_reportf(basefd->reports, RPT_ERROR, "LIB ERROR: %s:'%s' unread libblock missing from '%s'\n", BKE_idcode_to_name(GS(id->name)), id->name+2, mainptr->curlib->filepath); - if(!G.background && basefd->reports)printf("LIB ERROR: %s:'%s' unread libblock missing from '%s'\n", BKE_idcode_to_name(GS(id->name)), id->name+2, mainptr->curlib->filepath); + BKE_reportf(basefd->reports, RPT_ERROR, + "LIB ERROR: %s:'%s' unread libblock missing from '%s'\n", + BKE_idcode_to_name(GS(id->name)), id->name+2, mainptr->curlib->filepath); + if (!G.background && basefd->reports) { + printf("LIB ERROR: %s:'%s' unread libblock missing from '%s'\n", + BKE_idcode_to_name(GS(id->name)), id->name+2, mainptr->curlib->filepath); + } change_idid_adr(mainlist, basefd, id, NULL); MEM_freeN(id); -- cgit v1.2.3