X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Faccess%2Fdecklink.cpp;h=3f837f22f09ca9197cdba7827a4d0606e696d509;hb=d66255d540dfac647c8a7d8aded8522a02b3ca2d;hp=fe7e580ef121c33847a8415e06384d4c8756d0cc;hpb=65022ed2467ecb2d0890df5a5af629eb50dd10f4;p=vlc diff --git a/modules/access/decklink.cpp b/modules/access/decklink.cpp index fe7e580ef1..3f837f22f0 100644 --- a/modules/access/decklink.cpp +++ b/modules/access/decklink.cpp @@ -270,6 +270,7 @@ static int Open( vlc_object_t *p_this ) int i_card_index; int i_width, i_height, i_fps_num, i_fps_den; int i_rate; + unsigned u_aspect_num, u_aspect_den; /* Only when selected */ if( *p_demux->psz_access == '\0' ) @@ -553,17 +554,10 @@ static int Open( vlc_object_t *p_this ) video_fmt.video.i_frame_rate_base = i_fps_den; video_fmt.i_bitrate = video_fmt.video.i_width * video_fmt.video.i_height * video_fmt.video.i_frame_rate * 2 * 8; - psz_aspect = var_CreateGetNonEmptyString( p_demux, "decklink-aspect-ratio" ); - if( psz_aspect ) - { - char *psz_denominator = strchr( psz_aspect, ':' ); - if( psz_denominator ) - { - *psz_denominator++ = '\0'; - video_fmt.video.i_sar_num = atoi( psz_aspect ) * video_fmt.video.i_height; - video_fmt.video.i_sar_den = atoi( psz_denominator ) * video_fmt.video.i_width; - } - free( psz_aspect ); + if ( !var_InheritURational( p_demux, &u_aspect_num, &u_aspect_den, "decklink-aspect-ratio" ) && + u_aspect_num > 0 && u_aspect_den > 0 ) { + video_fmt.video.i_sar_num = u_aspect_num * video_fmt.video.i_height; + video_fmt.video.i_sar_den = u_aspect_den * video_fmt.video.i_width; } msg_Dbg( p_demux, "added new video es %4.4s %dx%d",