Changeset 253368 in webkit


Ignore:
Timestamp:
Dec 11, 2019 6:04:48 AM (4 years ago)
Author:
commit-queue@webkit.org
Message:

[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

Patch by Thibault Saunier <tsaunier@igalia.com> on 2019-12-11
Reviewed by Philippe Normand.

Source/WebCore:

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:

LayoutTests:

  • platform/gtk/TestExpectations: Updated expectations as required
  • platform/wpe/TestExpectations: Updated expectations as required
Location:
trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r253356 r253368  
     12019-12-11  Thibault Saunier  <tsaunier@igalia.com>
     2
     3        [GStreamer][MediaStream] Fix GStreamer capturer mock
     4        https://bugs.webkit.org/show_bug.cgi?id=205066
     5
     6        - Presets where wrongly generated based on GStreamer capabilities
     7        - Audio capturer was not taking into account echo cancellation
     8
     9        Reviewed by Philippe Normand.
     10
     11        * platform/gtk/TestExpectations: Updated expectations as required
     12        * platform/wpe/TestExpectations: Updated expectations as required
     13
    1142019-12-10  Peng Liu  <peng.liu6@apple.com>
    215
  • trunk/LayoutTests/platform/gtk/TestExpectations

    r253312 r253368  
    574574webkit.org/b/79203 fast/mediastream/RTCPeerConnection-stats.html [ Timeout Crash ]
    575575webkit.org/b/79203 fast/mediastream/get-display-media-muted.html [ Timeout ]
     576webkit.org/b/79203 fast/mediastream/constraint-intrinsic-size.html [ Skip ]
    576577webkit.org/b/151344 fast/mediastream/MediaStream-add-ended-tracks.html [ Timeout ]
     578webkit.org/b/205057 fast/mediastream/MediaStreamTrack-getSettings.html [ Failure ]
    577579# Crash is bug #176801
    578580webkit.org/b/160996 fast/mediastream/MediaStream-video-element-video-tracks-disabled.html [ ImageOnlyFailure Crash ]
     
    22062208
    22072209webkit.org/b/191886 fast/mediastream/MediaStream-video-element-remove-track.html [ Failure ]
     2210
    22082211
    22092212# Console log lines may appear in a different order so we silence them.
     
    37533756webkit.org/b/199002 compositing/repaint/scroller-with-foreground-layer-repaints.html [ Failure ]
    37543757webkit.org/b/199004 fast/events/fire-mousedown-while-pressing-mouse-button.html [ Failure ]
    3755 webkit.org/b/199006 fast/mediastream/MediaStreamTrack-getCapabilities.html [ Failure ]
    37563758
    37573759webkit.org/b/199009 fast/text/variations/optical-sizing-units.html [ ImageOnlyFailure ]
     
    37623764webkit.org/b/199860 accessibility/datalist.html [ Failure ]
    37633765webkit.org/b/199868 accessibility/gtk/aria-haspopup.html [ Failure ]
    3764 
    3765 webkit.org/b/199440 fast/mediastream/apply-constraints-video.html [ Failure ]
    3766 webkit.org/b/199440 fast/mediastream/getUserMedia-video-rescaling.html [ Failure ]
    37673766
    37683767webkit.org/b/199437 compositing/geometry/limit-layer-bounds-clipping-ancestor.html [ Failure ]
  • trunk/LayoutTests/platform/wpe/TestExpectations

    r253312 r253368  
    116116webkit.org/b/160996 fast/mediastream/MediaStream-video-element-video-tracks-disabled.html [ Timeout ImageOnlyFailure Crash ]
    117117webkit.org/b/173257 fast/mediastream/getUserMedia-grant-persistency3.html [ Pass Failure ]
     118
     119webkit.org/b/205057 fast/mediastream/MediaStreamTrack-getSettings.html [ Failure ]
    118120
    119121# Canvas captureStream support is not implemented
     
    18721874
    18731875webkit.org/b/192886 fast/mediastream/media-stream-renders-first-frame.html [ Failure ]
     1876webkit.org/b/192888 fast/mediastream/resize-letterbox.html [ Failure ]
     1877webkit.org/b/192888 fast/mediastream/resize-trim.html [ Failure ]
     1878
     1879# No support for screen capture
     1880webkit.org/b/79203 fast/mediastream/screencapture-user-gesture.html [ Skip ]
     1881webkit.org/b/79203 fast/mediastream/get-display-media-muted.html [ Skip ]
     1882webkit.org/b/79203 fast/mediastream/constraint-intrinsic-size.html [ Skip ]
     1883webkit.org/b/198113 fast/mediastream/media-stream-page-muted.html [ Timeout Pass ]
    18741884
    18751885webkit.org/b/192891 fast/writing-mode/vertical-align-table-baseline.html [ Failure ]
     
    19311941
    19321942webkit.org/b/196199 http/tests/IndexedDB/storage-limit-1.https.html [ Failure ]
    1933 
    1934 webkit.org/b/199440 fast/mediastream/apply-constraints-video.html [ Failure ]
    1935 webkit.org/b/199440 fast/mediastream/getUserMedia-video-rescaling.html [ Failure ]
    19361943
    19371944webkit.org/b/200301 storage/websql/alter-to-info-table.html [ Failure ]
  • trunk/Source/WebCore/ChangeLog

    r253367 r253368  
     12019-12-11  Thibault Saunier  <tsaunier@igalia.com>
     2
     3        [GStreamer][MediaStream] Fix GStreamer capturer mock
     4        https://bugs.webkit.org/show_bug.cgi?id=205066
     5
     6        - Presets where wrongly generated based on GStreamer capabilities
     7        - Audio capturer was not taking into account echo cancellation
     8
     9        Reviewed by Philippe Normand.
     10
     11        This fixes a few tests
     12
     13        * platform/mediastream/RealtimeVideoCaptureSource.h:
     14        (WebCore::RealtimeVideoCaptureSource::canResizeVideoFrames const):
     15        * platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h:
     16        * platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.cpp:
     17        (WebCore::WrappedMockRealtimeAudioSource::addHum):
     18        * platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.cpp:
     19        (WebCore::WrappedMockRealtimeVideoSource::presets):
     20        (WebCore::MockGStreamerVideoCaptureSource::generatePresets):
     21        * platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.h:
     22        * platform/mock/MockRealtimeVideoSource.h:
     23
    1242019-12-11  Charlie Turner  <cturner@igalia.com>
    225
  • trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h

    r247347 r253368  
    5050    void stopProducingData() override;
    5151    bool canResizeVideoFrames() const final { return true; }
    52     void generatePresets() final;
     52    void generatePresets() override;
    5353
    5454
  • trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.cpp

    r252681 r253368  
    6363    void addHum(float amplitude, float frequency, float sampleRate, uint64_t start, float *p, uint64_t count)
    6464    {
     65        if (echoCancellation()) {
     66            GST_DEBUG("echo cancel off..., no hum");
     67            return;
     68        }
    6569        float humPeriod = sampleRate / frequency;
    6670        for (uint64_t i = start, end = start + count; i < end; ++i) {
  • trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.cpp

    r247407 r253368  
    4343        return *this;
    4444    }
     45
     46    const Vector<Ref<VideoPreset>>& presets()
     47    {
     48        return MockRealtimeVideoSource::presets();
     49    }
     50
     51    bool canResizeVideoFrames() const final { return true; }
    4552
    4653    void updateSampleBuffer()
     
    142149}
    143150
     151void MockGStreamerVideoCaptureSource::generatePresets()
     152{
     153    setSupportedPresets(m_wrappedSource->presets());
     154}
     155
    144156void MockGStreamerVideoCaptureSource::captureFailed()
    145157{
  • trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.h

    r247407 r253368  
    4141
    4242private:
     43    void generatePresets() final;
    4344    void stopProducingData() final;
    4445    void startProducingData() final;
  • trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.h

    r248046 r253368  
    6363    void settingsDidChange(OptionSet<RealtimeMediaSourceSettings::Flag>) override;
    6464    MediaSample::VideoRotation sampleRotation() const final { return m_deviceOrientation; }
     65    void generatePresets() override;
    6566
    6667private:
     
    7778    IntSize captureSize() const;
    7879
    79     void generatePresets() final;
    8080
    8181    bool isMockSource() const final { return true; }
Note: See TracChangeset for help on using the changeset viewer.