Blender Git Loki
Git Commits -> Revision 83758c4
Revision 83758c4 by Sergey Sharybin (master) July 5, 2012, 09:41 (GMT) |
Color management: refactor of cache to deal better with movie clip cache There were some crashes discovered in some circumstances of using color management within the clip editor which ended up some refactoring of color management cache. Switch from global movie cache instance to per-image buffer instances This only means keys for color managed buffers could be much simpier and that look up would happen much faster in there're lots of frames cached. Memory limiter stuff is still global for all color management and in fact it's also shared with movie clip cache . This allowed to get rid of original image buffer stored in cache key and allowed to easily remove all display buffers when source image buffer is being freed. This was main culptrit leading to crashes. Additional changes: - Add option to make moviecache verbose. If DEBUG_MESSAGES is defined in moviecache.c detailed logs would be printed to the console. - Movie caches are now named which helps reading debug messages. - Improved a bit behavior of cache element removing when buffer overflows on adding new display buffer and there're frames from movie clip. |
Commit Details:
Full Hash: 83758c41544df1bb6093327330edeff2707c83e2
SVN Revision: 48630
Parent Commit: 60113a4
Lines Changed: +206, -145
9 Modified Paths:
/intern/memutil/MEM_CacheLimiter.h (+1, -1) (Diff)
/source/blender/blenkernel/intern/movieclip.c (+4, -1) (Diff)
/source/blender/blenkernel/intern/seqcache.c (+2, -2) (Diff)
/source/blender/imbuf/IMB_colormanagement.h (+1, -4) (Diff)
/source/blender/imbuf/IMB_imbuf_types.h (+2, -7) (Diff)
/source/blender/imbuf/IMB_moviecache.h (+1, -1) (Diff)
/source/blender/imbuf/intern/allocimbuf.c (+2, -6) (Diff)
/source/blender/imbuf/intern/colormanagement.c (+133, -110) (Diff)
/source/blender/imbuf/intern/moviecache.c (+60, -13) (Diff)
/source/blender/blenkernel/intern/movieclip.c (+4, -1) (Diff)
/source/blender/blenkernel/intern/seqcache.c (+2, -2) (Diff)
/source/blender/imbuf/IMB_colormanagement.h (+1, -4) (Diff)
/source/blender/imbuf/IMB_imbuf_types.h (+2, -7) (Diff)
/source/blender/imbuf/IMB_moviecache.h (+1, -1) (Diff)
/source/blender/imbuf/intern/allocimbuf.c (+2, -6) (Diff)
/source/blender/imbuf/intern/colormanagement.c (+133, -110) (Diff)
/source/blender/imbuf/intern/moviecache.c (+60, -13) (Diff)