2017-07-15 112 views

回答

2

調用方法的MediaStreamTrack.stop(),和.removeTrack()MediaStreamTrack作爲參數,它停止MediaStreamTrack並設置MediaStream.active屬性false

<body> 
    <button>click</button> 
    <script> 
    navigator.mediaDevices.getUserMedia({audio:true}) 
    .then(stream => { 
     const track = stream.getAudioTracks()[0]; 
     console.log(track, track.readyState, stream, stream.active); 
     track.onended = e => { 
     console.log(e.type, track.readyState) 
     } 
     stream.oninactive = e => { 
     console.log(e.type, stream.active) 
     } 
     document.querySelector("button").onclick =() => { 
     track.stop(); 
     stream.removeTrack(track); 
     } 
    }) 
    </script> 
    </body> 

plnkr https://plnkr.co/edit/eqbZAI9SYwGTxEdgw92D?p=preview