@Banjamin
Пишу

Как отключить видеопоток и сделать доступной камеру?

Добрый день. Есть задача в приложении которое транслирует поток с getUserMedia, сделать кнопку, которая будет останавливать поток и делать камеру доступной в других приложениях. В объекте myStream, который возвращает функция в случае успеха я нашел метод stop(), но он не работает. Подскажите пожалуйста решение.

angular.module("App", [])
      .controller("defaultCtrl", function ($scope, $timeout) {
        navigator.getUserMedia = function (constraints, cb, errcb) {
          navigator.mediaDevices.getUserMedia(constraints)
            .then(cb, errcb);
        }.bind(navigator);
        navigator.getUserMedia({
          video: true,
          audio: true
        }, angular.bind(this, function (myStream) {
         const stream =  document.querySelector('#localVideo');
         $scope.streamVideo = myStream.getTracks()[0]
         stream.srcObject = myStream;
        }), angular.bind(this, function (error) {
          console.error(error);
        }));
      })
      .directive('ngStop', function(){
        return function(scope, element, attrs){
          const stream =  document.querySelector('#localVideo');
          const button = document.getElementById('btn')
          button.addEventListener('click', function(){
            scope.streamVideo.stop();
          })
        }
      })
  • Вопрос задан
  • 845 просмотров
Решения вопроса 1
https://stackoverflow.com/questions/11642926/stop-...
stream.getTracks().forEach(track => track.stop())
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы