Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 35a56e6b2d4ab965fadb5efe9bedc6dc3ce9308d https://github.com/WebKit/WebKit/commit/35a56e6b2d4ab965fadb5efe9bedc6dc3ce9308d Author: Youenn Fablet <youe...@gmail.com> Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths: A LayoutTests/imported/w3c/web-platform-tests/mediacapture-insertable-streams/MediaStreamTrackProcessor-maxBufferSize.worker-expected.txt A LayoutTests/imported/w3c/web-platform-tests/mediacapture-insertable-streams/MediaStreamTrackProcessor-maxBufferSize.worker.html A LayoutTests/imported/w3c/web-platform-tests/mediacapture-insertable-streams/MediaStreamTrackProcessor-maxBufferSize.worker.js M Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.cpp M Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.h M Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.idl Log Message: ----------- Implement MediaStreamTrackProcessor maxBufferSize support rdar://121256478 https://bugs.webkit.org/show_bug.cgi?id=267763 Reviewed by Eric Carlson. We add support for buffering some video frames based on maxBufferSize using a Deque. The size restriction is enforced in the media pipeline to limit buffering even if the worker thread is blocked. We keep a maxBufferSize of 1 in Cocoa ports for camera sources since they used a limited number of video frames so buffering could stop the camera and fail capture. * LayoutTests/imported/w3c/web-platform-tests/mediacapture-insertable-streams/MediaStreamTrackProcessor-maxBufferSize.worker-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/mediacapture-insertable-streams/MediaStreamTrackProcessor-maxBufferSize.worker.html: Added. * LayoutTests/imported/w3c/web-platform-tests/mediacapture-insertable-streams/MediaStreamTrackProcessor-maxBufferSize.worker.js: Added. (makeVideoFrame): (promise_test.async t): * Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.cpp: (WebCore::MediaStreamTrackProcessor::create): (WebCore::MediaStreamTrackProcessor::MediaStreamTrackProcessor): (WebCore::MediaStreamTrackProcessor::VideoFrameObserverWrapper::create): (WebCore::MediaStreamTrackProcessor::VideoFrameObserverWrapper::initialize): (WebCore::MediaStreamTrackProcessor::VideoFrameObserver::VideoFrameObserver): (WebCore::MediaStreamTrackProcessor::VideoFrameObserver::takeVideoFrame): (WebCore::MediaStreamTrackProcessor::VideoFrameObserver::videoFrameAvailable): * Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.h: * Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.idl: Canonical link: https://commits.webkit.org/273310@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes