char *method_str = mlt_properties_get( MLT_FILTER_PROPERTIES( filter ), "method" );
int method = DEINTERLACE_LINEARBLEND;
- if ( strcmp( method_str, "bob" ) == 0 )
+ if ( method_str == NULL )
+ method_str = mlt_properties_get( MLT_FRAME_PROPERTIES( this ), "deinterlace_method" );
+
+ if ( method_str == NULL )
+ mlt_properties_set( MLT_FILTER_PROPERTIES( filter ), "method", "linearblend" );
+ else if ( strcmp( method_str, "bob" ) == 0 )
method = DEINTERLACE_BOB;
else if ( strcmp( method_str, "weave" ) == 0 )
method = DEINTERLACE_BOB;
if ( this != NULL )
{
this->process = deinterlace_process;
- mlt_properties_set( MLT_FILTER_PROPERTIES( this ), "method", arg == NULL ? "linearblend" : arg );
+ mlt_properties_set( MLT_FILTER_PROPERTIES( this ), "method", arg );
}
return this;
}