Contact emails
gui...@chromium.org, h...@chromium.org
Spec
https://w3c.github.io/mediacapture-main/#event-mediadevices-devicechange
Tag review:https://github.com/w3ctag/spec-reviews/issues/57
Summary
This intent covers the addition of the devicechange event to the MediaDevices object. This event is fired when a media device is connected to or removed from the system.
Link to “Intent to Implement” blink-dev discussion
https://groups.google.com/a/chromium.org/d/msg/blink-dev/wdSV0zUuvJQ/Jd7p_mAIDgAJ
Is this feature supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
The feature has full support on Windows, Linux and ChromeOS.
Mac is supported too, but events corresponding to output-only audio devices currently do not trigger the devicechange event. The reason is that the Mac APIs Chromium currently uses for monitoring support only media input devices. We consider this a bug that may be fixed in the future using other Mac APIs.
There is no support for Android or Android WebView. The reason is that there is no underlying hardware monitoring support in Chromium for these platforms.
Interoperability and Compatibility Risk
The interoperability risk is low since the feature has been in the spec without any significant change for more than two years and is supported by Edge . The feature is in active development in firefox.
There are no significant compatibility risks associated with this feature as it does not affect existing applications that are not aware of this event.
OWP launch tracking bug
Entry on the feature dashboard
https://www.chromestatus.com/feature/5662847321243648
Re enumerate before permission:The example that's most often come up in discussion is to figure out if the (special) camera you were configured to use the last time is still there.
Runner-up is to figure out whether there are video devices present, and if not, present a pure audio interface.
One possibility that came up at TPAC when discussing the media-info permission was that we could pass a new parameter to enumerateDevices that says "I really need the labels, even if you have to ask the user for permission to get them". This would be a good answer to "what do I do instead of polling".but that wasn't cited as an immediate suggested change.
On Mon, Sep 26, 2016 at 2:25 PM Harald Alvestrand <h...@google.com> wrote:Re enumerate before permission:The example that's most often come up in discussion is to figure out if the (special) camera you were configured to use the last time is still there.In this case one should still have the permission from last time, right? If the permission was revoked, then should that not be treated similarly to what the spec suggests for clearing cookies?
Runner-up is to figure out whether there are video devices present, and if not, present a pure audio interface.Makes sense, do you know of any site that does this? If there is a UI difference based on camera presence, then this seems like a case where reacting to device changes would be useful, and they'll still need to poll enumerateDevices().
One possibility that came up at TPAC when discussing the media-info permission was that we could pass a new parameter to enumerateDevices that says "I really need the labels, even if you have to ask the user for permission to get them". This would be a good answer to "what do I do instead of polling".but that wasn't cited as an immediate suggested change.In spec land, is the idea that there should ultimately be separate or merged permissions for enumerating and using? https://w3c.github.io/permissions/#media-devices only mentions getUserMedia(), but has enumerateDevices() in an example...
you can observe the event from multiple tabs, which allows to detect that tabs are running on the same device
On Mon, Sep 26, 2016 at 4:29 PM, Philip Jägenstedt <foo...@chromium.org> wrote:On Mon, Sep 26, 2016 at 2:25 PM Harald Alvestrand <h...@google.com> wrote:Re enumerate before permission:The example that's most often come up in discussion is to figure out if the (special) camera you were configured to use the last time is still there.In this case one should still have the permission from last time, right? If the permission was revoked, then should that not be treated similarly to what the spec suggests for clearing cookies?Only if it was stored. Firefox doesn't store by default.
Runner-up is to figure out whether there are video devices present, and if not, present a pure audio interface.Makes sense, do you know of any site that does this? If there is a UI difference based on camera presence, then this seems like a case where reacting to device changes would be useful, and they'll still need to poll enumerateDevices().Cisco has been the most vocal about this, so I suspect they want WebEx to do it.They also want this to be done before asking for devices; once they've grabbed the mike, they're home safe.
One possibility that came up at TPAC when discussing the media-info permission was that we could pass a new parameter to enumerateDevices that says "I really need the labels, even if you have to ask the user for permission to get them". This would be a good answer to "what do I do instead of polling".but that wasn't cited as an immediate suggested change.In spec land, is the idea that there should ultimately be separate or merged permissions for enumerating and using? https://w3c.github.io/permissions/#media-devices only mentions getUserMedia(), but has enumerateDevices() in an example...I specced "device-info" as a separate permission. It ended up as the last line of the section.
I have misgivings about revisiting wg decisions in i2s threads- can you file an issue on mediacapture-main for this, so that the spec people see it? The wg explicitly wanted the event to fire only when labels are present, I do not want to ship this api as non-compliant.
I have misgivings about revisiting wg decisions in i2s threads- can you file an issue on mediacapture-main for this, so that the spec people see it? The wg explicitly wanted the event to fire only when labels are present, I do not want to ship this api as non-compliant.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
☆PhistucK
☆PhistucK
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
<div class="m_3083624950843734075m_6934146904487140413gmail-m_-884175159304806755gmail_msg m_308362495084373
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
LGTM2
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.