Diff
Modified: trunk/LayoutTests/ChangeLog (253367 => 253368)
--- trunk/LayoutTests/ChangeLog 2019-12-11 12:10:25 UTC (rev 253367)
+++ trunk/LayoutTests/ChangeLog 2019-12-11 14:04:48 UTC (rev 253368)
@@ -1,3 +1,16 @@
+2019-12-11 Thibault Saunier <tsaun...@igalia.com>
+
+ [GStreamer][MediaStream] Fix GStreamer capturer mock
+ https://bugs.webkit.org/show_bug.cgi?id=205066
+
+ - Presets where wrongly generated based on GStreamer capabilities
+ - Audio capturer was not taking into account echo cancellation
+
+ Reviewed by Philippe Normand.
+
+ * platform/gtk/TestExpectations: Updated expectations as required
+ * platform/wpe/TestExpectations: Updated expectations as required
+
2019-12-10 Peng Liu <peng.l...@apple.com>
Create a TestExpectations file for the GPU process related work
Modified: trunk/LayoutTests/platform/gtk/TestExpectations (253367 => 253368)
--- trunk/LayoutTests/platform/gtk/TestExpectations 2019-12-11 12:10:25 UTC (rev 253367)
+++ trunk/LayoutTests/platform/gtk/TestExpectations 2019-12-11 14:04:48 UTC (rev 253368)
@@ -573,7 +573,9 @@
webkit.org/b/79203 fast/mediastream/MediaStream-video-element-displays-buffer.html [ Failure ]
webkit.org/b/79203 fast/mediastream/RTCPeerConnection-stats.html [ Timeout Crash ]
webkit.org/b/79203 fast/mediastream/get-display-media-muted.html [ Timeout ]
+webkit.org/b/79203 fast/mediastream/constraint-intrinsic-size.html [ Skip ]
webkit.org/b/151344 fast/mediastream/MediaStream-add-ended-tracks.html [ Timeout ]
+webkit.org/b/205057 fast/mediastream/MediaStreamTrack-getSettings.html [ Failure ]
# Crash is bug #176801
webkit.org/b/160996 fast/mediastream/MediaStream-video-element-video-tracks-disabled.html [ ImageOnlyFailure Crash ]
webkit.org/b/173257 fast/mediastream/getUserMedia-grant-persistency3.html [ Pass Failure ]
@@ -2206,6 +2208,7 @@
webkit.org/b/191886 fast/mediastream/MediaStream-video-element-remove-track.html [ Failure ]
+
# Console log lines may appear in a different order so we silence them.
imported/w3c/web-platform-tests/offscreen-canvas/convert-to-blob/offscreencanvas.convert.to.blob.w.html [ DumpJSConsoleLogInStdErr ]
imported/w3c/web-platform-tests/offscreen-canvas/the-offscreen-canvas/offscreencanvas.transfer.to.imagebitmap.w.html [ DumpJSConsoleLogInStdErr ]
@@ -3752,7 +3755,6 @@
webkit.org/b/199001 accessibility/set-selected-text-range-after-newline.html [ Failure ]
webkit.org/b/199002 compositing/repaint/scroller-with-foreground-layer-repaints.html [ Failure ]
webkit.org/b/199004 fast/events/fire-mousedown-while-pressing-mouse-button.html [ Failure ]
-webkit.org/b/199006 fast/mediastream/MediaStreamTrack-getCapabilities.html [ Failure ]
webkit.org/b/199009 fast/text/variations/optical-sizing-units.html [ ImageOnlyFailure ]
@@ -3762,9 +3764,6 @@
webkit.org/b/199860 accessibility/datalist.html [ Failure ]
webkit.org/b/199868 accessibility/gtk/aria-haspopup.html [ Failure ]
-webkit.org/b/199440 fast/mediastream/apply-constraints-video.html [ Failure ]
-webkit.org/b/199440 fast/mediastream/getUserMedia-video-rescaling.html [ Failure ]
-
webkit.org/b/199437 compositing/geometry/limit-layer-bounds-clipping-ancestor.html [ Failure ]
webkit.org/b/199872 http/tests/inspector/network/resource-sizes-network.html [ Failure ]
Modified: trunk/LayoutTests/platform/wpe/TestExpectations (253367 => 253368)
--- trunk/LayoutTests/platform/wpe/TestExpectations 2019-12-11 12:10:25 UTC (rev 253367)
+++ trunk/LayoutTests/platform/wpe/TestExpectations 2019-12-11 14:04:48 UTC (rev 253368)
@@ -116,6 +116,8 @@
webkit.org/b/160996 fast/mediastream/MediaStream-video-element-video-tracks-disabled.html [ Timeout ImageOnlyFailure Crash ]
webkit.org/b/173257 fast/mediastream/getUserMedia-grant-persistency3.html [ Pass Failure ]
+webkit.org/b/205057 fast/mediastream/MediaStreamTrack-getSettings.html [ Failure ]
+
# Canvas captureStream support is not implemented
webkit.org/b/169811 fast/mediacapturefromelement [ Skip ]
webkit.org/b/169811 fast/mediastream/captureStream/ [ Failure ]
@@ -1871,7 +1873,15 @@
webkit.org/b/192883 fast/cookies/local-file-can-set-cookies.html [ Failure ]
webkit.org/b/192886 fast/mediastream/media-stream-renders-first-frame.html [ Failure ]
+webkit.org/b/192888 fast/mediastream/resize-letterbox.html [ Failure ]
+webkit.org/b/192888 fast/mediastream/resize-trim.html [ Failure ]
+# No support for screen capture
+webkit.org/b/79203 fast/mediastream/screencapture-user-gesture.html [ Skip ]
+webkit.org/b/79203 fast/mediastream/get-display-media-muted.html [ Skip ]
+webkit.org/b/79203 fast/mediastream/constraint-intrinsic-size.html [ Skip ]
+webkit.org/b/198113 fast/mediastream/media-stream-page-muted.html [ Timeout Pass ]
+
webkit.org/b/192891 fast/writing-mode/vertical-align-table-baseline.html [ Failure ]
webkit.org/b/192900 imported/w3c/web-platform-tests/eventsource/format-mime-bogus.htm [ Failure ]
@@ -1931,9 +1941,6 @@
webkit.org/b/196199 http/tests/IndexedDB/storage-limit-1.https.html [ Failure ]
-webkit.org/b/199440 fast/mediastream/apply-constraints-video.html [ Failure ]
-webkit.org/b/199440 fast/mediastream/getUserMedia-video-rescaling.html [ Failure ]
-
webkit.org/b/200301 storage/websql/alter-to-info-table.html [ Failure ]
webkit.org/b/200301 storage/websql/test-authorizer.html [ Failure ]
Modified: trunk/Source/WebCore/ChangeLog (253367 => 253368)
--- trunk/Source/WebCore/ChangeLog 2019-12-11 12:10:25 UTC (rev 253367)
+++ trunk/Source/WebCore/ChangeLog 2019-12-11 14:04:48 UTC (rev 253368)
@@ -1,3 +1,26 @@
+2019-12-11 Thibault Saunier <tsaun...@igalia.com>
+
+ [GStreamer][MediaStream] Fix GStreamer capturer mock
+ https://bugs.webkit.org/show_bug.cgi?id=205066
+
+ - Presets where wrongly generated based on GStreamer capabilities
+ - Audio capturer was not taking into account echo cancellation
+
+ Reviewed by Philippe Normand.
+
+ This fixes a few tests
+
+ * platform/mediastream/RealtimeVideoCaptureSource.h:
+ (WebCore::RealtimeVideoCaptureSource::canResizeVideoFrames const):
+ * platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h:
+ * platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.cpp:
+ (WebCore::WrappedMockRealtimeAudioSource::addHum):
+ * platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.cpp:
+ (WebCore::WrappedMockRealtimeVideoSource::presets):
+ (WebCore::MockGStreamerVideoCaptureSource::generatePresets):
+ * platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.h:
+ * platform/mock/MockRealtimeVideoSource.h:
+
2019-12-11 Charlie Turner <ctur...@igalia.com>
[GStreamer] Invalid use of UTF-8 validation in ClearKey key data
Modified: trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h (253367 => 253368)
--- trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h 2019-12-11 12:10:25 UTC (rev 253367)
+++ trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h 2019-12-11 14:04:48 UTC (rev 253368)
@@ -49,7 +49,7 @@
void startProducingData() override;
void stopProducingData() override;
bool canResizeVideoFrames() const final { return true; }
- void generatePresets() final;
+ void generatePresets() override;
mutable Optional<RealtimeMediaSourceCapabilities> m_capabilities;
Modified: trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.cpp (253367 => 253368)
--- trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.cpp 2019-12-11 12:10:25 UTC (rev 253367)
+++ trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.cpp 2019-12-11 14:04:48 UTC (rev 253368)
@@ -62,6 +62,10 @@
void addHum(float amplitude, float frequency, float sampleRate, uint64_t start, float *p, uint64_t count)
{
+ if (echoCancellation()) {
+ GST_DEBUG("echo cancel off..., no hum");
+ return;
+ }
float humPeriod = sampleRate / frequency;
for (uint64_t i = start, end = start + count; i < end; ++i) {
float a = amplitude * sin(i * s_Tau / humPeriod);
Modified: trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.cpp (253367 => 253368)
--- trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.cpp 2019-12-11 12:10:25 UTC (rev 253367)
+++ trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.cpp 2019-12-11 14:04:48 UTC (rev 253368)
@@ -43,6 +43,13 @@
return *this;
}
+ const Vector<Ref<VideoPreset>>& presets()
+ {
+ return MockRealtimeVideoSource::presets();
+ }
+
+ bool canResizeVideoFrames() const final { return true; }
+
void updateSampleBuffer()
{
auto imageBuffer = this->imageBuffer();
@@ -141,6 +148,11 @@
return m_capabilities.value();
}
+void MockGStreamerVideoCaptureSource::generatePresets()
+{
+ setSupportedPresets(m_wrappedSource->presets());
+}
+
void MockGStreamerVideoCaptureSource::captureFailed()
{
stop();
Modified: trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.h (253367 => 253368)
--- trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.h 2019-12-11 12:10:25 UTC (rev 253367)
+++ trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.h 2019-12-11 14:04:48 UTC (rev 253368)
@@ -40,6 +40,7 @@
void applyConstraints(const MediaConstraints&, ApplyConstraintsHandler&&) final;
private:
+ void generatePresets() final;
void stopProducingData() final;
void startProducingData() final;
const RealtimeMediaSourceSettings& settings() final;
Modified: trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.h (253367 => 253368)
--- trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.h 2019-12-11 12:10:25 UTC (rev 253367)
+++ trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.h 2019-12-11 14:04:48 UTC (rev 253368)
@@ -62,6 +62,7 @@
Seconds elapsedTime();
void settingsDidChange(OptionSet<RealtimeMediaSourceSettings::Flag>) override;
MediaSample::VideoRotation sampleRotation() const final { return m_deviceOrientation; }
+ void generatePresets() override;
private:
const RealtimeMediaSourceCapabilities& capabilities() final;
@@ -76,7 +77,6 @@
void setFrameRateWithPreset(double, RefPtr<VideoPreset>) final;
IntSize captureSize() const;
- void generatePresets() final;
bool isMockSource() const final { return true; }