Я получаю сообщение об ошибке при запуске службы узла webrtc.Я получаю сообщение об ошибке при попытке использовать навигатор.Вот ошибка при запуске node client.js
:
navigator.mediaDevices.getUserMedia = navigator.mediaDevices.getUserMedia || navigator.mediaDevices.webkitGetUserMedia
^
ReferenceError: navigator is not defined
Я использую angular и node для запуска файла, в котором есть webrtc.Вот мои настройки:
Angular CLI: 8.0.1
Node: 10.16.0
Angular: 8.0.0
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.800.1
@angular-devkit/build-angular 0.800.1
@angular-devkit/build-optimizer 0.800.1
@angular-devkit/build-webpack 0.800.1
@angular-devkit/core 8.0.1
@angular-devkit/schematics 8.0.1
@angular/cdk 7.0.4
@angular/cli 8.0.1
@angular/http 6.0.9
@angular/material 6.4.7
@ngtools/webpack 8.0.1
@schematics/angular 8.0.1
@schematics/update 0.800.1
rxjs 6.5.2
typescript 3.4.5
webpack 4.30.0
, а вот мой код client.js:
// проверяет, поддерживает ли браузер WebRTC
function hasUserMedia() {
navigator.mediaDevices.getUserMedia = navigator.mediaDevices.getUserMedia || navigator.mediaDevices.webkitGetUserMedia
|| navigator.mediaDevices.mozGetUserMedia || navigator.mediaDevices.msGetUserMedia;
return !!navigator.mediaDevices.getUserMedia;
}
if (true) {
navigator.mediaDevices.getUserMedia = navigator.mediaDevices.getUserMedia || navigator.mediaDevices.webkitGetUserMedia
|| navigator.mediaDevices.mozGetUserMedia || navigator.mediaDevices.msGetUserMedia;
//get both video and audio streams from user's camera
navigator.mediaDevices.getUserMedia({ video: true, audio: true }, function (stream) {
var video = document.querySelector('video');
//insert stream into the video tag
video.src = window.URL.createObjectURL(stream);
}, function (err) {});
}else {
alert("Error. WebRTC is not supported!");
}
Я начал добавлятьnavigator.mediaDevice из-за поста, который я видел о новой версии WebRTC.Я не совсем уверен, нужно ли мне это для каждого метода.
Если сообщество считает, что WebRTC не является предпочтительным способом, дайте мне знать.Я все еще пытаюсь найти лучший вариант для потокового приложения.Но я думал, что WebRTC будет лучшим.