diff mbox series

[FFmpeg-devel,18/23] fftools/ffmpeg: simplify handling input -t for streamcopy

Message ID 20230531145453.20994-18-anton@khirnov.net
State New
Headers show
Series [FFmpeg-devel,01/23] fftools/ffmpeg_enc: move nb_frames{dup, drop} globals into OutputStream | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Anton Khirnov May 31, 2023, 2:54 p.m. UTC
Output stream will be closed implicitly after a NULL packet is sent to
it, there is no need to explicitly call close_output_stream().
---
 fftools/ffmpeg.c | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)
diff mbox series

Patch

diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c
index 9997881572..7d2a25f2bf 100644
--- a/fftools/ffmpeg.c
+++ b/fftools/ffmpeg.c
@@ -785,7 +785,6 @@  static int process_input_packet(InputStream *ist, const AVPacket *pkt, int no_eo
     int64_t dts_est = AV_NOPTS_VALUE;
     int ret = 0;
     int eof_reached = 0;
-    int duration_exceeded;
 
     if (ist->decoding_needed)
         ret = dec_packet(ist, pkt, no_eof);
@@ -797,7 +796,6 @@  static int process_input_packet(InputStream *ist, const AVPacket *pkt, int no_eo
         dts_est = pd->dts_est;
     }
 
-    duration_exceeded = 0;
     if (f->recording_time != INT64_MAX) {
         int64_t start_time = 0;
         if (copy_ts) {
@@ -805,7 +803,7 @@  static int process_input_packet(InputStream *ist, const AVPacket *pkt, int no_eo
             start_time += start_at_zero ? 0 : f->start_time_effective;
         }
         if (dts_est >= f->recording_time + start_time)
-            duration_exceeded = 1;
+            pkt = NULL;
     }
 
     for (int oidx = 0; oidx < ist->nb_outputs; oidx++) {
@@ -813,11 +811,6 @@  static int process_input_packet(InputStream *ist, const AVPacket *pkt, int no_eo
         if (ost->enc || (!pkt && no_eof))
             continue;
 
-        if (duration_exceeded) {
-            close_output_stream(ost);
-            continue;
-        }
-
         of_streamcopy(ost, pkt, dts_est);
     }