-
Notifications
You must be signed in to change notification settings - Fork 217
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LocalAudioTrack.stop() freezes tab in iOS >=14.4.1 Safari on iPhone 12 #1444
Comments
Hi @ariboren , Thanks for submitting! What is the exact version of twilio-video.js are you using? Thanks, |
Hi @charliesantos. Thanks for the followup. I'm using |
Any clues on this? I'm currently working around it by forcing a full page refresh when a user leaves the call, but it's a suboptimal UX. |
Hey @ariboren thanks for the ping. We are not doing anything special on iPhone 12 so it'll require us to investigate this further. I will add an internal ticket for this. |
Ok, sounds great! Thanks for the help. |
I have a similar experience and doing full page refresh after a call session too. @ariboren |
@acro5piano yep I'm using React too. I haven't been able to dig into it much lately but that sounds plausible! I'll let you know if I make any discoveries today. |
@acro5piano @ariboren when you get a chance, can you please try your reproduction steps to our quickstart app and see if it's reproducible? https://github.com/twilio/video-quickstart-js/tree/master/quickstart |
@charliesantos I'm not able to reproduce in the quickstart app because it doesn't contain this user flow. "Leave room" disconnects from the room but doesn't stop the audio and camera tracks, and there doesn't appear to be a different way to stop the tracks manually. |
@charliesantos publication.track.stop();
publication.unpublish(); I think in the most cases PC light next to a webcam should be turned off because user may feel weird. https://www.twilio.com/docs/video/javascript-v2-getting-started#mute-your-local-media Thanks |
@acro5piano this is a great question! I'll find more information as part of the the internal ticket about this. |
Code to reproduce the issue:
Expected behavior:
User's audio track should be unpublished from the room, and their device should no longer report the microphone as being used by the tab running Twilio Video.
Actual behavior:
On iPhone 12 Pro and Pro Max running iOS 14.4.1 or later, the call to
publication.track.stop()
freezes the tab. The entire page UI becomes unresponsive, and the video element attached to theLocalVideoTrack
freezes on the last played frame. The page unfreezes on its own after 5+ seconds.In the debug logs below, you can see that the stop and unpublish sequence succeeds within the first few milliseconds, followed by radio silence for over 10 seconds, including no heartbeats logs.
Additional notes:
I've tried seemingly every method and permutation of stopping/unpublishing the audio track, to no avail. The same flow works perfectly with video tracks, and so far the bug has been limited to this particular device, browser, and OS combination. I also confirmed that calling
stop
on a vanilla audioMediaStreamTrack
works fine, so the issue seems to live somewhere in the TwilioLocalAudioTrack
class.Software versions:
Due diligence
The text was updated successfully, but these errors were encountered: