--
Archives of earlier incarnations of this list are at https://list-archives.secondlife.com
---
You received this message because you are subscribed to the Google Groups "opensource-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to opensource-de...@lists.secondlife.com.
To view this discussion on the web visit https://groups.google.com/a/lists.secondlife.com/d/msgid/opensource-dev/CAFsNfZ%2B2MDyr%2BNv%3D3xfgEL7TnzWmy7_JZQqqY3Z5DHnOdUkBDA%40mail.gmail.com.
...Just found this, released (apparently) about a month ago - A version of the viewer that lets you turn off automatic voice detection and/or modify its sensitivity. Have not had time enough to experiment with this, but maybe making adjustments to these settings can finally allow music to go through voice without the usual frequent dropouts
https://releasenotes.secondlife.com/viewer/6.4.19.559726.html
Voice Activity Detection This Viewer also exposes four VIVOX VAD (Voice Activity Detection) variables via Debug Settings and disables the (previously enabled) automatic mode. By making changes to these variables, we should be able to come up with a collection of settings that we can base new default values on in settings.xml. The Debug Settings are: VivoxVadAuto Enable (1) or disable (0) automatic VAD. If this is disabled, the voice characteristics can be changed by adjusting the other settings. If this is enabled, modifying the other settings will have no effect. VivoxVadHangover The time (in milliseconds) that it takes for the VAD to switch back to silence from speech mode after the last speech frame has been detected. VivoxVadNoiseFloor A dimensionless value between 0 and 20000 (default 576) that controls the maximum level at which the noise floor may be set at by the VAD’s noise tracking. Too low of a value will make noise tracking ineffective (A value of 0 disables noise tracking and the VAD then relies purely on the sensitivity property). Too high of a value will make long speech classifiable as noise. VivoxVadSensitivity A dimensionless value between 0 and 100, indicating the ‘sensitivity of the VAD’. Increasing this value corresponds to decreasing the sensitivity of the VAD (i.e. ‘0’ is most sensitive, while 100 is ‘least sensitive’) The default values (updated) are (using VIVOX names): VadHangover(s): 2000 (Valid values are 1 - 60000 milliseconds) VadSensitivity: 0 (Was 43 - valid values are 0 - 100) VadNoiseFloor: 576 (Valid values are 0 - 20000) Some of the settings can only be changed by restarting the Viewer or teleporting away and coming back (needs a new voice connection) but the other 2 work in real time as you change them. Early testing suggests that VivoxVadNoiseFloor needs the restart or teleport to stick. After some initial testing with VIVOX, they suggested starting from a point where VivoxVadSensitivity was set to 0. This will likely result in no dropouts because the microphone is sending everything to the voice channel. However, in a noisy environment (talking in background, vacuum cleaner, TV on etc.) it will also transmit that too. Though with modern microphones, that have built in noise cancellation, sending everything may be a good thing as the microphone may have done all the heavy lifting of noise cancellation first. Please let us know what VAD Sensitivity value works best for you! |
--
On Tue, 15 Jun 2021 14:00:39 +0100, Beq Janus wrote:
> The most palatable solution to the problem above would appear to be the
> same as the suggested "Mumble" solution; i.e. the distribution of a
> standalone "slvoice" updater that installs a new slvoice-like service. I
> have been told that Mumble lacks features compared to Vivox though but not
> seen a feature comparison table.
>
> It is easy enough for the viewers to add a configuration setting to support
> the selection of alternative voice services so long as the communication
> between the viewer and the voice service remains consistent, that is my
> plan for FS on OpenSim once there is a viable option. I've not looked
> closely enough at how this all works to know if that is the entire story
> though, i.e. I'm unsure at the moment whether the API between viewer and
> voice service executable is a full abstraction or not?
I doubt coding a protocol translator/wrapper to make a different voice
client appear (from the viewer point of view) as a Vivox client is a very
practical or even legally usable (*) everywhere...
Rewriting the protocol glue code in the viewer for a new voice client is
not that hard, but it would of course not cover the interoperability issue
with old viewers (this said, maintained viewers will likely quickly update
to stay compatible, so not really a dramatic issue).
There may also be consequences on the viewers UI, if some functionalities
are not supported or are implemented very differently in the new client
(and a wrapper/translator won't plug that issue).
The really *important* thing is that OpenSim folks and LL do speak together
and come up with an agreement about the next voice client, so that we (TPV
devels) do not end up with a double implementation (won't be the first one,
but still...).
Hopefully, and preferably, the new voice service will also support all OSes
(Linux included !), unlike Vivox.
On Tue, 15 Jun 2021 15:17:16 +0100, Beq Janus wrote:
> This is not about anything owned by Vivox, slvoice.exe is an
> open-source voice service plugin,
Open-Source, really ?... Show me the sources, please !... If it
was Open Source, a supported Linux version would exist already. :-P
As for keeping the old protocol between the viewer and the next
voice client, it might sound appealing, but will likely cause
more headaches (what about unsupported or new features, and their
UI incarnations in the viewer ?) than simply rewriting the voice
client code (llvoicevivox.* in v2+ viewers, part of
llvoiceclient.* in mine) in the viewer for the new protocol, then
adapting any UI element that needs change...