NEW 79203
[GTK] MediaStream implementation
https://bugs.webkit.org/show_bug.cgi?id=79203
Summary [GTK] MediaStream implementation
Philippe Normand
Reported 2012-02-22 00:24:07 PST
I wonder if this started failing after r108437. Diff: --- /home/slave/webkitgtk/gtk-linux-64-debug/build/layout-test-results/fast/dom/MediaStream/argument-types-expected.txt +++ /home/slave/webkitgtk/gtk-linux-64-debug/build/layout-test-results/fast/dom/MediaStream/argument-types-actual.txt @@ -14,7 +14,7 @@ PASS navigator.webkitGetUserMedia(Infinity) threw exception TypeError: Not enough arguments. PASS navigator.webkitGetUserMedia(-Infinity) threw exception TypeError: Not enough arguments. PASS navigator.webkitGetUserMedia(emptyFunction) threw exception TypeError: Not enough arguments. -PASS navigator.webkitGetUserMedia("video", emptyFunction) did not throw exception. +FAIL navigator.webkitGetUserMedia("video", emptyFunction) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 PASS navigator.webkitGetUserMedia(undefined, emptyFunction) threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9. PASS navigator.webkitGetUserMedia(null, emptyFunction) threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9. PASS navigator.webkitGetUserMedia({}, emptyFunction) threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9. @@ -27,22 +27,22 @@ PASS navigator.webkitGetUserMedia("video", "video") threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. PASS navigator.webkitGetUserMedia("video", undefined) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. PASS navigator.webkitGetUserMedia("video", null) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. -PASS navigator.webkitGetUserMedia("video", {}) did not throw exception. -PASS navigator.webkitGetUserMedia("video", objectThrowingException) did not throw exception. +FAIL navigator.webkitGetUserMedia("video", {}) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 +FAIL navigator.webkitGetUserMedia("video", objectThrowingException) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 PASS navigator.webkitGetUserMedia("video", true) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. PASS navigator.webkitGetUserMedia("video", 42) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. PASS navigator.webkitGetUserMedia("video", Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. PASS navigator.webkitGetUserMedia("video", -Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. -PASS navigator.webkitGetUserMedia("video", emptyFunction, emptyFunction) did not throw exception. -PASS navigator.webkitGetUserMedia("video", emptyFunction, undefined) did not throw exception. -PASS navigator.webkitGetUserMedia("audio, video", emptyFunction, undefined) did not throw exception. -PASS navigator.webkitGetUserMedia("audio, somethingelse,,video", emptyFunction, undefined) did not throw exception. -PASS navigator.webkitGetUserMedia("audio, video user", emptyFunction, undefined) did not throw exception. -PASS navigator.webkitGetUserMedia("audio, video environment", emptyFunction, undefined) did not throw exception. +FAIL navigator.webkitGetUserMedia("video", emptyFunction, emptyFunction) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 +FAIL navigator.webkitGetUserMedia("video", emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 +FAIL navigator.webkitGetUserMedia("audio, video", emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 +FAIL navigator.webkitGetUserMedia("audio, somethingelse,,video", emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 +FAIL navigator.webkitGetUserMedia("audio, video user", emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 +FAIL navigator.webkitGetUserMedia("audio, video environment", emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 PASS navigator.webkitGetUserMedia("video", emptyFunction, "video") threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. -PASS navigator.webkitGetUserMedia("video", emptyFunction, null) did not throw exception. -PASS navigator.webkitGetUserMedia("video", emptyFunction, {}) did not throw exception. -PASS navigator.webkitGetUserMedia("video", emptyFunction, objectThrowingException) did not throw exception. +FAIL navigator.webkitGetUserMedia("video", emptyFunction, null) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 +FAIL navigator.webkitGetUserMedia("video", emptyFunction, {}) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 +FAIL navigator.webkitGetUserMedia("video", emptyFunction, objectThrowingException) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9 PASS navigator.webkitGetUserMedia("video", emptyFunction, true) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. PASS navigator.webkitGetUserMedia("video", emptyFunction, 42) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. PASS navigator.webkitGetUserMedia("video", emptyFunction, Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
Attachments
Philippe Normand
Comment 1 2012-02-22 00:25:35 PST
Also: --- /home/slave/webkitgtk/gtk-linux-64-debug/build/layout-test-results/fast/mediastream/peerconnection-Attributes-expected.txt +++ /home/slave/webkitgtk/gtk-linux-64-debug/build/layout-test-results/fast/mediastream/peerconnection-Attributes-actual.txt @@ -1,32 +1,10 @@ +CONSOLE MESSAGE: line 62: NOT_SUPPORTED_ERR: DOM Exception 9: The implementation did not support the requested type of object or operation. Tests PeerToPeerConnection related Attributes according to http://www.w3.org/TR/webrtc/ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". -PASS typeof pc.addStream == 'function' is true -PASS typeof pc.removeStream == 'function' is true -PASS typeof pc.close == 'function' is true -PASS pc.NEW ==0 is true -PASS pc.NEGOTIATING == 1 is true -PASS pc.ACTIVE == 2 is true -PASS pc.CLOSED == 3 is true -FAIL pc.ICE_GATHERING == 0x100 should be true. Was false. -FAIL pc.ICE_WAITING == 0x200 should be true. Was false. -FAIL pc.ICE_CHECKING == 0x300 should be true. Was false. -FAIL pc.ICE_CONNECTED == 0x400 should be true. Was false. -FAIL pc.ICE_COMPLETED == 0x500 should be true. Was false. -FAIL pc.ICE_FAILED == 0x600 should be true. Was false. -FAIL pc.ICE_CLOSED == 0x700 should be true. Was false. -FAIL pc.SDP_IDLE == 0x1000 should be true. Was false. -FAIL pc.SDP_WAITING == 0x2000 should be true. Was false. -FAIL pc.SDP_GLARE ==0x3000 should be true. Was false. -PASS typeof pc.localStreams == 'object' is true -PASS typeof pc.remoteStreams == 'object' is true -PASS typeof pc.onaddstream == 'object' is true -PASS typeof pc.onremovestream == 'object' is true -PASS typeof pc.onconnecting == 'object' is true -PASS typeof pc.onopen == 'object' is true -PASS successfullyParsed is true +FAIL successfullyParsed should be true (of type boolean). Was undefined (of type undefined). TEST COMPLETE
Philippe Normand
Comment 2 2012-02-22 07:09:02 PST
And: --- /home/slave/webkitgtk/gtk-linux-64-release/build/layout-test-results/fast/mediastream/peerconnection-argument-types-expected.txt +++ /home/slave/webkitgtk/gtk-linux-64-release/build/layout-test-results/fast/mediastream/peerconnection-argument-types-actual.txt @@ -3,7 +3,7 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". -PASS typeof webkitPeerConnection== 'function' is true +FAIL typeof webkitPeerConnection== 'function' should be true. Was false. PASS new webkitPeerConnection() threw exception TypeError: Not enough arguments. PASS new webkitPeerConnection("STUN 203.0.113.2:2478") threw exception TypeError: Not enough arguments. PASS new webkitPeerConnection("STUN relay.example.net:3478") threw exception TypeError: Not enough arguments. @@ -45,7 +45,7 @@ PASS new webkitPeerConnection("STUN NONE",emptyFunction) did not throw exception. PASS new webkitPeerConnection("STUNS NONE",emptyFunction) did not throw exception. PASS new webkitPeerConnection("TURN NONE",undefined) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. -PASS new webkitPeerConnection("TURNS NONE",{}) did not throw exception. +FAIL new webkitPeerConnection("TURNS NONE",{}) should not throw exception. Threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17 PASS new webkitPeerConnection("STUN NONE",42) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. PASS new webkitPeerConnection("STUNS NONE",Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17. PASS new webkitPeerConnection("STUNS NONE",-Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
Zan Dobersek
Comment 3 2012-05-05 10:09:37 PDT
The following tests were found to be passing consistently after moving from using the Skipped list to using test_expectations.txt: fast/mediastream/peerconnection-Attributes.html Their expectations were removed in r116122[1] (covered by bug #85591). Tests that are covered by this bug and are still failing are the following: fast/mediastream/argument-types.html fast/mediastream/constructors.html fast/mediastream/peerconnection-argument-types.html fast/mediastream/peerconnection-iceoptions.html 1: http://trac.webkit.org/changeset/116122
Philippe Normand
Comment 4 2012-05-15 16:17:20 PDT
As agreed with Martin we decided to skip the whole fast/mediastream suite until someone actually devotes time to complete the implementation. Please note however that mediastream is still enabled in build-webkit so the bots still catch compilation issues.
Philippe Normand
Comment 5 2013-10-07 05:26:28 PDT
Let's turn this one into a meta-bug.
Philippe Normand
Comment 6 2015-03-09 00:58:56 PDT
We are going to leverage the OpenWebRTC library for mediastream/webrtc support in the GTK port.
Carlos Alberto Lopez Perez
Comment 7 2017-01-17 17:36:38 PST
Done: unskipped all the MediaStream tests and instead marked the ones still failing or timing out as such in r210838: <http://trac.webkit.org/changeset/210838> Rationale: https://bugs.webkit.org/show_bug.cgi?id=160996#c2
Charlie Turner
Comment 8 2017-07-25 08:22:14 PDT
fast/mediastream/MediaStream-video-element-track-stop.html is no longer timing out, but rather either passing or crashing. Will update in separate gardening commit.
Miguel Gomez
Comment 9 2018-06-14 07:15:15 PDT
fast/mediastream/MediaStream-video-element.html is flaky pass/crash, updating the expectations file.
Miguel Gomez
Comment 10 2018-07-26 07:53:42 PDT
fast/mediastream/MediaStream-video-element.html is flaky timeout/text/pass on WPE. Updated expectations.
Miguel Gomez
Comment 11 2018-11-29 07:09:03 PST
imported/w3c/web-platform-tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https.html is flaky. It's marked as text failure but every now and then it passes.
Miguel Gomez
Comment 12 2019-01-10 05:56:28 PST
fast/mediastream/mock-media-source-webaudio.html is now flaky timeout/pass Updating expectations.
Miguel Gomez
Comment 13 2019-01-10 07:07:01 PST
Since r238951 fast/mediastream/getUserMedia-webaudio.html doesn't fail. Most of the time it passes but sometimes it times out on the first round.
Alicia Boya García
Comment 14 2019-03-27 16:21:06 PDT
fast/mediastream/MediaStream-video-element-track-stop.html is now failing instead of [Crash Timeout]. It's a bit too son to say if the other expectations (e.g. flaky crashes) don't happen.
Diego Pino
Comment 15 2019-04-05 04:43:39 PDT
It seems Miguel correctly diagnose the new status of `fast/mediastream/mock-media-source-webaudio.html` and `fast/mediastream/getUserMedia-webaudio.html` but test expectations were not updated. Fixed in https://trac.webkit.org/changeset/243930/webkit
Zan Dobersek
Comment 16 2020-05-19 00:26:44 PDT
No longer crashing: - fast/mediastream/MediaStream-video-element-track-stop.html (flaky failure/timeout) - fast/mediastream/RTCPeerConnection-icecandidate-event.html (flaky pass/timeout) - fast/mediastream/RTCPeerConnection-media-setup-two-dialogs.html (now passing) - fast/mediastream/RTCPeerConnection-addIceCandidate.html (now passing) - fast/mediastream/RTCPeerConnection-media-setup-callbacks-single-dialog.html (now passing)
Arcady Goldmints-Orlov
Comment 17 2021-09-07 17:06:21 PDT
As of r282054, fast/mediastream/RTCPeerConnection-iceconnectionstatechange-event.html is now a flaky failure instead of a consistent timeout.
Note You need to log in before you can comment on or make changes to this bug.