mirror of https://git.ffmpeg.org/ffmpeg.git
ffmpeg_filter: refuse to configure input without a decoder.
The decoder is necessary in order to filter frames. This makes the error message clearer in this case: currently, it will usually fail because the pixel or sample format is not defined and is converted into "(null)" (non-portable). Enhance trac ticket #3779.
This commit is contained in:
parent
ff9a154157
commit
91244073fd
|
@ -830,6 +830,12 @@ static int configure_input_filter(FilterGraph *fg, InputFilter *ifilter,
|
||||||
av_freep(&ifilter->name);
|
av_freep(&ifilter->name);
|
||||||
DESCRIBE_FILTER_LINK(ifilter, in, 1);
|
DESCRIBE_FILTER_LINK(ifilter, in, 1);
|
||||||
|
|
||||||
|
if (!ifilter->ist->dec) {
|
||||||
|
av_log(NULL, AV_LOG_ERROR,
|
||||||
|
"No decoder for stream #%d:%d, filtering impossible\n",
|
||||||
|
ifilter->ist->file_index, ifilter->ist->st->index);
|
||||||
|
return AVERROR_DECODER_NOT_FOUND;
|
||||||
|
}
|
||||||
switch (avfilter_pad_get_type(in->filter_ctx->input_pads, in->pad_idx)) {
|
switch (avfilter_pad_get_type(in->filter_ctx->input_pads, in->pad_idx)) {
|
||||||
case AVMEDIA_TYPE_VIDEO: return configure_input_video_filter(fg, ifilter, in);
|
case AVMEDIA_TYPE_VIDEO: return configure_input_video_filter(fg, ifilter, in);
|
||||||
case AVMEDIA_TYPE_AUDIO: return configure_input_audio_filter(fg, ifilter, in);
|
case AVMEDIA_TYPE_AUDIO: return configure_input_audio_filter(fg, ifilter, in);
|
||||||
|
|
Loading…
Reference in New Issue