Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2011-07-29 19:25:00 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2011-07-29 19:25:00 +0400
commit6745e45c48278a6cd5c089509aaaf5f178d13bca (patch)
treebf9a213ad7a8d7435b7b8b45815f5be956641184 /source/blender/blenkernel/BKE_tracking.h
parentfeffc920bb5dcb482c139299db929c39069cba71 (diff)
Camera tracking integration
=========================== Implemented 2D stabilization: - Based on average point of several tracks. - Tracks for stabilization are controllable from "2D stabilization" panel. - Implemented autoscaling. Could fail if average point is too close to frame boundary. - Background clip in 3D viewport and MovieClip input compositor nodes are using stable shot. Some internal weak things: - Stable shots aren't cached in moviecache. There is only one "slot" for stable shot inside stabilization structure. - This could fail if several threads are requested different frames (for example when starting playback, pause to make Nodes Editor trigger refresh, continue playback). - Due to it shouldn't crash i decided to implement better caching for stable shots a bit later.
Diffstat (limited to 'source/blender/blenkernel/BKE_tracking.h')
-rw-r--r--source/blender/blenkernel/BKE_tracking.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_tracking.h b/source/blender/blenkernel/BKE_tracking.h
index 2956e100251..b864fbe6bec 100644
--- a/source/blender/blenkernel/BKE_tracking.h
+++ b/source/blender/blenkernel/BKE_tracking.h
@@ -87,6 +87,8 @@ void BKE_tracking_detect(struct MovieTracking *tracking, struct ImBuf *imbuf, in
struct MovieTrackingTrack *BKE_tracking_indexed_bundle(struct MovieTracking *tracking, int bundlenr);
+struct ImBuf *BKE_tracking_stabelize_shot(struct MovieTracking *tracking, int framenr, struct ImBuf *ibuf, float mat[4][4]);
+
#define TRACK_SELECTED(track) (((track->flag&TRACK_HIDDEN)==0) && ((track)->flag&SELECT || (track)->pat_flag&SELECT || (track)->search_flag&SELECT))
#define TRACK_AREA_SELECTED(track, area) (((track->flag&TRACK_HIDDEN)==0) && ((area)==TRACK_AREA_POINT?(track)->flag&SELECT : ((area)==TRACK_AREA_PAT?(track)->pat_flag&SELECT:(track)->search_flag&SELECT)))