5-1 【基础铺垫,学前有概念】WebRTC获取音视频设备


5-2 【实战】在页面中显示获取到的设备
public下面新建目录device,新建文件
代码
index.html
<html><head><title> WebRTC get audio and video devices</title></head><body><div><label>audio input device:</label><select id="audioSource"></select></div><div><label>audio output device:</label><select id="audioOutput"></select></div><div><label>video input device:</label><select id="videoSource"></select></div><script src="./js/client.js"></script></body></html>
client.js
'use strict'var audioSource = document.querySelector("select#audioSource");var audioOutput = document.querySelector("select#audioOutput");var videoSource = document.querySelector("select#videoSource");if(!navigator.mediaDevices ||!navigator.mediaDevices.enumerateDevices){console.log('enumerateDevices is not supported!');}else {navigator.mediaDevices.enumerateDevices().then(gotDevices).catch(handleError);}function gotDevices(deviceInfos){deviceInfos.forEach( function(deviceInfo){console.log(deviceInfo.kind + ": label = "+ deviceInfo.label + ": id = "+ deviceInfo.deviceId + ": groupId = "+ deviceInfo.groupId);var option = document.createElement('option');option.text = deviceInfo.label;option.value = deviceInfo.deviceId;if(deviceInfo.kind === 'audioinput'){audioSource.appendChild(option);}else if(deviceInfo.kind === 'audiooutput'){audioOutput.appendChild(option);}else if(deviceInfo.kind === 'videoinput'){videoSource.appendChild(option);}});}function handleError(err){console.log(err.name + " : " + err.message);}
http查看
需要使用https才能查看

