]> git.sesse.net Git - mlt/commitdiff
Fix scaling method on B frames of some transitions.
authorDan Dennedy <dan@dennedy.org>
Sat, 7 Aug 2010 07:59:17 +0000 (00:59 -0700)
committerDan Dennedy <dan@dennedy.org>
Sat, 7 Aug 2010 07:59:17 +0000 (00:59 -0700)
src/modules/core/transition_luma.c
src/modules/frei0r/transition_frei0r.c
src/modules/plus/transition_affine.c

index acd15f1bfe65889a1cff3fdbe285816e82cfffd5..67a044d46f9f90e06f6d930757c529accaf904e5 100644 (file)
@@ -513,7 +513,7 @@ static int transition_get_image( mlt_frame a_frame, uint8_t **image, mlt_image_f
 
        // Ensure we get scaling on the b_frame
        if ( mlt_properties_get( b_props, "rescale.interp" ) == NULL || !strcmp( mlt_properties_get( b_props, "rescale.interp" ), "none" ) )
-               mlt_properties_set( b_props, "rescale.interp", "nearest" );
+               mlt_properties_set( b_props, "rescale.interp", mlt_properties_get( a_props, "rescale.interp" ) );
 
        if ( mlt_properties_get( properties, "fixed" ) )
                mix = mlt_properties_get_double( properties, "fixed" );
index e9a75d8c116b3fed5c397d2291b6dffd4df5fe11..df0226d1f028676d2ea94c2fc08e4f6fbd3f6a18 100644 (file)
@@ -42,8 +42,8 @@ static int transition_get_image( mlt_frame a_frame, uint8_t **image, mlt_image_f
        mlt_properties_set_double( b_props, "consumer_aspect_ratio", mlt_properties_get_double( a_props, "consumer_aspect_ratio" ) );
 
        if ( mlt_properties_get( b_props, "rescale.interp" ) == NULL || !strcmp( mlt_properties_get( b_props, "rescale.interp" ), "none" ) )
-                mlt_properties_set( b_props, "rescale.interp", "nearest" );
-       
+               mlt_properties_set( b_props, "rescale.interp", mlt_properties_get( a_props, "rescale.interp" ) );
+
        uint8_t *images[]={NULL,NULL,NULL};
 
        *format = mlt_image_rgb24a;
index 17cf0afa04dc84903f49aae2b2263f75ec8a4b73..43ee85a7fd1795b81d729f12b084f4c9ad7be720 100644 (file)
@@ -430,7 +430,7 @@ static int transition_get_image( mlt_frame a_frame, uint8_t **image, mlt_image_f
        mlt_properties_set_int( b_props, "consumer_deinterlace", 1 );
        if ( interps == NULL || !strcmp( interps, "none" ) )
        {
-               mlt_properties_set( b_props, "rescale.interp", "bilinear" );
+               mlt_properties_set( b_props, "rescale.interp", mlt_properties_get( a_props, "rescale.interp" ) );
                mlt_properties_set_double( b_props, "consumer_aspect_ratio", consumer_ar );
        }
        mlt_frame_get_image( b_frame, &b_image, &b_format, &b_width, &b_height, 0 );