Blender Git Loki
Git Commits -> Revision 6dc4ea3
Revision 6dc4ea3 by Sergey Sharybin (master) March 15, 2013, 11:59 (GMT) |
Multi-threaded frame calculation for movie clip proxies This commit implements multi-threaded calculation of frames when building proxies. Both scaling and undistortion steps are now threaded. Frames and proxy resolution are still handled one-by-one, saving files after every single step. So if HDD is not so fast, this commit could have not so much benefit. Internal changes: - Added IMB_scaleImBuf_threaded which scales given image buffer in multiple threads and uses bilinear filtering. - libmv's camera intrinsics now have SetThreads() method which is used to specify how many OpenMP threads to use for buffer distortion/undistortion. And yeah, this code is using OpenMP for threading. - Reshuffled a bit libmv-capi calls and added function BKE_tracking_distortion_set_threads to specify number of threads used by intrinscis. |
Commit Details:
Full Hash: 6dc4ea34e44ae77125918ab9eda0fcfe7d9f0b3c
SVN Revision: 55302
Parent Commit: 0807c97
Lines Changed: +188, -27
10 Modified Paths:
/extern/libmv/libmv-capi.cpp (+14, -0) (Diff)
/extern/libmv/libmv-capi.h (+4, -0) (Diff)
/extern/libmv/libmv/simple_pipeline/camera_intrinsics.cc (+28, -19) (Diff)
/extern/libmv/libmv/simple_pipeline/camera_intrinsics.h (+5, -0) (Diff)
/source/blender/blenkernel/BKE_tracking.h (+1, -0) (Diff)
/source/blender/blenkernel/intern/movieclip.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/tracking.c (+13, -6) (Diff)
/source/blender/editors/space_clip/clip_ops.c (+5, -1) (Diff)
/source/blender/imbuf/IMB_imbuf.h (+6, -0) (Diff)
/source/blender/imbuf/intern/scaling.c (+111, -0) (Diff)
/extern/libmv/libmv-capi.h (+4, -0) (Diff)
/extern/libmv/libmv/simple_pipeline/camera_intrinsics.cc (+28, -19) (Diff)
/extern/libmv/libmv/simple_pipeline/camera_intrinsics.h (+5, -0) (Diff)
/source/blender/blenkernel/BKE_tracking.h (+1, -0) (Diff)
/source/blender/blenkernel/intern/movieclip.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/tracking.c (+13, -6) (Diff)
/source/blender/editors/space_clip/clip_ops.c (+5, -1) (Diff)
/source/blender/imbuf/IMB_imbuf.h (+6, -0) (Diff)
/source/blender/imbuf/intern/scaling.c (+111, -0) (Diff)