2016-11-26 146 views
2

我使用webcam指令捕获照片。我可以关闭相机。但我无法再打开它。任何帮助,将不胜感激。使用AngularJS打开/关闭摄像头

这是我当前的代码来停止相机。

var mStream = null; 

$scope.onStream = function (stream) { 
    // You could do something manually with the stream. 
    mStream = stream; 
}; 
$scope.stopCamera = function() { 
    // mStream.stop(); didn't work. 
    mStream.getTracks()[0].stop(); 
}; 
$scope.startCamera = function() { 
    // mStream.play(); didn't work 
    // ToDo 
}; 

谢谢

回答

0

webcam指令我们已经按照您的控制器事件

$scope.$on('$destroy', onDestroy); 
$scope.$on('START_WEBCAM', startWebcam); 
$scope.$on('STOP_WEBCAM', stopWebcam); 

你可以使用这样的事情

$scope.destroyWebcam = function() { 
    $scope.$broadcast('$destroy'); 
    }; 

$scope.stopWebcam = function() { 
    $scope.$broadcast('STOP_WEBCAM'); 
}; 
+0

感谢了很多。还有一个问题。用户有两台摄像机。我如何列出可用的相机并选择特定的相机? – SGG

+0

@SGG我不知道,但你试试这个http://stackoverflow.com/questions/18893787/how-can-i-get-a-list-of-video-cameras-attached-in-my-computer-using -javascript – nmanikiran

+0

当我使用'stop_webcam'时,视频流消失了,但标签上的红色圆圈仍然存在,并且我的网络摄像头的LED仍亮着。即使我已经去过我网站上的另一个页面也是如此。任何想法如何解决它? – JkAlombro