]> git.sesse.net Git - mlt/commitdiff
Fix framebuffer producer in property (3417991)
authorj-b-m <jb@kdenlive.org>
Tue, 4 Oct 2011 02:54:21 +0000 (19:54 -0700)
committerDan Dennedy <dan@dennedy.org>
Tue, 4 Oct 2011 02:54:21 +0000 (19:54 -0700)
src/modules/kdenlive/producer_framebuffer.c

index 867a082eb84141835775a635b9c429af57c7ffb6..e60c81d21fbcc595493f3a5543555ec0b432f26f 100644 (file)
@@ -52,6 +52,7 @@ static int framebuffer_get_image( mlt_frame frame, uint8_t **image, mlt_image_fo
        int freeze = mlt_properties_get_int( properties, "freeze" );
        int freeze_after = mlt_properties_get_int( properties, "freeze_after" );
        int freeze_before = mlt_properties_get_int( properties, "freeze_before" );
+       int in = mlt_properties_get_position( properties, "in" );
 
        // Determine the position
        mlt_position first_position = (first_frame != NULL) ? mlt_frame_get_position( first_frame ) : -1;
@@ -60,7 +61,7 @@ static int framebuffer_get_image( mlt_frame frame, uint8_t **image, mlt_image_fo
        if ( !freeze || freeze_after || freeze_before )
        {
                double prod_speed = mlt_properties_get_double( properties, "_speed" );
-               double actual_position = prod_speed * (double) mlt_producer_position( producer );
+               double actual_position = in + prod_speed * (double) mlt_producer_position( producer );
 
                if ( mlt_properties_get_int( properties, "reverse" ) )
                        actual_position = mlt_producer_get_playtime( producer ) - actual_position;