Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: d42fe538c8b6f8f01d268722793c4420a4573abf https://github.com/WebKit/WebKit/commit/d42fe538c8b6f8f01d268722793c4420a4573abf Author: Philippe Normand <ph...@igalia.com> Date: 2023-04-24 (Mon, 24 Apr 2023)
Changed paths: M LayoutTests/platform/glib/TestExpectations M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h M Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp Log Message: ----------- [GStreamer][MediaStream] fast/mediastream/MediaStream-video-element-track-stop.html fails https://bugs.webkit.org/show_bug.cgi?id=254529 Reviewed by Xabier Rodriguez-Calvar. The EOS and position tracking for MediaStreams is improved, we now report monotonically increasing timestamps for the position, similarily to the Mac port. The duration is no longer cached, it's useless in this case, we can always return positiveInfinite() and thus simplify the `didEnd()` method. Also the stream collection is now handled differently, when receiving a new collection we first disable video/text tracks, remove old audio tracks and reactivate tracks corresponding to existing GstStreams. When player no longer has enabled tracks we trigger the EOS mechanism. The mediastreamsrc element will now post an empty stream collection when all its tracks have ended, this allows the media player to deactivate ended video tracks and remove ended audio tracks. * LayoutTests/platform/glib/TestExpectations: * Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivateGStreamer::play): (WebCore::MediaPlayerPrivateGStreamer::pause): (WebCore::MediaPlayerPrivateGStreamer::durationMediaTime const): (WebCore::MediaPlayerPrivateGStreamer::currentMediaTime const): (WebCore::MediaPlayerPrivateGStreamer::updateTracks): (WebCore::MediaPlayerPrivateGStreamer::didEnd): * Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: * Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp: (webkitMediaStreamSrcPostStreamCollection): Canonical link: https://commits.webkit.org/263307@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes