|
|
@ -1948,6 +1948,20 @@ static int decode_video(InputStream *ist, AVPacket *pkt, int *got_output) |
|
|
|
if (*got_output || ret<0 || pkt->size) |
|
|
|
if (*got_output || ret<0 || pkt->size) |
|
|
|
decode_error_stat[ret<0] ++; |
|
|
|
decode_error_stat[ret<0] ++; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (*got_output && ret >= 0) { |
|
|
|
|
|
|
|
if (ist->dec_ctx->width != decoded_frame->width || |
|
|
|
|
|
|
|
ist->dec_ctx->height != decoded_frame->height || |
|
|
|
|
|
|
|
ist->dec_ctx->pix_fmt != decoded_frame->format) { |
|
|
|
|
|
|
|
av_log(NULL, AV_LOG_DEBUG, "Frame parameters mismatch context %d,%d,%d != %d,%d,%d\n", |
|
|
|
|
|
|
|
decoded_frame->width, |
|
|
|
|
|
|
|
decoded_frame->height, |
|
|
|
|
|
|
|
decoded_frame->format, |
|
|
|
|
|
|
|
ist->dec_ctx->width, |
|
|
|
|
|
|
|
ist->dec_ctx->height, |
|
|
|
|
|
|
|
ist->dec_ctx->pix_fmt); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (!*got_output || ret < 0) { |
|
|
|
if (!*got_output || ret < 0) { |
|
|
|
if (!pkt->size) { |
|
|
|
if (!pkt->size) { |
|
|
|
for (i = 0; i < ist->nb_filters; i++) |
|
|
|
for (i = 0; i < ist->nb_filters; i++) |
|
|
|