summaryrefslogtreecommitdiff
path: root/chromium-106-ffmpeg-duration.patch
diff options
context:
space:
mode:
Diffstat (limited to 'chromium-106-ffmpeg-duration.patch')
-rw-r--r--chromium-106-ffmpeg-duration.patch17
1 files changed, 17 insertions, 0 deletions
diff --git a/chromium-106-ffmpeg-duration.patch b/chromium-106-ffmpeg-duration.patch
new file mode 100644
index 0000000..bef339e
--- /dev/null
+++ b/chromium-106-ffmpeg-duration.patch
@@ -0,0 +1,17 @@
+Index: chromium-106.0.5249.91/media/filters/audio_file_reader.cc
+===================================================================
+--- chromium-106.0.5249.91.orig/media/filters/audio_file_reader.cc
++++ chromium-106.0.5249.91/media/filters/audio_file_reader.cc
+@@ -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_));
+