tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_enumerateDevices_iframe.html (711B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <body>
      4 <pre id="test">
      5 <script type="application/javascript">
      6 /**
      7  Runs inside iframe in test_enumerateDevices.html.
      8 */
      9 
     10 const pushPrefs = (...p) => SpecialPowers.pushPrefEnv({set: p});
     11 const gUM = c => navigator.mediaDevices.getUserMedia(c);
     12 
     13 (async () => {
     14  await pushPrefs(["media.navigator.streams.fake", true]);
     15 
     16  // Validate enumerated devices after gUM.
     17  for (const track of (await gUM({video: true, audio: true})).getTracks()) {
     18    track.stop();
     19  }
     20 
     21  const devices = await navigator.mediaDevices.enumerateDevices();
     22  parent.postMessage(JSON.stringify(devices), "https://example.com:443");
     23 
     24 })().catch(e => setTimeout(() => { throw e; }));
     25 </script>
     26 </pre>
     27 </body>
     28 </html>