From: Edward Hervey Date: Tue, 14 Dec 2010 16:37:13 +0000 (+0100) Subject: random: Add brainstorming about Timeline<=>Track object mapping X-Git-Tag: 1.19.3~493^2~2496 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bfaa119ef777663b575297b814f2cd4234e41787;p=platform%2Fupstream%2Fgstreamer.git random: Add brainstorming about Timeline<=>Track object mapping --- diff --git a/docs/random/mapping.txt b/docs/random/mapping.txt new file mode 100644 index 0000000..8af1e97 --- /dev/null +++ b/docs/random/mapping.txt @@ -0,0 +1,50 @@ +Mapping Timeline position to Track position +------------------------------------------- + +TrackObject/TimelineObject basic properties (hereafter position): + start + duration + in-point + priority + + +Use Cases: + + A TimelineObject can be tracking one or many TrackObject(s). + + When the TimelineObject position is modified we might need + to cascade those changes to the controlled TrackObject(s) if those + TrackObject(s) are 'locked' to the TimelineObject. + + If we modify the positions of a TrackObject that TrackObject is + 'locked' to the TimelineObject, we need to ensure all the other + co-related TrackObject belong to the same TimelineObject are moved in + the same way. + + A TrackObject can be temporarily 'unlocked' from its TimelineObject, + so as to move it independently, and then 'locked' back to it. This + can allow moves, like shifting audio trackobject in relation to the + video trackobject (to fix sync issues) and then 'lock' them back so + as to be able to move them as one entity thereafter. + + When adding TimelineOverlay(s) or TimelineEffect(s) on a + TimelineObject, we need to ensure the TrackObject(s) that those extra + effects will create can be added with specific priority offsets, in + such a way that they always end up "on top" of the TimelineObject's + existing tracked TrackObject(s). + + When a controlled TrackObject is being moved when 'unlocked', we need + to make sure the duration/height of the TimelineObject is updated + accordingly. Ex : moving a TrackObject down by one priority should + increase the TimelineObject "heigh" property by 1. + + +Main Problem: + + There needs to be a mapping between the TimelineObject basic + properties and its controlled TrackObject(s) position. + +Design: + + TBD +