Skip to content

Conversation

@backportbot-nextcloud
Copy link

backport of #5661

danxuliu added 2 commits May 25, 2021 07:55
When the call was started without audio nor video (either explicitly or
because there was an error when getting the media) the media device
changes were not listened to, so further device changes were ignored and
"localTrackReplaced" events were not emitted.

Moreover, "localTrackReplaced" events were handled by Peer objects to
replace or add tracks as needed, but if a call is started without media
some Peer objects will be missing (the ownPeer object if the HPB is
used, Peer objects for any other participant that is not sending media
when the HPB is not used). Therefore now a forced reconnection is
triggered when needed to establish the missing sender connections.

Signed-off-by: Daniel Calviño Sánchez <[email protected]>
"TypeError" is thrown by "getUserMedia" when requesting media without
audio nor video. In that case no error message should be shown, as the
devices would have been explicitly disabled by the user.

That could also happen when audio was disabled and video was enabled but
failed. If the initial "getUserMedia" call done when starting a call
failed and video was requested it was retried again without video in all
cases. Now it is only retried if audio is also enabled, as otherwise it
would end requesting no audio and no video (and no error message would
be shown, as a "TypeError" would be thrown).

Signed-off-by: Daniel Calviño Sánchez <[email protected]>
@nickvergessen nickvergessen merged commit 3b2063d into stable21.1 May 25, 2021
@nickvergessen nickvergessen deleted the backport/5661/stable21.1 branch May 25, 2021 12:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug feature: call 📹 Voice and video calls feature: frontend 🖌️ "Web UI" client

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants