Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c3bf8dd554481b04a008756c79c53040279ca936
https://github.com/WebKit/WebKit/commit/c3bf8dd554481b04a008756c79c53040279ca936
Author: Przemyslaw Gorszkowski <[email protected]>
Date: 2023-07-27 (Thu, 27 Jul 2023)
Changed paths:
M Source/WebCore/html/TimeRanges.cpp
M Source/WebCore/html/TimeRanges.h
M Source/WebCore/platform/graphics/PlatformTimeRanges.cpp
M Source/WebCore/platform/graphics/PlatformTimeRanges.h
M Source/WebCore/platform/graphics/SourceBufferPrivate.cpp
M Source/WebCore/platform/graphics/SourceBufferPrivate.h
M Source/WebCore/platform/graphics/TrackBuffer.cpp
M Source/WebCore/platform/graphics/TrackBuffer.h
M Tools/TestWebKitAPI/Tests/WebCore/TimeRanges.cpp
Log Message:
-----------
[MSE] Reuse "fudge factor" when samples are removed
https://bugs.webkit.org/show_bug.cgi?id=258869
Reviewed by Xabier Rodriguez-Calvar.
Currently when TrackBuffer::removeSamples is called and erasedRanged is created
from the samples,
removing small gaps between samples is not done. It causes that in some cases
many separated ranges
are created which has impact on performance of removing samples.
Reusing "eliminate small gap" mechanism from
SourceBufferPrivate::processMediaSample solves the problem.
* Source/WebCore/html/TimeRanges.cpp:
(WebCore::TimeRanges::add):
* Source/WebCore/html/TimeRanges.h:
* Source/WebCore/platform/graphics/PlatformTimeRanges.cpp:
(WebCore::PlatformTimeRanges::timeFudgeFactor):
(WebCore::PlatformTimeRanges::add):
* Source/WebCore/platform/graphics/PlatformTimeRanges.h:
* Source/WebCore/platform/graphics/SourceBufferPrivate.cpp:
(WebCore::SourceBufferPrivate::processMediaSample):
* Source/WebCore/platform/graphics/SourceBufferPrivate.h:
(WebCore::SourceBufferPrivate::timeFudgeFactor const):
* Source/WebCore/platform/graphics/TrackBuffer.cpp:
(WebCore::TrackBuffer::addBufferedRange):
(WebCore::TrackBuffer::removeSamples):
* Source/WebCore/platform/graphics/TrackBuffer.h:
* Tools/TestWebKitAPI/Tests/WebCore/TimeRanges.cpp:
(TestWebKitAPI::TEST):
Canonical link: https://commits.webkit.org/266357@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes