Commit Graph

638 Commits

Author SHA1 Message Date
GuiLeme
d1025fcbe5 [issue-16954] - Changes in review and fix of minor bugs 2023-04-12 12:51:23 -03:00
GuiLeme
5eb29e0ab5 [issue-16954] - merge upstream/v2.7.x-release 2023-04-11 11:02:00 -03:00
Anton Georgiev
72c575b911 Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into merge-apr-6 2023-04-06 11:50:26 -04:00
Ramón Souza
bcd504b749 Merge remote-tracking branch 'upstream/v2.7.x-release' into lodash-radash 2023-04-05 09:42:05 -03:00
GuiLeme
81ae4e9ca6 [issue-16954] - Adjusting modal priorities 2023-03-29 11:08:56 -03:00
GuiLeme
5f3296fdb1 [issue-16954] - last migrations - VideoPreview and drag and drop of background 2023-03-27 12:36:25 -03:00
GuiLeme
c1676004d4 [issue-16954] - migration of audio modal 2023-03-24 12:29:09 -03:00
prlanzarin
1ada7dc57e fix(audio): output device changes not effective in local echo test
Output device changes aren't working in 2.6's echo test when artifical delay
is on due to the fact that the feedback audio is being played via the WebAudio
context rather the the HTMLMediaElement. Since output device change works
via HTMLMediaElement's setSinkId, it's basically a no-op.

This commit fixes the issue by piping the AudioContext destination
through the main audio element rather than using WebAudio directly for
playback. An additional stub media element (muted) is added to circumvent one
of Chrome's WebAudio issue.
The alternative would be to use AudioContext's setSinkId, but it isn't
supported by Firefox (setSinkId enabled) and Chrome < 110.

This should work with FF (setSinkId enabled) and a wide array of Chromium
versions.
2023-03-20 17:38:06 -03:00
GuiLeme
f943cbf732 [issue-16954] - renaming referencing of Modals 2023-03-20 10:08:35 -03:00
Ramón Souza
c3d89ee4fc
Merge pull request #17044 from antobinary/fix-undefined-user
fix: Fix undefined user in rare end-breakout scenario
2023-03-17 14:06:15 -03:00
Ramón Souza
8dbff37a43
Merge pull request #16868 from Arthurk12/bbb/2.6/15716
fix(breakout rooms): video and audio modal appearing for all mods when rejoining
2023-03-16 10:42:16 -03:00
Anton Georgiev
372e17ca08 fix: check if defined before checking .role 2023-03-14 16:39:06 -04:00
GuiLeme
4f3931c0ff [issue-16872] - Changes in review 2023-03-13 12:44:35 -03:00
GuiLeme
e68997e673 [issue-16872] - Changes in review 2023-03-13 12:27:11 -03:00
GuiLeme
f7649cdd19 [issue-16872] - Change session logic to event logic 2023-03-13 11:13:56 -03:00
GuiLeme
f711a4ca32 [issue-16872] - Fixed flashing of breakout modal invitation 2023-03-10 16:28:05 -03:00
Ramón Souza
d181eba1c2 replace lodash.throttle with native function 2023-03-02 10:25:08 -03:00
Ramón Souza
41c187d93e Merge remote-tracking branch 'upstream/v2.6.x-release' into lodash-radash 2023-03-01 15:19:12 -03:00
Arthurk12
774dc136eb fix(breakout rooms): video and audio modal appearing for all mods when rejoining
There was an observer being linked to all breakout rooms that the user has
access to. This logic works for attendees, but not for moderators.
Moderators have access to the list of all breakout rooms, so they were set
with an observer to breakout rooms that they didn't participate, which caused
the audio and video modals to appear everytime the breakout rooms were closed.
So, this commit:
- hangs an breakout rooms' observer only on those mods that have joined any
breakout room. This way, mods that didn't participate in any breakout
room won't be disturbed by the audio and video modal.
- adds an extra check to ensure that the observer will only be run in
non-breakout meetings.
2023-03-01 15:18:12 -03:00
Ramón Souza
0a622eff32 replace lodash throttle with standalone package 2023-03-01 15:13:29 -03:00
Ramón Souza
a60d817041 replace lodash debounce 2023-03-01 10:39:04 -03:00
Ramón Souza
4ed09c89cf replace lodash uniqueId 2023-02-23 11:23:51 -03:00
Ramón Souza
dd710aa96f replace lodash uniq and uniqBy 2023-02-23 10:44:29 -03:00
Ramón Souza
5c5433296b replace lodash range, partition and upperFirst 2023-02-22 13:52:18 -03:00
Gabriel Porfirio
907589cef1 disabled features test 2023-02-21 15:28:53 -03:00
Daniel Schreiber
cc21f1598b Copy in fixups from review
thanks @prlanzarin for reviewing:
https://github.com/bigbluebutton/bigbluebutton/pull/16107#pullrequestreview-1241137609
2023-01-23 20:31:53 +01:00
Daniel Schreiber
10c04f4843 audio: add delay for loopback test
If BBB 2.6 is used without headphones, the audio test works differently
than in 2.5. In 2.5 audio traffic is routed to freeswitch and then
returned to the browser. This adds usually some latency which makes it
easy to hear you audio quality. In 2.6 there is a local loopback. As
there is almost no latency, it is either difficult or even impossible to
check your own audio quality as echo cancellation of the browser will
filter out your own signal.

