diff options
-rw-r--r-- | avconv.c | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -537,6 +537,12 @@ static void do_video_out(AVFormatContext *s, if (ret < 0) goto error; + /* + * For video, there may be reordering, so we can't throw away frames on + * encoder flush, we need to limit them here, before they go into encoder. + */ + ost->frame_number++; + while (1) { ret = avcodec_receive_packet(enc, &pkt); if (ret == AVERROR(EAGAIN)) @@ -554,12 +560,6 @@ static void do_video_out(AVFormatContext *s, } ost->sync_opts++; - /* - * For video, number of frames in == number of packets out. - * But there may be reordering, so we can't throw away frames on encoder - * flush, we need to limit them here, before they go into encoder. - */ - ost->frame_number++; } return; |