* \properties \em display_aspect_num the numerator of the video frame aspect ratio, overrides \p mlt_profile_s
* \properties \em display_aspect_den the denominator of the video frame aspect ratio, overrides \p mlt_profile_s
* \properties \em priority the OS scheduling priority for the render threads when real_time is not 0.
- * \properties \em top_field_first when not progressive, whether interlace field order is top-field-first, defaults to 0
+ * \properties \em top_field_first when not progressive, whether interlace field order is top-field-first, defaults to 0.
+ * Set this to -1 if the consumer does not care about the field order.
* \properties \em mlt_image_format the image format to request in rendering threads, defaults to yuv422
* \properties \em mlt_audio_format the audio format to request in rendering threads, defaults to S16
*/
}
// Correct field order if needed
- if ( mlt_properties_get_int( properties, "top_field_first" ) != tff &&
+ if ( tff != -1 &&
+ mlt_properties_get_int( properties, "top_field_first" ) != tff &&
mlt_properties_get( properties, "progressive" ) &&
mlt_properties_get_int( properties, "progressive" ) == 0 )
{
// Tell render thread we prefer yuv420p
mlt_properties_set( this->properties, "mlt_image_format", "yuv420p" );
+ mlt_properties_set_int( this->properties, "top_field_first", -1 );
// Ensure we don't join on a non-running object
this->joined = 1;