<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>79203</bug_id>
          
          <creation_ts>2012-02-22 00:24:07 -0800</creation_ts>
          <short_desc>[GTK] MediaStream implementation</short_desc>
          <delta_ts>2021-09-07 17:06:21 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk, LayoutTestFailure</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>110150</dependson>
    
    <dependson>122322</dependson>
    
    <dependson>122324</dependson>
    
    <dependson>122443</dependson>
    
    <dependson>122444</dependson>
    
    <dependson>122831</dependson>
    
    <dependson>122832</dependson>
    
    <dependson>122833</dependson>
    
    <dependson>122834</dependson>
    
    <dependson>123144</dependson>
    
    <dependson>123145</dependson>
    
    <dependson>123158</dependson>
    
    <dependson>123345</dependson>
    
    <dependson>142393</dependson>
    
    <dependson>142476</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Philippe Normand">pnormand</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aboya</cc>
    
    <cc>agouaillard</cc>
    
    <cc>aperez</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>bugzilla</cc>
    
    <cc>clopez</cc>
    
    <cc>crzwdjk</cc>
    
    <cc>cturner</cc>
    
    <cc>dpino</cc>
    
    <cc>isair</cc>
    
    <cc>magomez</cc>
    
    <cc>slomo</cc>
    
    <cc>tsaunier</cc>
    
    <cc>vjaquez</cc>
    
    <cc>yanbin.zhang</cc>
    
    <cc>yujie.mao</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>561694</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-02-22 00:24:07 -0800</bug_when>
    <thetext>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(&quot;video&quot;, emptyFunction) did not throw exception.
