From: Dan Dennedy Date: Thu, 3 Apr 2014 06:05:10 +0000 (-0700) Subject: Restrict auto-profile frame rate to a sane value. X-Git-Url: https://git.sesse.net/?p=mlt;a=commitdiff_plain;h=9e781c515001a2428716557218200b2be634214e Restrict auto-profile frame rate to a sane value. MP3 and M4A album art have 90000 fps through libavcodec! --- diff --git a/src/framework/mlt_profile.c b/src/framework/mlt_profile.c index d23cd4b8..4385d7a7 100644 --- a/src/framework/mlt_profile.c +++ b/src/framework/mlt_profile.c @@ -424,8 +424,15 @@ void mlt_profile_from_producer( mlt_profile profile, mlt_producer producer ) profile->width = mlt_properties_get_int( p, "meta.media.width" ); profile->height = mlt_properties_get_int( p, "meta.media.height" ); profile->progressive = mlt_properties_get_int( p, "meta.media.progressive" ); - profile->frame_rate_num = mlt_properties_get_int( p, "meta.media.frame_rate_num" ); - profile->frame_rate_den = mlt_properties_get_int( p, "meta.media.frame_rate_den" ); + if ( 1000 > mlt_properties_get_double( p, "meta.media.frame_rate_num" ) + / mlt_properties_get_double( p, "meta.media.frame_rate_den" ) ) + { + profile->frame_rate_num = mlt_properties_get_int( p, "meta.media.frame_rate_num" ); + profile->frame_rate_den = mlt_properties_get_int( p, "meta.media.frame_rate_den" ); + } else { + profile->frame_rate_num = 60; + profile->frame_rate_den = 1; + } // AVCHD is mis-reported as double frame rate. if ( profile->progressive == 0 && ( profile->frame_rate_num / profile->frame_rate_den == 50 ||