Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a6f08a128028cea1a82e0b4ce7ed08e14b712b6d https://github.com/WebKit/WebKit/commit/a6f08a128028cea1a82e0b4ce7ed08e14b712b6d Author: Jean-Yves Avenard <j...@apple.com> Date: 2024-06-06 (Thu, 06 Jun 2024)
Changed paths: M Source/WebCore/Modules/mediasource/SourceBuffer.h M Source/WebCore/platform/MediaPromiseTypes.h M Source/WebCore/platform/graphics/SourceBufferPrivate.h M Source/WebCore/testing/Internals.cpp M Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.cpp M Source/WebKit/GPUProcess/media/RemoteMediaSourceProxy.cpp M Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.cpp M Source/WebKit/Platform/IPC/Connection.h M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in M Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.cpp M Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.h M Tools/TestWebKitAPI/Tests/IPC/ConnectionTests.cpp Log Message: ----------- Use PromiseConverter for Media IPC promises where useful https://bugs.webkit.org/show_bug.cgi?id=275056 rdar://129161680 Reviewed by Youenn Fablet. We use PromiseConverter in Media code so as to translate to media NativePromise from IPC ones. We introduce a MediaPromiseConverter for that purpose. We use it in Remote objects. We update SourceBuffer::SamplesPromise to take a PlatformMediaError instead of an int. This allows to reuse MediaPromiseConverter a bit more. We update Internals::bufferedSamplesForTrackId and Internals::enqueuedSamplesForTrackID to test for potential errors and reject the JS promise accordingly. We also update SourceBufferPrivateRemote::bufferedSamplesForTrackId and SourceBufferPrivateRemote::enqueuedSamplesForTrackID to reject in case of IPC error. This is ok as this is a testing API only. Fly-by: remove no longer used Connection::sendWithPromisedReplyOnDispatcher * Source/WebCore/Modules/mediasource/SourceBuffer.h: * Source/WebCore/platform/MediaPromiseTypes.h: (WebCore::MediaErrorPromiseConverter::convertError): * Source/WebCore/platform/graphics/SourceBufferPrivate.h: * Source/WebCore/testing/Internals.cpp: (WebCore::Internals::bufferedSamplesForTrackId): (WebCore::Internals::enqueuedSamplesForTrackID): * Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.cpp: (WebKit::RemoteMediaPlayerProxy::commitAllTransactions): * Source/WebKit/GPUProcess/media/RemoteMediaSourceProxy.cpp: (WebKit::RemoteMediaSourceProxy::waitForTarget): (WebKit::RemoteMediaSourceProxy::seekToTime): * Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.cpp: (WebKit::RemoteSourceBufferProxy::sourceBufferPrivateDidReceiveInitializationSegment): (WebKit::RemoteSourceBufferProxy::sourceBufferPrivateDurationChanged): (WebKit::RemoteSourceBufferProxy::sourceBufferPrivateBufferedChanged): * Source/WebKit/Platform/IPC/Connection.h: (IPC::Connection::sendWithPromisedReply): (IPC::Connection::sendWithPromisedReplyOnDispatcher): Deleted. * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in: * Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.cpp: (WebKit::SourceBufferPrivateRemote::removeCodedFrames): (WebKit::SourceBufferPrivateRemote::setMaximumBufferSize): (WebKit::SourceBufferPrivateRemote::computeSeekTime): (WebKit::SourceBufferPrivateRemote::bufferedSamplesForTrackId): (WebKit::SourceBufferPrivateRemote::enqueuedSamplesForTrackID): * Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.h: * Tools/TestWebKitAPI/Tests/IPC/ConnectionTests.cpp: Canonical link: https://commits.webkit.org/279768@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes