* feat(noise-suppression): Add support for BVC model
* feat(noise-suppression): Add support for extended BVC devices list
This commit adds support for extending the list of allowed BVC devices in the noise suppression feature. It introduces a new file, `bvc-allowed-ext.txt`, which can be used to include additional BVC supported devices.
* fix(noise-suppression): reuse the existing audioStream for Krisp initialization
* update krisp configuration
* refactor(krisp): Update Krisp JS SDK version and noise suppression configuration
* refactor(config): update config default values, add the enabled flad in INoiseSuppressionConfig
- Do not throw the error. This results in unhandled rejection promise.
- Add proper logging so that we can figure out from which video element the error occured.
* fix(lobby): Inconsistent state after deny and then approve.
Fixes several issues:
- The error on lobby deny is not sticky
- When preJoin is not enabled we were showing conference UI and showing the error, while the participant is denied to enter the meeting.
- There was inconsistent state (after deny we were keeping membersOnly conference state) and when being approved on re-try while being in the meeting, no remote thumbnails are shown although media is flowing.
The scenario is enabling lobby and tryintg to join, denying the first attempt and approving the second one.
* squash: Drop extra hide lobby screen.
* squash: Finish action first before showing the notification.
* feat(rn,screen-sharing) allow sharing the screen and camera on mobile
With the advancements in layer suspension it should now be ok to do.
Users can still mute the camera themselves if they so desire.
Having the camera enabled while in the background is a separate effort.
It was possible that join can be executed before conference.init have even started or we haven't reached the point ot create the initialGUMPromise. This was causing the following issues:
- users stuck on the prejoin screen
- participants join 2+ times in the call (we have been creating more than 1 local participants from a single page).
* fix(subtitles): Handle errors to revert to default state.
* fix(transcribing): Handle transcriber status changed.
Drops potential transcribers and hidden participant actions and handling. Expect ljm to detect transcriptions on and off.
* feat(transcriptions): Adds a notification if transcriber leaves abruptly.
* squash: Renames action.
* chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1869.0.0+5671c5d6...v1872.0.0+8940b5c9
* feat(visitors): Transcriptions for visitors.
* squash: Fixes filter iq.
* feat: Rewrites room name requests in rayo iq for visitors.
* squash: Handles visitors count that request transcriptions and the languages requested.
* fix(subtitles): Make sure we show captions button when no features but is transcribing.
* fix(transcriptions): Uses dial command to invite transcriber.
* fix(transcriptions,recording): Allows non moderators with features to dial, record or transcribe.
* sqaush: Make sure filtering works when only is a moderator.
It works now and without a token and no features, but being moderator.
* squash: Rename constant.
* squash: Checks features first before defaulting to moderator when filtering metadata service.
* squash: Checks features first before defaulting to moderator in UI.
* squash: Fixes lint and one other check.
* squash: Moves more logic to is_feature_allowed.
* squash: Drops unnecessary check.
* squash: Uses constant coming from ljm.
* squash: Toggles back captions button on error.
* squash: Fix comment.
* squash: Reverting back isLiveStreamingButtonVisible.
* squash: Fix imports.
Some parts of the ui still showed the setting for flipping the video, even if the flag indicated otherwise
Also fixes the case where setting a virtual background ignores the stored localFlipX setting
- Move the styles from css to tss-react ones
- Dynamic fontSize based on the visible area of the page
- Remove the gaps in the background when a line is wrapped.
- Change the text color to white.
- Remove transparency.
There is no point in ever setting lastN to anything other than 0 when in
the background because we are not rendering anything.
When in PiP mode, the app state is not background, which might have
deceived us into adding that check there way back when.