Make ffprobe show sample_aspect_ratio and display_aspect_ratio only if

sample_aspect_ratio is known.

Avoid to show bogus values, which may confuse both the human and the
machine reader.

Based on a patch by Robert Krüger $(echo lsvfhfs@tjhobm7.ef | tr "b-za" "a-z").

Originally committed as revision 22983 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Stefano Sabatini 2010-04-27 23:22:27 +00:00
parent 6e25b78001
commit 8280e2bd45
1 changed files with 2 additions and 0 deletions

View File

@ -155,6 +155,7 @@ static void show_stream(AVFormatContext *fmt_ctx, int stream_idx)
printf("width=%d\n", dec_ctx->width);
printf("height=%d\n", dec_ctx->height);
printf("has_b_frames=%d\n", dec_ctx->has_b_frames);
if (dec_ctx->sample_aspect_ratio.num) {
printf("sample_aspect_ratio=%d:%d\n", dec_ctx->sample_aspect_ratio.num,
dec_ctx->sample_aspect_ratio.den);
av_reduce(&display_aspect_ratio.num, &display_aspect_ratio.den,
@ -163,6 +164,7 @@ static void show_stream(AVFormatContext *fmt_ctx, int stream_idx)
1024*1024);
printf("display_aspect_ratio=%d:%d\n", display_aspect_ratio.num,
display_aspect_ratio.den);
}
printf("pix_fmt=%s\n", dec_ctx->pix_fmt != PIX_FMT_NONE ?
av_pix_fmt_descriptors[dec_ctx->pix_fmt].name : "unknown");
break;