diff --git a/libavformat/avisynth.c b/libavformat/avisynth.c
index b837bd9abcabe87e08858b5db77492279d956c77..c01d7e484cde1ec3dc8c07a274b3c9cf2de6e572 100644
--- a/libavformat/avisynth.c
+++ b/libavformat/avisynth.c
@@ -294,6 +294,7 @@ static int avisynth_create_stream_audio(AVFormatContext *s, AVStream *st)
     st->codec->channels    = avs->vi->nchannels;
     st->time_base          = (AVRational) { 1,
                                             avs->vi->audio_samples_per_second };
+    st->duration           = avs->vi->num_audio_samples;
 
     switch (avs->vi->sample_type) {
     case AVS_SAMPLE_INT8: