Added gravity, scale type, and percentage based X,Y location settings. All the basic transformation methods are now working. You can layer, move, fade, snap, rotate, and scale clips on the screen.

This commit is contained in:
Jonathan Thomas
2012-11-12 01:25:35 -06:00
parent 4e2947018c
commit d47a94f1a0
3 changed files with 129 additions and 41 deletions

View File

@@ -31,32 +31,52 @@ int main()
Timeline t(640, 360, Framerate(24,1), 44100, 2);
// Add some clips
Clip c1(new FFmpegReader("/home/jonathan/Videos/sintel_trailer-720p.mp4"));
Clip c2(new ImageReader("/home/jonathan/apps/videcho_site/media/logos/watermark.png"));
c1.Position(1.0);
c2.Position(1.0);
Clip c1(new FFmpegReader("/home/jonathan/Videos/sintel-1024-stereo.mp4"));
//Clip c2(new ImageReader("/home/jonathan/Desktop/watermark.svg"));
Clip c2(new ImageReader("/home/jonathan/Desktop/icon.png"));
//Clip c3(new FFmpegReader("/home/jonathan/Desktop/IncognitoCory_-_April_Song.mp3"));
c1.Position(0.0);
c1.gravity = GRAVITY_CENTER;
c1.scale = SCALE_CROP;
c1.End(20);
c2.Position(0.0);
c2.Layer(1);
c2.gravity = GRAVITY_BOTTOM_RIGHT;
c2.scale = SCALE_NONE;
c2.End(20);
c1.rotation.AddPoint(1, 1);
c1.rotation.AddPoint(300, 360);
//c1.rotation.AddPoint(1, 1);
//c1.rotation.AddPoint(300, 360);
//c1.alpha.AddPoint(1, 0);
//c1.alpha.AddPoint(300, 1);
//c2.scale_x.AddPoint(1, 1);
//c2.scale_x.AddPoint(300, 3.5);
c2.alpha.AddPoint(1, 1);
c2.alpha.AddPoint(30, 0);
c2.alpha.AddPoint(100, 0, LINEAR);
c2.alpha.AddPoint(150, 1);
c2.End(6.25);
//c2.scale_y.AddPoint(1, 1);
//c2.scale_y.AddPoint(300, 3.5);
//c1.scale_x.AddPoint(1, 1);
//c1.scale_x.AddPoint(300, 1.5);
//c1.scale_y.AddPoint(1, 1);
//c1.scale_y.AddPoint(300, 1.5);
//c1.alpha.AddPoint(1, 1);
//c1.alpha.AddPoint(30, 0);
//c2.alpha.AddPoint(1, 1);
//c2.alpha.AddPoint(30, 0);
//c2.alpha.AddPoint(100, 0, LINEAR);
//c2.alpha.AddPoint(150, 1);
c2.location_x.AddPoint(1, 0);
c2.location_x.AddPoint(300, 530);
c2.location_x.AddPoint(300, -1.0);
c2.location_y.AddPoint(1, 0);
c2.location_y.AddPoint(300, 300);
//c2.location_y.AddPoint(1, 0);
//c2.location_y.AddPoint(300, 1);
c2.rotation.AddPoint(60, 1, LINEAR);
c2.rotation.AddPoint(150, 360);
//c2.rotation.AddPoint(1, 0);
//c2.rotation.AddPoint(300, 360);
// LINEAR Reverse
@@ -105,6 +125,7 @@ int main()
// Add clips
t.AddClip(&c1);
t.AddClip(&c2);
//t.AddClip(&c3);
// Create a writer