2017-10-25 7 views
0

私は反応するアプリケーションを構築し、次のコードで取得するウェブカメラにアクセスする必要があるのです:ウェブカメラライトは私がMediaStreamTrack.stopを(実行した後でも、上の滞在)

navigator.mediaDevices.getUserMedia({ video: true, audio: false }) 
    .then(function(stream) { 
     video.srcObject = stream; 
     window.localstream = stream; 
     video.play(); 
    }) 

しかし、私は現在のコンポーネントをアンマウントするとき私のウェブカメラはそのままです。私のcomponentWillUnmountブロックで、私は次のコードを試しました。

video.pause(); 
video.srcObject=null; 
window.localstream.getTracks()[0].stop(); 
window.localstream.getVideoTracks()[0].stop(); 

私のウェブカメラの光はまだ変わりません。私はその後mediaStreamTrackをCONSOLE.LOGとき、私が取得:

enter image description here

をどのように私は私のウェブカメラを停止していますか?

答えて

0
  1. 複数のカメラを使用している場合は、コードが以前にオンにしたときと同じカメラを「停止」しようとしていることを確認する必要があります。

  2. あなたのコードがgetUserMediaを1回呼び出すだけで、getVideoTracks()[0] .stop()が正常に動作することを確認する必要があります。

関連する問題