feat: add screenshare audio with muting capabilities#1055
feat: add screenshare audio with muting capabilities#1055Dadadah wants to merge 4 commits intostoatchat:mainfrom
Conversation
|
I'm 50/50 on if stream/user volume should persist through refreshes, but I do recall one of the other maintainers saying that feature should be added before. No clue if there's any consensus on that, though. |
|
Setting as draft as it seems to have broken on wayland. |
I think it would be better to persist the stream audio settings. In scenarios like a quick reconnect or a page refresh, having to readjust the volume and mute state every time is quite frustrating. From a UX perspective, it's much cleaner to remember the user's last choice; they can always manually change it later if needed. If we want to make it more advanced in the future, we could offer a setting to toggle between session-only and global persistence. But at the very least, a simple refresh shouldn't wipe out the user's manual adjustments. |
|
Wayland support for audio screen sharing on the desktop client is a can of worms so I'm gonna mark this as ready for review and when I merge the desktop pr I'll add a TODO for wayland support and get to it in the coming weeks. |
8ccdc3a to
71f3ab0
Compare
71f3ab0 to
9724f95
Compare
Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
9724f95 to
680276a
Compare
Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
680276a to
45907ea
Compare
Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This PR adds audio to the screenshare functionality of Stoat. It also adds the ability to mute and change volume of streams. Audio is defaultly muted on screen shares to prevent surprises.
Requires #1124
The stream volume data is stored in the voice state. This was an opinionated decision as I do not think that stream volume should persist through refreshes. It is easy to change it to use the stored settings states instead if the stream volume should remain through refreshes.Stream volume and mutes are stored in the voice data store state so that restreams keep volume levels.
Closes #1070