[webkit-changes] [WebKit/WebKit] 68d7d6: [MSE] Adjust buffering rate monitor to react faster

Enrique Ocaña González noreply at github.com
Fri Sep 23 02:22:19 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 68d7d604b06e9bc2658348bb6960ab3886851b9f
      https://github.com/WebKit/WebKit/commit/68d7d604b06e9bc2658348bb6960ab3886851b9f
  Author: Enrique Ocaña González <eocanha at igalia.com>
  Date:   2022-09-23 (Fri, 23 Sep 2022)

  Changed paths:
    M Source/WebCore/Modules/mediasource/SourceBuffer.cpp

  Log Message:
  -----------
  [MSE] Adjust buffering rate monitor to react faster
https://bugs.webkit.org/show_bug.cgi?id=245486

Reviewed by Xabier Rodriguez-Calvar.

As data is comming in (in bursts), the buffering rate monitoring algorithm calculates an
average rate that will be used to determine if we can play through the content without
interruption (assuming relatively constant rate). To filter out variations in rate, the
algorithm reacts more slowly (by design) and may take more time to reach the required rate
threshold to unblock playback, even though the incoming rate is sufficient to sustain
playback. If it takes too long, then a client using MSE may take corrective actions wich may
disturb or even abort the playback.

By adjusting the 'ExponentialMovingAverageCoefficient' we can make the algorithm react
faster to presence of data and unblock playback. Side effect is that it reacts also faster
to absence of data, but that should not affect playback as data has been buffered already
allowing playback to be sustained.

Original author: Pawel Lampe <pawel.lampe at gmail.com>
See: https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/927
See: https://github.com/WebPlatformForEmbedded/WPEWebKit/issues/928

* Source/WebCore/Modules/mediasource/SourceBuffer.cpp: Adjust ExponentialMovingAverageCoefficient from 0.1 to 0.2.

Canonical link: https://commits.webkit.org/254781@main




More information about the webkit-changes mailing list