Я пытаюсь протестировать WebRTC и хочу отображать свой собственный поток, а также поток одноранговых узлов. В настоящее время у меня есть простая прокладка для получения потока камеры и передачи его в видеоэлемент, однако частота кадров чрезвычайно низкая. Редкость заключается в том, что я могу попробовать примеры с сайта WebRTC, и они работают безупречно. видео плавное и проблем нет. Я подхожу к консоли, и мой код похож на их. Что может произойти? Я попытался создать как fiddle, так и запустить этот код в квадратных скобках, но он по-прежнему работает ужасно.
video = document.getElementById('usr-cam');
navigator.mediaDevices.getUserMedia({video : {
width : {exact : 320},
height : {exact: 240}
}})
.then(function(stream){
if(navigator.mozGetUserMedia)
{
video.mozSrcObject = stream;
}
else
{
video.srcObject = stream;
}
})
.catch(function(e){
alert(e);
});
Почти все, что я делаю. Примите во внимание, что я использую новый navigator.mediaDevices()
API вместо navigator.getUserMedia()
, но я не вижу, какое это имеет значение, поскольку 1. Я использую прокладку, предоставленную группой WebRTC с именем adapter.js
, которую они сами используют. 2. Я не думаю, что способ получения видеопотока повлияет на производительность.