--- patch/media/filters/audio_file_reader.cc 2022-09-01 22:34:26.814779500 +0200 +++ patch/media/filters/audio_file_reader.cc.duration 2022-09-05 21:43:11.707061527 +0200 @@ -243,10 +243,10 @@ bool AudioFileReader::OnNewFrame( // silence from being output. In the case where we are also discarding some // portion of the packet (as indicated by a negative pts), we further want to // adjust the duration downward by however much exists before zero. - if (audio_codec_ == AudioCodec::kAAC && frame->duration) { + if (audio_codec_ == AudioCodec::kAAC && frame->pkt_duration) { const base::TimeDelta pkt_duration = ConvertFromTimeBase( glue_->format_context()->streams[stream_index_]->time_base, - frame->duration + std::min(static_cast<int64_t>(0), frame->pts)); + frame->pkt_duration + std::min(static_cast<int64_t>(0), frame->pts)); const base::TimeDelta frame_duration = base::Seconds(frames_read / static_cast<double>(sample_rate_));