MediaStreamAPI - Словарь MediaTrackCapabilities

Читая эту статью я вижу, что можно увидеть возможности устройств ввода. К сожалению, я не могу получить доступ к этому.

var video = document.querySelector('video');
var constraints = window.constraints = {
  audio: true,
  video: true
};
var errorElement = document.querySelector('#errorMsg');

navigator.mediaDevices.getUserMedia(constraints)
.then(function(stream) {
  var videoTracks = stream.getVideoTracks();
  //console.log('Got stream with constraints:', constraints);
  console.log('Using video device: ' + videoTracks[0].label);
  var audioTracks = stream.getAudioTracks();
  audioTracks.getCapabilities();//xxxx

//...

Итак, могу ли я предположить, что это не реализовано?

1 ответ

Решение

Это еще не реализовано в Chrome и Firefox.

Хотя спецификация позволяет браузерам уменьшать масштаб (Chrome делает, Firefox - нет), им не разрешается увеличивать масштаб, поэтому найти самое высокое собственное разрешение устройства легко с getUserMedia просто запросите очень высокое разрешение, используя ограничения. Возвращенное разрешение будет максимальным, которое устройство может обработать.

Если у вас есть несколько камер, он выберет ту, которая имеет самое высокое разрешение, или, если вы не хотите, используйте deviceId ограничение, чтобы предотвратить это.

Другие вопросы по тегам