On Tuesday 09 October 2012 19:05:17 j-b-m wrote:

> > > 
> > > @@ -130,9 +130,9 @@ static int producer_get_frame( mlt_producer
> > > producer,
> > > mlt_frame_ptr frame, int i
> > > 
> > >                 mlt_frame_set_position( *frame, mlt_producer_position(
> > > 
> > > producer ) );
> > > 
> > >                 /* Set producer-specific frame properties */
> > > 
> > > -               mlt_profile profile = mlt_service_profile (
> > > MLT_PRODUCER_SERVICE( producer ) ) ;
> > > -               mlt_properties_set_int( properties, "progressive", (
> > > profile ) ? profile->progressive : 1 );
> > > -               mlt_properties_set_double( properties, "aspect_ratio",
> > > mlt_properties_get_double( producer_props, "aspect_ratio" ) );
> > > +               mlt_profile profile = mlt_service_profile(
> > > MLT_PRODUCER_SERVICE( producer ) );
> > > +               mlt_properties_set_int( properties, "progressive",
> > > mlt_properties_get_int( producer_props, "progressive" ) );
> > > +               mlt_properties_set_double( properties, "aspect_ratio",
> > > mlt_profile_sar( profile ) );
> > 
> > It does not seem correct that kdenlivetitles' sample aspect ratio is
> > the same as the profile. It seems it should be 1.0 as you made it
> > below, and therefore more appropriate to keep this as-is: set frame's
> > aspect_ratio from the producer's.
> 
> Yes, thanks,  you're right. But in my tests, it worked, so I guess there is
> another ratio related bug in another place of the producer's code.
> 
> I am investigating...

Ok, one of the bugs was in Kdenlive, and here is the fix to correctly mark the 
kdenlivetitle frames as progressive.

regards

jb
____________________________________________________________________________


diff --git a/src/modules/qimage/producer_kdenlivetitle.c 
b/src/modules/qimage/producer_kdenlivetitle.c
index fbee0ec..d21b943 100644
--- a/src/modules/qimage/producer_kdenlivetitle.c
+++ b/src/modules/qimage/producer_kdenlivetitle.c
@@ -130,8 +130,7 @@ static int producer_get_frame( mlt_producer producer, 
mlt_frame_ptr frame, int i
                mlt_frame_set_position( *frame, mlt_producer_position( 
producer ) );
 
                /* Set producer-specific frame properties */
-               mlt_profile profile = mlt_service_profile ( 
MLT_PRODUCER_SERVICE( producer ) ) ;
-               mlt_properties_set_int( properties, "progressive", ( profile ) 
? profile->progressive : 1 );
+               mlt_properties_set_int( properties, "progressive", 
mlt_properties_get_int( producer_props, "progressive" ) );
                mlt_properties_set_double( properties, "aspect_ratio", 
mlt_properties_get_double( producer_props, "aspect_ratio" ) );
 
                /* Push the get_image method */
@@ -169,7 +168,7 @@ mlt_producer producer_kdenlivetitle_init( mlt_profile 
profile, mlt_service_type
                producer->get_frame = producer_get_frame;
                producer->close = ( mlt_destructor )producer_close;
                mlt_properties_set( properties, "resource", filename );
-               //mlt_properties_set_int( properties, "aspect_ratio", 1 );
+               mlt_properties_set_int( properties, "progressive", 1 );
                read_xml(properties);
                return producer;
        }




------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
Mlt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mlt-devel

Reply via email to