Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chrome / test / data / webrtc / media_devices.js
blob356184e3b5e6dbf75e148f89f0a5be47aba36613
1 /**
2  * Copyright 2014 The Chromium Authors. All rights reserved.
3  * Use of this source code is governed by a BSD-style license that can be
4  * found in the LICENSE file.
5  */
7 /**
8  * Queries for media devices on the current system using the getMediaDevices
9  * API.
10  *
11  * Returns the list of devices available.
12  */
13 function getMediaDevices() {
14   navigator.getMediaDevices(function(devices) {
15     returnToTest(JSON.stringify(devices));
16   });
19 /**
20  * Queries for media sources on the current system using the getSources API.
21  *
22  * Returns the list of sources available.
23  */
24 function getSources() {
25   MediaStreamTrack.getSources(function(sources) {
26     returnToTest(JSON.stringify(sources));
27   });
30 /**
31  * Queries for video input devices on the current system using the
32  * getSources API.
33  *
34  * This does not guarantee that a getUserMedia with video will succeed, as the
35  * camera could be busy for instance.
36  *
37  * Returns has-video-input-device to the test if there is a webcam available,
38  * no-video-input-devices otherwise.
39  */
40 function hasVideoInputDeviceOnSystem() {
41   MediaStreamTrack.getSources(function(devices) {
42     var hasVideoInputDevice = false;
43     devices.forEach(function(device) {
44       if (device.kind == 'video')
45         hasVideoInputDevice = true;
46     });
48     if (hasVideoInputDevice)
49       returnToTest('has-video-input-device');
50     else
51       returnToTest('no-video-input-devices');
52   });