This patch adds a delay node to the audio loopback test, which makes is
easier to check your quality.
2023-01-23 19:54:44 +01:00
GuiLeme
d566d1fd1a [patch-issue-16375] - add semicolon 2023-01-17 15:27:04 -03:00
GuiLeme
065e7f17e7 [patch-issue-16375] - Patch for SonarCloud warning 2023-01-17 14:50:10 -03:00
GuiLeme
bdc5a71967 [issue-16375] - not showing anything when liveTranscription is disabled 2023-01-16 18:10:21 -03:00
GuiLeme
b212a17c55 [issue-16375] - Change message for live transcription not being activated 2023-01-12 15:33:56 -03:00
GuiLeme
f67f530b32 [disabled-transcription] - Renamed audioCaptions to liveTranscription (for disabledFeatures) 2023-01-09 10:47:22 -03:00
GuiLeme
b4afec689e [disabled-transcription] - Created new disabledFeature audioCaptions 2022-12-16 17:04:14 -03:00
Ramón Souza
55ae884f5f
Merge branch 'v2.6.x-release' into ask-before-leave 2022-12-06 09:04:28 -03:00
Ramón Souza
9b0cff367a fix conditional hooks - captions select 2022-11-22 09:20:14 -03:00
Ramón Souza
f2a6fc7694 fix conditional hooks - captions button 2022-11-22 09:16:26 -03:00
Joao Victor
777eebfc37 Centralize header styles in a new component 2022-11-10 15:09:21 -03:00
Ramón Souza
b66b52ad88
Merge pull request #15923 from owi92/unify-modals
Unify some dialog windows
2022-11-07 09:16:12 -03:00
Ramón Souza
60ab448cff
Merge pull request #15588 from Arthurk12/bbb/15447
feat(captions): change transcription language on the fly
2022-10-31 16:55:29 -03:00
Ole Wieners
c9a612ee8a Unify some dialog windows 2022-10-27 19:54:34 +02:00
Ramón Souza
60efe4794a
Merge pull request #15790 from JoVictorNunes/issue-15760
fix: mute external video when in echo test
2022-10-26 13:32:18 -03:00
Ramón Souza
43cf7cfc69 adjust audio/video dropdown position 2022-10-24 14:44:33 -03:00
Lucas Fialho Zawacki
a2bc96fe35 Ask for confirmation before closing meeting window 2022-10-13 16:41:43 -03:00
Joao Victor
caa8667526 fix: mute external video when in echo test 2022-10-06 11:45:52 -03:00
KDSBrowne
9c6a6298e2 update menu ids to be unique 2022-10-05 21:54:59 +00:00
prlanzarin
b3eebbb926 fix(audio): retry gUM without pre-set deviceIds on OverconstrainedError(s)
There are some situations where previously set deviceIds (
local/session storage) may become stale. This causes an unexpected
behavior where audio is temporarily borked until the user clears their
local storage.
This issue has been seen more recently on Safari endpoints when switching
back-and-forth breakout rooms in environments running under iframes.
Also seen randomly on endpoints with virtual input devices.

This centralizes audio gUM calling into a single method that retries the
gUM procedure without pre-set deviceIds only if the initial call fails
due with an OverconstrainedError - hopefully circumventing the issue.
2022-09-15 19:25:30 +00:00
Arthurk12
0ede0fa0e9 feat(captions): change transcription language on the fly
Adds a chevron button that allows enabling/disabling and changing the
language of the automatic transcription.
2022-08-24 15:40:03 +00:00
prlanzarin
ec1879f96b fix(audio): add inputDeviceId enforcement for post-join/gUM
Extract the deviceId again from the stream to guarantee consistency
between stream DID vs chosen DID. That's necessary in scenarios where,
eg, there's no default/pre-set deviceId ('') and the browser's
default device has been altered by the user (browser default != system's
default).
2022-08-24 14:39:09 +00:00
prlanzarin
89e814d570 fix(audio): centralize device change code, add rollbacks, surface errors
There's no rollback procedure in case a device switch fails right now,
nor does the code entrypoints that call the switching procedures wait
for resolution or failure before marking the new device as chosen. That
may cause inconsistent states in a couple of ways:
  - No rollback: switch fails, audio is still on but no actual
    microphone input is being transmitted
  - Not waiting for resolutions: inconsistent chosen devices on failures
Device switching errors are also not surfaced to the end user

This commit:
  - Adds device rollback and proper resolution/failure response
    awaits to try and make the state a bit more consistent.
  - Centralizes the input device switching code to be reused between
    different bridges
  - Centralizes device ID state management in audio-manager to try and
    mantain them a bit more consistent across the board
  - Surface device switching failures to the end user
  - Guarantee device IDs are set to the session storage on all
    appropriate scenarios
2022-08-24 13:28:27 +00:00
Ramón Souza
c48e942a62
Merge pull request #15488 from ramonlsouza/fix-dialin-button-styles
fix(styles): adjust dial-in button styles
2022-08-08 10:49:19 -03:00