* VoiceRecordings: honor advanced audio processing settings
Audio processing settings introduced in #8759 is now taken into account
when recording a voice message.
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
* VoiceRecordings: add higher-quality audio recording
When recording non-voice audio (e.g. music, FX), a different Opus encoder
application should be specified. It is also recommended to increase the
bitrate to 64-96 kb/s for musical use.
Note: the HQ mode is currently activated when noise suppression is
turned off. This is a very arbitrary condition.
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
* RecorderWorklet: fix type mismatch
src/audio/VoiceRecording.ts:129:67 - Argument of type 'null' is not
assignable to parameter of type 'string | URL'.
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
* VoiceRecording: test audio settings
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
* Fix typos
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
* VoiceRecording: refactor using destructuring assignment
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
* VoiceRecording: add comments about constants and non-trivial conditions
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
If group calls can be unterminated, this makes it very difficult to determine the duration of past calls. This was also causing duplicate event tiles to be rendered if multiple people tried to terminate a call simultaneously.
* Fix call splitbrains when switching between rooms
Mounting CallView causes the user's call membership room state to be cleaned up. However, because the GroupCall object always thought the local device was disconnected from the call, it would remove the local device from room state when the clean method is called, causing a splitbrain. This uses GroupCall's new enteredViaAnotherSession field to fix that, and also simplify participant tracking.
* Remove clean tests that have been moved to matrix-js-sdk
(cherry picked from commit 62a740d318)
Co-authored-by: Robin <robin@robin.town>
* Fix call splitbrains when switching between rooms
Mounting CallView causes the user's call membership room state to be cleaned up. However, because the GroupCall object always thought the local device was disconnected from the call, it would remove the local device from room state when the clean method is called, causing a splitbrain. This uses GroupCall's new enteredViaAnotherSession field to fix that, and also simplify participant tracking.
* Remove clean tests that have been moved to matrix-js-sdk
* test bulk unverified sessions toast behaviour
* unverified sessions toast text tweak
* only show bulk unverified sessions toast when current device is verified
* add Setting for BulkUnverifiedSessionsReminder
* add build config for BulkUnverifiedSessionsReminder
* add more assertions for show/hide toast, fix strict errors
* fix strict error
* test bulk unverified sessions toast behaviour
* unverified sessions toast text tweak
* only show bulk unverified sessions toast when current device is verified
* add more assertions for show/hide toast, fix strict errors
* fix strict error
* really fix strict error
* bugfix: fix an issue where the Notifier would incorrectly fire for non-timeline events
This was caused by listening for ClientEvent.Event, not RoomEvent.Timeline.
Fixes https://github.com/vector-im/element-web/issues/17263
* tsc strict checks maybe
* More types?
* Update src/Notifier.ts
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
* Update src/Notifier.ts
* fix LL test; review comments
* More tests
* More tsc strict checks..
* More strict ts..
* More ts
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>