diff mbox series

[FFmpeg-devel] avfilter/af_amix: do not leave unset PTS for frames after first stream is over

Message ID 20200913120651.24961-1-onemda@gmail.com
State Accepted
Commit 17b44f759e8cbb6952c0ae2dde5fd21adb163651
Headers show
Series [FFmpeg-devel] avfilter/af_amix: do not leave unset PTS for frames after first stream is over | expand

Checks

Context Check Description
andriy/default pending
andriy/make success Make finished
andriy/make_fate success Make fate finished

Commit Message

Paul B Mahol Sept. 13, 2020, 12:06 p.m. UTC
First stream is used only to get number of samples to put into each output frame.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
---
 libavfilter/af_amix.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Nicolas George Sept. 14, 2020, 9:44 a.m. UTC | #1
Paul B Mahol (12020-09-13):
> First stream is used only to get number of samples to put into each output frame.
> 
> Signed-off-by: Paul B Mahol <onemda@gmail.com>
> ---
>  libavfilter/af_amix.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

I cannot judge the change of the code since I do not know this code, but
based on the commit message, something like this is necessary in this
filter.
diff mbox series

Patch

diff --git a/libavfilter/af_amix.c b/libavfilter/af_amix.c
index cae9d4585a..c4d8916a57 100644
--- a/libavfilter/af_amix.c
+++ b/libavfilter/af_amix.c
@@ -309,6 +309,8 @@  static int output_frame(AVFilterLink *outlink)
                 }
             }
         }
+
+        s->next_pts = frame_list_next_pts(s->frame_list);
     } else {
         /* first input closed: use the available samples */
         nb_samples = INT_MAX;
@@ -324,7 +326,6 @@  static int output_frame(AVFilterLink *outlink)
         }
     }
 
-    s->next_pts = frame_list_next_pts(s->frame_list);
     frame_list_remove_samples(s->frame_list, nb_samples);
 
     calculate_scales(s, nb_samples);