Make query_formats() print an error message if an auto-inserted scale

filter cannot convert between input and output formats.

Originally committed as revision 21176 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Stefano Sabatini 2010-01-13 00:09:24 +00:00
parent 1460c79097
commit f37c934d20

View File

@ -147,11 +147,15 @@ static int query_formats(AVFilterGraph *graph, AVClass *log_ctx)
return -1;
scale->filter->query_formats(scale);
if(!avfilter_merge_formats(scale-> inputs[0]->in_formats,
scale-> inputs[0]->out_formats)||
!avfilter_merge_formats(scale->outputs[0]->in_formats,
scale->outputs[0]->out_formats))
if (((link = scale-> inputs[0]) &&
!avfilter_merge_formats(link->in_formats, link->out_formats)) ||
((link = scale->outputs[0]) &&
!avfilter_merge_formats(link->in_formats, link->out_formats))) {
av_log(log_ctx, AV_LOG_ERROR,
"Impossible to convert between the formats supported by the filter "
"'%s' and the filter '%s'\n", link->src->name, link->dst->name);
return -1;
}
}
}
}