Synchronous versus asynchronous getSourceInfos

getSourceInfos is currently defined as synchronous [1] , but it will need
to reach down into the media subsystem to enumerate capture devices.
Previously, we have suggested that APIs like this should be async, to avoid
blocking the JS thread while waiting for the low-level operation to
complete. For getSourceInfos, I think this is still true - even if we
pre-enumerate devices when the browser starts, it is possible that a page
may make a request before the enumeration has completed, and will still
need to block.

Therefore I suggest that as part of the futures discussion, we consider
whether getSourceInfos should be async, either

void getSourceInfos(successCallback, failureCallback)

or

Future getSourceInfos()

[1] http://dev.w3.org/2011/webrtc/editor/getusermedia.html#methods-1

Received on Tuesday, 4 June 2013 17:39:09 UTC