diff --git a/index.html b/index.html index ef405bb..e261f35 100644 --- a/index.html +++ b/index.html @@ -80,13 +80,8 @@
Let document be the
-
- current settings object's
-
- relevant global object's
-
- associated Document.
Let document be [=this=]'s [=relevant global object=]'s + [=associated `Document`=].
If document is not @@ -248,7 +243,7 @@
When the {{selectAudioOutput}} method is called, the [=user agent=] MUST run the following steps:
If the [=relevant global object=] of [=this=] does not have +
If [=this=]'s [=relevant global object=] does not have [=transient activation=], return a promise rejected with a {{DOMException}} object whose {{DOMException/name}} attribute has the value {{InvalidStateError}}.
Let deviceInfo be a new {{MediaDeviceInfo}} object to represent the selected audio output device.
Add deviceInfo.{{MediaDeviceInfo/deviceId}} - to [[\explicitlyGrantedAudioOutputDevices]].
Resolve p with deviceInfo.
On page load, run the following step:
-Upon [=create a MediaDevices | creation of a MediaDevices=] object + mediaDevices, initialize mediaDevices with an + additional internal slot:
+On the relevant global object, - create an internal slot: [[\explicitlyGrantedAudioOutputDevices]], - used to store devices that the user grants explicitly through {{MediaDevices/selectAudioOutput}}, - initialized to an empty set.
+[[\explicitlyGrantedAudioOutputDevices]], + to store devices that the user grants explicitly through + {{MediaDevices/selectAudioOutput}}, initialized to an empty [=map/set=].
This specification specifies the exposure decision algorithm for devices other than camera and microphone. - The algorithm runs as follows, with device, microphoneList and cameraList as input: + The algorithm runs as follows, with device, microphoneList, cameraList and + mediaDevices as input:
Let document be the
-
- current settings object's
-
- relevant global object's
-
- associated Document.
Let document be mediaDevices's + [=relevant global object=]'s [=associated `Document`=].
Let deviceInfo be a new {{MediaDeviceInfo}} object to represent the device.
If deviceInfo.{{MediaDeviceInfo/deviceId}}
- is in [[\explicitlyGrantedAudioOutputDevices]], return true.
true.
If deviceInfo.{{MediaDeviceInfo/groupId}} diff --git a/script.js b/script.js index a8d5da9..f923499 100644 --- a/script.js +++ b/script.js @@ -57,7 +57,7 @@ var respecConfig = { // name (without the @w3.org) of the public mailing to which comments are due wgPublicList: "public-webrtc", github: "https://github.com/w3c/mediacapture-output/", - xref: ["webidl", "html", "permissions", "mediacapture-streams", "permissions-policy","dom", "webaudio"], + xref: ["webidl", "html", "permissions", "mediacapture-streams", "permissions-policy","dom", "webaudio", "infra"], implementationReportURI: "https://wpt.fyi/audio-output", otherLinks: [ {