summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--avconv.c15
-rw-r--r--avconv.h2
2 files changed, 8 insertions, 9 deletions
diff --git a/avconv.c b/avconv.c
index 18c2841ca2..818e05ac2a 100644
--- a/avconv.c
+++ b/avconv.c
@@ -345,7 +345,7 @@ static int check_recording_time(OutputStream *ost)
if (of->recording_time != INT64_MAX &&
av_compare_ts(ost->sync_opts - ost->first_pts, ost->st->codec->time_base, of->recording_time,
AV_TIME_BASE_Q) >= 0) {
- ost->is_past_recording_time = 1;
+ ost->finished = 1;
return 0;
}
return 1;
@@ -729,8 +729,7 @@ static int poll_filters(void)
for (i = 0; i < nb_output_streams; i++) {
int64_t pts = output_streams[i]->sync_opts;
- if (!output_streams[i]->filter ||
- output_streams[i]->is_past_recording_time)
+ if (!output_streams[i]->filter || output_streams[i]->finished)
continue;
pts = av_rescale_q(pts, output_streams[i]->st->codec->time_base,
@@ -747,7 +746,7 @@ static int poll_filters(void)
ret = poll_filter(ost);
if (ret == AVERROR_EOF) {
- ost->is_past_recording_time = 1;
+ ost->finished = 1;
if (opt_shortest)
return ret;
@@ -983,7 +982,7 @@ static void do_streamcopy(InputStream *ist, OutputStream *ost, const AVPacket *p
if (of->recording_time != INT64_MAX &&
ist->last_dts >= of->recording_time + of->start_time) {
- ost->is_past_recording_time = 1;
+ ost->finished = 1;
return;
}
@@ -1932,13 +1931,13 @@ static int need_output(void)
OutputFile *of = output_files[ost->file_index];
AVFormatContext *os = output_files[ost->file_index]->ctx;
- if (ost->is_past_recording_time ||
+ if (ost->finished ||
(os->pb && avio_tell(os->pb) >= of->limit_filesize))
continue;
if (ost->frame_number >= ost->max_frames) {
int j;
for (j = 0; j < of->ctx->nb_streams; j++)
- output_streams[of->ost_index + j]->is_past_recording_time = 1;
+ output_streams[of->ost_index + j]->finished = 1;
continue;
}
@@ -2165,7 +2164,7 @@ static int process_input(void)
if (ost->source_index == ifile->ist_index + i &&
(ost->stream_copy || ost->enc->type == AVMEDIA_TYPE_SUBTITLE))
- ost->is_past_recording_time = 1;
+ ost->finished= 1;
}
}
diff --git a/avconv.h b/avconv.h
index 0cc53c5134..756d197ef5 100644
--- a/avconv.h
+++ b/avconv.h
@@ -288,7 +288,7 @@ typedef struct OutputStream {
int64_t sws_flags;
AVDictionary *opts;
- int is_past_recording_time;
+ int finished; /* no more packets should be written for this stream */
int stream_copy;
const char *attachment_filename;
int copy_initial_nonkeyframes;