mirror of https://git.ffmpeg.org/ffmpeg.git
tools/decode_simple: always call process_frame(NULL) at the end
Currently this would not be done if max_frames is triggered. Makes no difference in either of the tools currently using decode_simple, but may be important in future tools.
This commit is contained in:
parent
9bf1848acf
commit
992e984fa8
|
@ -73,7 +73,7 @@ int ds_run(DecodeContext *dc)
|
|||
while (ret >= 0) {
|
||||
ret = av_read_frame(dc->demuxer, dc->pkt);
|
||||
if (ret < 0)
|
||||
goto flush;
|
||||
break;
|
||||
if (dc->pkt->stream_index != dc->stream->index) {
|
||||
av_packet_unref(dc->pkt);
|
||||
continue;
|
||||
|
@ -91,10 +91,9 @@ int ds_run(DecodeContext *dc)
|
|||
fprintf(stderr, "Error decoding: %d\n", ret);
|
||||
return ret;
|
||||
} else if (ret > 0)
|
||||
return 0;
|
||||
goto finish;
|
||||
}
|
||||
|
||||
flush:
|
||||
avcodec_send_packet(dc->decoder, NULL);
|
||||
ret = decode_read(dc, 1);
|
||||
if (ret < 0) {
|
||||
|
@ -102,7 +101,8 @@ flush:
|
|||
return ret;
|
||||
}
|
||||
|
||||
return 0;
|
||||
finish:
|
||||
return dc->process_frame(dc, NULL);
|
||||
}
|
||||
|
||||
void ds_free(DecodeContext *dc)
|
||||
|
|
Loading…
Reference in New Issue