+FAIL navigator.webkitGetUserMedia(&quot;video&quot;, 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(&quot;video&quot;, &quot;video&quot;) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, undefined) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, null) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
-PASS navigator.webkitGetUserMedia(&quot;video&quot;, {}) did not throw exception.
-PASS navigator.webkitGetUserMedia(&quot;video&quot;, objectThrowingException) did not throw exception.
+FAIL navigator.webkitGetUserMedia(&quot;video&quot;, {}) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
+FAIL navigator.webkitGetUserMedia(&quot;video&quot;, objectThrowingException) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, true) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, 42) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, -Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
-PASS navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, emptyFunction) did not throw exception.
-PASS navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, undefined) did not throw exception.
-PASS navigator.webkitGetUserMedia(&quot;audio, video&quot;, emptyFunction, undefined) did not throw exception.
-PASS navigator.webkitGetUserMedia(&quot;audio, somethingelse,,video&quot;, emptyFunction, undefined) did not throw exception.
-PASS navigator.webkitGetUserMedia(&quot;audio, video user&quot;, emptyFunction, undefined) did not throw exception.
-PASS navigator.webkitGetUserMedia(&quot;audio, video environment&quot;, emptyFunction, undefined) did not throw exception.
+FAIL navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, emptyFunction) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
+FAIL navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
+FAIL navigator.webkitGetUserMedia(&quot;audio, video&quot;, emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
+FAIL navigator.webkitGetUserMedia(&quot;audio, somethingelse,,video&quot;, emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
+FAIL navigator.webkitGetUserMedia(&quot;audio, video user&quot;, emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
+FAIL navigator.webkitGetUserMedia(&quot;audio, video environment&quot;, emptyFunction, undefined) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, &quot;video&quot;) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
-PASS navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, null) did not throw exception.
-PASS navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, {}) did not throw exception.
-PASS navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, objectThrowingException) did not throw exception.
+FAIL navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, null) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
+FAIL navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, {}) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
+FAIL navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, objectThrowingException) should not throw exception. Threw exception Error: NOT_SUPPORTED_ERR: DOM Exception 9
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, true) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, 42) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
 PASS navigator.webkitGetUserMedia(&quot;video&quot;, emptyFunction, Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>561695</commentid>
    <comment_count>1</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-02-22 00:25:35 -0800</bug_when>
    <thetext>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 &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
 
 
-PASS typeof pc.addStream == &apos;function&apos; is true
-PASS typeof pc.removeStream == &apos;function&apos; is true
-PASS typeof pc.close == &apos;function&apos; 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 == &apos;object&apos; is true
-PASS typeof pc.remoteStreams == &apos;object&apos; is true
-PASS typeof pc.onaddstream == &apos;object&apos; is true
-PASS typeof pc.onremovestream == &apos;object&apos; is true
-PASS typeof pc.onconnecting == &apos;object&apos; is true
-PASS typeof pc.onopen == &apos;object&apos; is true
-PASS successfullyParsed is true
+FAIL successfullyParsed should be true (of type boolean). Was undefined (of type undefined).
 
 TEST COMPLETE</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>561954</commentid>
    <comment_count>2</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-02-22 07:09:02 -0800</bug_when>
    <thetext>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 &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
 
 
-PASS typeof webkitPeerConnection== &apos;function&apos; is true
+FAIL typeof webkitPeerConnection== &apos;function&apos; should be true. Was false.
 PASS new webkitPeerConnection() threw exception TypeError: Not enough arguments.
 PASS new webkitPeerConnection(&quot;STUN 203.0.113.2:2478&quot;) threw exception TypeError: Not enough arguments.
 PASS new webkitPeerConnection(&quot;STUN relay.example.net:3478&quot;) threw exception TypeError: Not enough arguments.
@@ -45,7 +45,7 @@
 PASS new webkitPeerConnection(&quot;STUN NONE&quot;,emptyFunction) did not throw exception.
 PASS new webkitPeerConnection(&quot;STUNS NONE&quot;,emptyFunction) did not throw exception.
 PASS new webkitPeerConnection(&quot;TURN NONE&quot;,undefined) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
-PASS new webkitPeerConnection(&quot;TURNS NONE&quot;,{}) did not throw exception.
+FAIL new webkitPeerConnection(&quot;TURNS NONE&quot;,{}) should not throw exception. Threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17
 PASS new webkitPeerConnection(&quot;STUN NONE&quot;,42) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
 PASS new webkitPeerConnection(&quot;STUNS NONE&quot;,Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.
 PASS new webkitPeerConnection(&quot;STUNS NONE&quot;,-Infinity) threw exception Error: TYPE_MISMATCH_ERR: DOM Exception 17.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617025</commentid>
    <comment_count>3</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2012-05-05 10:09:37 -0700</bug_when>
    <thetext>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</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624707</commentid>
    <comment_count>4</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-05-15 16:17:20 -0700</bug_when>
    <thetext>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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>937027</commentid>
    <comment_count>5</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2013-10-07 05:26:28 -0700</bug_when>
    <thetext>Let&apos;s turn this one into a meta-bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075545</commentid>
    <comment_count>6</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2015-03-09 00:58:56 -0700</bug_when>
    <thetext>We are going to leverage the OpenWebRTC library for mediastream/webrtc support in the GTK port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267599</commentid>
    <comment_count>7</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2017-01-17 17:36:38 -0800</bug_when>
    <thetext>Done: unskipped all the MediaStream tests and instead marked the ones still failing or timing out as such in r210838: &lt;http://trac.webkit.org/changeset/210838&gt;

Rationale: https://bugs.webkit.org/show_bug.cgi?id=160996#c2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1331935</commentid>
    <comment_count>8</comment_count>
    <who name="Charlie Turner">cturner</who>
    <bug_when>2017-07-25 08:22:14 -0700</bug_when>
    <thetext>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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1432976</commentid>
    <comment_count>9</comment_count>
    <who name="Miguel Gomez">magomez</who>
    <bug_when>2018-06-14 07:15:15 -0700</bug_when>
    <thetext>fast/mediastream/MediaStream-video-element.html is flaky pass/crash, updating the expectations file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1445409</commentid>
    <comment_count>10</comment_count>
    <who name="Miguel Gomez">magomez</who>
    <bug_when>2018-07-26 07:53:42 -0700</bug_when>
    <thetext>fast/mediastream/MediaStream-video-element.html is flaky timeout/text/pass on WPE. Updated expectations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482933</commentid>
    <comment_count>11</comment_count>
    <who name="Miguel Gomez">magomez</who>
    <bug_when>2018-11-29 07:09:03 -0800</bug_when>
    <thetext>imported/w3c/web-platform-tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https.html

is flaky. It&apos;s marked as text failure but every now and then it passes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493265</commentid>
    <comment_count>12</comment_count>
    <who name="Miguel Gomez">magomez</who>
    <bug_when>2019-01-10 05:56:28 -0800</bug_when>
    <thetext>fast/mediastream/mock-media-source-webaudio.html is now flaky timeout/pass

Updating expectations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493284</commentid>
    <comment_count>13</comment_count>
    <who name="Miguel Gomez">magomez</who>
    <bug_when>2019-01-10 07:07:01 -0800</bug_when>
    <thetext>Since r238951 fast/mediastream/getUserMedia-webaudio.html doesn&apos;t fail. Most of the time it passes but sometimes it times out on the first round.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1521904</commentid>
    <comment_count>14</comment_count>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2019-03-27 16:21:06 -0700</bug_when>
    <thetext>fast/mediastream/MediaStream-video-element-track-stop.html is now failing instead of [Crash Timeout]. It&apos;s a bit too son to say if the other expectations (e.g. flaky crashes) don&apos;t happen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1524658</commentid>
    <comment_count>15</comment_count>
    <who name="Diego Pino">dpino</who>
    <bug_when>2019-04-05 04:43:39 -0700</bug_when>
    <thetext>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</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1653933</commentid>
    <comment_count>16</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2020-05-19 00:26:44 -0700</bug_when>
    <thetext>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)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1791278</commentid>
    <comment_count>17</comment_count>
    <who name="Arcady Goldmints-Orlov">crzwdjk</who>
    <bug_when>2021-09-07 17:06:21 -0700</bug_when>
    <thetext>As of r282054, fast/mediastream/RTCPeerConnection-iceconnectionstatechange-event.html is now a flaky failure instead of a consistent timeout.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>