navigator.mediaDevices.getUserMedia()
方法返回MediaStream
对象与您的视频和音频流。这个MediaStream
对象有getVideoTracks()
和getAudioTracks()
方法。
getVideoTracks()[0]从本地摄像头返回视频流。这个videotrack对象有getSettings()方法返回一些有用的属性,如:
- stream.getVideoTracks()[0].getSettings().deviceId
- stream.getVideoTracks()[0].getSettings().aspectRatio
- stream.getVideoTracks()[0].getSettings().height
- stream.getVideoTracks()[0].getSettings().width
- stream.getVideoTracks()[0].getSettings().frameRate
结果,例如:
aspectRatio:1.3333333333333333
deviceId:“e85a2bd38cb0896cc6223b47c5d3266169524e43b6ab6043d8dd22d60ec01a2f”
frameRate:30
height:480
width:640
aspectRatio - 4x3(1.3333333333333333)或16x9(全屏或不全屏),
deviceId - 网络摄像头Id,
framRate - 您的视频流的帧率,
width - 视频宽度,
height - 视频高度。
使用track.getSettings()方法更简洁:
HTMLElement.textContent = JSON.stringify(stream.getVideoTracks()[0].getSettings(), null, 2);