I'm currently writing a chrome extension which uses Chrome's DesktopCapture API. I'm struggling to set a callback when someone clicks on "Stop sharing".
I tried using the onended
EventHandler of the MediaStream, but the MediaStream's ended
property is still set to true
after clicking on the button.
The only difference I could find between the stream (before and after clicking the button) is that the videoTracks.readyState
is set to ended
.
Edit: I would also like to notice if the user closes the window they were streaming before.
When your session is complete, click the Stop sharing my screen button to stop sharing your screen with the associate. Then, click the End call icon to exit the Hangout.
According to MediaStream API, the stop() function should be called to stop sharing.
I solved this issue by assigning an EventHandler on the videoTrack's onended
property:
// somebody clicked on "Stop sharing" stream.getVideoTracks()[0].onended = function () { // doWhatYouNeedToDo(); };
As far as my edit goes (noticing a closing window): it also fires the event.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With