<?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>226921</bug_id>
          
          <creation_ts>2021-06-11 07:59:51 -0700</creation_ts>
          <short_desc>MediaDevices devicechange event loop</short_desc>
          <delta_ts>2022-04-27 05:44:24 -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>Media</component>
          <version>Safari 14</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 14</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>CONFIGURATION CHANGED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jon Mudrick">the.jon.mudrick</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>glefebvr</cc>
    
    <cc>jer.noble</cc>
    
    <cc>jovanchohan</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1768930</commentid>
    <comment_count>0</comment_count>
    <who name="Jon Mudrick">the.jon.mudrick</who>
    <bug_when>2021-06-11 07:59:51 -0700</bug_when>
    <thetext>In safari on iOS 14.6, the navigator.mediaDevices devicechange event (https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/devicechange_event) gets called repeatedly as long as a bluetooth headset is connected to the iOS device. The event stops firing as soon as the bluetooth headset is disconnected. Observed with AirPods Pro and Bose QC35 connected to iPhone.

This may have started with the release of iOS 14.5. That&apos;s the first time we started hearing customer complaints about airpods with our webRTC implementation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1769169</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-06-11 19:48:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/79228964&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1770166</commentid>
    <comment_count>2</comment_count>
    <who name="Jon Mudrick">the.jon.mudrick</who>
    <bug_when>2021-06-16 06:24:45 -0700</bug_when>
    <thetext>For an additional data point - airpods pro only cause this loop when connected and in your ears. When removed from ears (not put back in case yet) the event loop stops.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797955</commentid>
    <comment_count>3</comment_count>
    <who name="Jovan Chohan">jovanchohan</who>
    <bug_when>2021-09-28 10:59:35 -0700</bug_when>
    <thetext>I&apos;m also able to reproduce this error on my iPad mini 4 on iOS 14.8. When I plug in wired headphones on a page that has the users MediaStream from getUserMedia() being displayed, the &quot;devicechange&quot; event is being fired very frequently. When the headphones are unlplugged the &quot;devicechange&quot; event stops firing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1864776</commentid>
    <comment_count>4</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2022-04-27 05:44:24 -0700</bug_when>
    <thetext>This works for me on iOS 15.5 beta using this fiddle: https://jsfiddle.net/48utwfkh/
Marking as Configuration changed, please reopen otherwise.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>