Title: [274478] trunk/Source/WebCore
- Revision
- 274478
- Author
- calva...@igalia.com
- Date
- 2021-03-16 08:04:10 -0700 (Tue, 16 Mar 2021)
Log Message
[GStreamer][MSE] fix video freeze in NASA TV feed
https://bugs.webkit.org/show_bug.cgi?id=214625
Reviewed by Alicia Boya Garcia.
Initial seek should not be marked as a real seek as it is not
getting seek-datas from GStreamer and therefore it can mess up
with pipeline branches becoming empty after getting an enough-data
because the need-data is expecting seek-datas to complete that
seek that is never going to happen.
A couple of debug output lines were fixed for the same price.
* platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:
(webKitMediaSrcPrepareInitialSeek):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (274477 => 274478)
--- trunk/Source/WebCore/ChangeLog 2021-03-16 14:38:53 UTC (rev 274477)
+++ trunk/Source/WebCore/ChangeLog 2021-03-16 15:04:10 UTC (rev 274478)
@@ -1,3 +1,21 @@
+2021-03-16 Xabier Rodriguez Calvar <calva...@igalia.com>
+
+ [GStreamer][MSE] fix video freeze in NASA TV feed
+ https://bugs.webkit.org/show_bug.cgi?id=214625
+
+ Reviewed by Alicia Boya Garcia.
+
+ Initial seek should not be marked as a real seek as it is not
+ getting seek-datas from GStreamer and therefore it can mess up
+ with pipeline branches becoming empty after getting an enough-data
+ because the need-data is expecting seek-datas to complete that
+ seek that is never going to happen.
+
+ A couple of debug output lines were fixed for the same price.
+
+ * platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:
+ (webKitMediaSrcPrepareInitialSeek):
+
2021-03-16 Ziran Sun <z...@igalia.com>
[css-grid] Replace the use of -1 with WTF::nullopt
Modified: trunk/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp (274477 => 274478)
--- trunk/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp 2021-03-16 14:38:53 UTC (rev 274477)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp 2021-03-16 15:04:10 UTC (rev 274478)
@@ -102,7 +102,7 @@
}
int numAppsrcs = webKitMediaSrc->priv->streams.size();
if (webKitMediaSrc->priv->appsrcSeekDataCount == numAppsrcs && webKitMediaSrc->priv->appsrcNeedDataCount == numAppsrcs) {
- GST_DEBUG("All needDatas completed");
+ GST_DEBUG_OBJECT(webKitMediaSrc, "All needDatas completed");
allAppsrcNeedDataAfterSeek = true;
webKitMediaSrc->priv->appsrcSeekDataCount = 0;
webKitMediaSrc->priv->appsrcNeedDataCount = 0;
@@ -115,7 +115,7 @@
GST_OBJECT_UNLOCK(webKitMediaSrc);
if (allAppsrcNeedDataAfterSeek) {
- GST_DEBUG("All expected appsrcSeekData() and appsrcNeedData() calls performed. Running next action (%d)", static_cast<int>(appsrcSeekDataNextAction));
+ GST_DEBUG_OBJECT(webKitMediaSrc, "All expected appsrcSeekData() and appsrcNeedData() calls performed. Running next action (%d)", static_cast<int>(appsrcSeekDataNextAction));
switch (appsrcSeekDataNextAction) {
case MediaSourceSeekToTime:
@@ -758,7 +758,7 @@
}
// The pending action will be performed in enabledAppsrcSeekData().
- source->priv->appsrcSeekDataNextAction = MediaSourceSeekToTime;
+ source->priv->appsrcSeekDataNextAction = Nothing;
GUniquePtr<GstSegment> segment(gst_segment_new());
segment->format = GST_FORMAT_TIME;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes