Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Voice Support for the Linux Client

Hilby Yalin
Registered User
Join date: 4 May 2007
Posts: 21
01-15-2008 03:03
From: Adamas Carter
Also, I check with windows and mac users I'm talking to, and they confirm they get the same choppiness from the same people at the same time as I do. I think maybe sl's voice servers are sometimes not up to the task of handling that many voice users. Maybe they'll upgrade or add more servers.


True and not true, my wife is using the windows client and indeed with people who have a slow up-link (of what I know) have choppiness. I had choppy sound with everybody now with the new wine set to alsa no choppiness. Maybe asla also has no choppiness, but I am to happy to switch for now.
Drake Bacon
Linux is Furry
Join date: 13 Jul 2005
Posts: 443
01-15-2008 03:24
I'm unsure of the connection between ESD and Pulse Audio, and ponder if Pulse needs it's ESD emulation active...
_____________________
Drake Bacon/Drake Winger
Home: Custom AMD X2 (65nm) 5000+, 4 Gig RAM, Gentoo amd64, NVidia GeForce 8600GT PCIe
Mobile: Dell Inspiron E1505 (Core Duo 1.6GHz, 1 gig RAM, Gentoo x86, NVidia GeForce Go 7300 PCIe)
Backup: iMac (Core 2 Duo 2.4GHz, 4 gig RAM, ATI Radeon HD 2400, MacOS X Leopard)
Don't Ask: Asus EeePC 900A (Atom 1.6Ghz, 1 gig RAM, Intel graphics, Gentoo x86)
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-15-2008 16:53
From: Drake Bacon
I'm unsure of the connection between ESD and Pulse Audio, and ponder if Pulse needs it's ESD emulation active...
I'm not sure what the difference is either, but I just tried it with and without ESD. With ESD the sound is fine, without it's choppy as hell. I'll run more tests just to make sure it wasn't the sim I was in at the time.

Adamas
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-15-2008 18:58
Yeah, I probably should've re-read my own stuff. Not using ESD turns the sl audio system into a train wreck. It only works properly (at least under KDE) with all three thing running: ALSA, ESD and PulseAudio. Remember to shut down aRts (KDE Sound System).

I wish I knew the connection. It'd be nice to have just one thing to install and set up...

One sound system to rule them all
One sound system to find them
One sound system to bring them all
And in Second Life bind them . . .

Adamas
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-15-2008 23:46
I should have added the PulseAudio ESD module is loaded and activated by default.

Adamas
Black Stallion
Registered User
Join date: 30 Nov 2006
Posts: 30
01-24-2008 03:40
From: Adamas Carter
Yeah, I probably should've re-read my own stuff. Not using ESD turns the sl audio system into a train wreck. It only works properly (at least under KDE) with all three thing running: ALSA, ESD and PulseAudio. Remember to shut down aRts (KDE Sound System).

I wish I knew the connection. It'd be nice to have just one thing to install and set up...

One sound system to rule them all
One sound system to find them
One sound system to bring them all
And in Second Life bind them . . .

Adamas


ha that will be the day my skin turns to dust.. the linux sound system is terrible by far.. having 4 different ways to hear things is ridiculous, especially the one where you can only hear one program at a time..
Asriazh Frye
Smart Cookie
Join date: 30 Sep 2006
Posts: 173
01-24-2008 15:16
I just took a look at the SVN revision 78282 and what did i see at the releasenote.txt?

New features: VWR-210: Voice Support on Linux (EXPERIMENTAL) - see README-linux-voice.txt
Could it be ? Well, i think i'll soon find out. i'm downloading the sources and corresponding libs down right now. If you feel like compiling them to, source for the client, libs and artwork tar.gzs and zips can be downloaded here:

http://svn.secondlife.com/trac/linden/changeset/181

-Asriazh

Happy voicing ^_^
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-24-2008 15:57
Unlikely to find any source for the voice client. It's proprietary. That text file, if it exists, probably refers to the issues of making the voice client work. And, those issues are probably the same for the native Linux version as for the Windoze version. In other words, you'll have to do many of the same things to your computer to make the Linux Vivox binary work as you have to do (if you haven't already) to make the Windoze version work.

And the final result will likely be the same. I'm getting feedback about voice from Win and Mac users, and they report the same experiences I do.

However, if you do manage to find source for the Vivox binary, please let us know!

Adamas
Asriazh Frye
Smart Cookie
Join date: 30 Sep 2006
Posts: 173
01-24-2008 16:05
From: Adamas Carter
Unlikely to find any source for the voice client. It's proprietary. That text file, if it exists, probably refers to the issues of making the voice client work. And, those issues are probably the same for the native Linux version as for the Windoze version. In other words, you'll have to do many of the same things to your computer to make the Linux Vivox binary work as you have to do (if you haven't already) to make the Windoze version work.

And the final result will likely be the same. I'm getting feedback about voice from Win and Mac users, and they report the same experiences I do.

However, if you do manage to find source for the Vivox binary, please let us know!

Adamas


That would be here then ^_^

http://secondlife.com/developers/opensource/downloads/2008/01/slviewer-linux-libs-release-r78272.tar.gz

its at "linden/indra/newview/vivox-runtime/i686-linux"

-Asriazh

P.S.:
Oh, btw, i never said "Vivox source" but that i was browsing the SVN server and saw the linux SL voice source with the corresponding linux libs. getting them to work is LLs job and also a matter of linux and its soundaemons.
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-24-2008 17:34
Thank you. I found it.

I installed it and am running it now. It works, but there is a strange rapid popping sound whenever someone else speaks.

Other than that, it works perfectly.

Adamas
Ilobmirt Tenk
Registered User
Join date: 4 Jun 2007
Posts: 135
01-24-2008 18:42
Asriazh Frye - Finally, its about time this happens! Thanks for the heads up on the current status of Linux and voice.
Hilby Yalin
Registered User
Join date: 4 May 2007
Posts: 21
01-25-2008 02:10
From: Adamas Carter

I installed it and am running it now. It works, but there is a strange rapid popping sound whenever someone else speaks.


The popping sound could be because of bad connections that people have. The same is happening with my wife's SL on windows. So I will find out this evening... to bad I am at work right now :(
I hope it is not the choppies described by the wine work around.
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-25-2008 02:36
No, it's not. I messed with it and I think I got the popping to stop. Tomorrow I'll do some testing to find out which of the several things I did fixed it. (I never had that popping with the Windoze blob.)

I'll post again when I have it down the way I did with the Wine stuff.

Adamas
Creem Pye
Registered User
Join date: 16 Apr 2007
Posts: 34
01-25-2008 18:51
Is it necessary to use Pulseaudio or ESD as the audio interface when using the r78272 binary blob for Linux? The voice chat audio device options only list "Default" and "ALSA" for me, despite that I have multiple ALSA devices, each with their own OSS interface as well.

SLVoice is run by the client as: "SLVoice -p tcp -h -c -ll -1"
It also seems to be connected to the grid, as it generates console messages like:

2008-01-26T02:44:45Z INFO: LLVoiceClient::setState: entering state stateRunning
2008-01-26T02:44:45Z INFO: LLVoiceClient::sendPositionalUpdate: Setting speaker volume to 0
2008-01-26T02:44:45Z INFO: LLVoiceClient::buildSetCaptureDevice: Setting input device = "Advanced Linux Sound Architecture (ALSA)"
2008-01-26T02:44:45Z INFO: LLVoiceClient::buildSetRenderDevice: Setting output device = "Advanced Linux Sound Architecture (ALSA)"
2008-01-26T02:44:45Z INFO: LLVoiceClient::participantStateChangeEvent: state is 7
2008-01-26T02:44:45Z INFO: LLVoiceClient::participantStateChangeEvent: added participant "xPkH5ApHMTAanjB43H2vLoA==" (3e41f902-91cc-4c06-a78c-1e371f6bcba0)

During a voice call, I am able to see the other avatar on my active speaker's list, and they can see me on their list. I am also able to hear their voice, but my mic capture seems to fail (note that I have configured the ALSA capture source and gain to record audio properly with other software). Proximity-based chat on voice-enabled land seems to fail completely: despite standing a few meters away from another avatar, our active speakers lists do not show each other, and voice transmission fails in both directions. My ALSA driver supports full-duplex playback and recording, multiplexed between multiple applications, so I don't believe a sound daemon like ESD should be necessary. Any thoughts?
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-26-2008 00:47
Are you using Gnome or KDE?

For KDE, you need ALSA, ESD and PulseAudio. I don't know enough about the details of either the Vivox voice client or those three audio systems to be able to say why, I just know, through testing all the possible configurations, that they are all required.

In addition, the default KDE sound server, aRts, must be shut down. It is insufficient for the task of running voice on Second Life. Anyway, it hasn't been maintained in years and is being dumped by KDE in favor of something called "Phonon." Phonon is still in development, as is KDE4 (despite its recent release). PulseAudio is a complete plug-in replacement for aRts.

For Gnome, it appears you only need ALSA and ESD. Gnome seems to provide the functionality that PulseAudio provides for KDE. I don't know that first-hand, I am relying on the reports, in this thread, from Gnome users.

I have noticed that, using the Linux voice client, I get "Default" and "ALSA" as the choices inside the SL client. This is probably a choice of the Vivox program and has nothing to do with whatever else your (and my) system has to offer.

I hope this helps.

Adamas
Kristopher Tenk
Registered User
Join date: 11 Apr 2007
Posts: 153
01-26-2008 09:08
i downloaded http://secondlife.com/developers/opensource/downloads/2008/01/slviewer-linux-libs-release-r78272.tar.gz

But what do i do next?
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-26-2008 12:03
Open it. You should be able to just click (or double-click) on the icon in your file browser's window where you downloaded it.

Find the subfolder "linden/indra/newview/vivox-runtime/i686-linux" and copy the five files you find there to your Second Life program folder. If you're running Windows voice, first remove the SLVoice script that's still there.

Adjust any other scripts you're using to remove references to the Windows Vivox client, and run Second Life.

Otherwise, remember you need to have all the software I mentioned earler installed and running for voice to work properly.

Adamas
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-26-2008 12:31
Okay, As much as I hate posting twice in a row, I promised a report on my experiences with the Linux voice program, and here it is:

Upon installing and running this (making sure I was running the Linux blob and not the Windows one) I noticed some stuff first off. The Linux voice comes up faster. And, because I can visually observe it, it uses less memory. Makes sense, since I'm not running the wineserver in addition to the voice executable.

Next thing I noticed: it is louder. I don't have to set everyone's individual volume higher just to be able to hear them. I wonder if Wine does something to attenuate the volume a bit.

Next, I discovered that I can adjust the input slider control in edit|preferences|voice chat, but there is no readout on that little meter to measure output. Since I am not putting out red stuff in world, and people say I sound great, I'm going to assume my volume is okay. (Also, I notice that Tofu listed this as one of the two known problems with the program. The other one I addressed in my last post.) The only workaround I can think of, if your volume is too high or too low, is to adjust your system's microphone volume control.

The only real possible problem is a low-level, rapid popping noise I'm hearing from a few other people I'm talking with. I don't know if this is a problem with the blob, a problem with a particular voice server, or a problem with those people's computer/audio card/network/etc.. I don't get it everywhere (so far, just in Star Gazers and one public area (I forget the name, something "driveway";), and only with two or three people there, and only when I'm close to them). In any case, it's not bad enough to really annoy me, just something I've noticed.

I'd like to read other people's experiences with this. Aside from that little bit of noise, which most people may never even notice, this thing works great for me!

Adamas
Creem Pye
Registered User
Join date: 16 Apr 2007
Posts: 34
01-26-2008 14:26
Adamas,
I'm not using Gnome or KDE; I'm using XFCE and occasionally Fluxbox. Thus, I don't have any sound daemons running usually; apps are configured to use the ALSA driver, or alternatively OSS for older apps which don't support ALSA. I guess the microphone capture problem could be due sound driver, but it perplexes me that I can only see that another person has voice when I'm engaged in a call with them (not when I'm simply near them in a voice-enabled sim).
Kristopher Tenk
Registered User
Join date: 11 Apr 2007
Posts: 153
01-26-2008 15:55
Ok so i use Ubuntu 7.10 (gnome), downloaded the files, moved the files from indra/newview/vivox-runtime/i686-linux to my main SL folder. Never used wine, this is the 1st time doing voice.

On startup screen i selected ALSA for both. I could hear a friend talk to me but they couldn't hear me. Within SL options it was still saying default and not ALSA (what i select at splash sceen) and the square boxes stayed gray in the Device part.

The audio quality from my friend was ok, some noise but better than nothing :-) keep up the good work.

Any ideas how to get my end working?
Gertrud Yongho
Registered User
Join date: 9 Dec 2006
Posts: 2
Connection Problems
01-26-2008 17:25
I have installed the voice client and it is started with the SL one. But when logged in, i only see me in the "Active Speakers" window, even if other people with voice enabled are present.
And i repeatedly see the messages
[2008/01/26 17:00] Connecting to in-world Voice Chat...
[2008/01/26 17:00] Connected
in my chat window, about every minute or so.
When having a look at the network traffic, i noticed i don't get UDP packets from vivox back ..
Could this be a firewall problem?
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-26-2008 18:16
Ok, I'll try.

Creem:
I'm not sure what you're asking. It sounds like private calls work, but not public ones. Do you have all three sound programs installed and working? If you can hear another person, but they can't hear you (not just one person, but others as well) then you may have a microphone failure or an audio system adjustment or setting problem. You should have an audio mixer program to adjust settings, including the switches. Play with them until you get the right result.

Kristopher:
Check your mic settings and play around with them. Also, make sure your mic is working and putting a signal into the computer. Other than that, it sounds like it's working.

Gertrud:
Possible but unlikely. You don't say whether or not you have the audio software I mention running or not. The first time I tried running voice, I got the same thing as you do because I only had ALSA and aRts running. I had to shut down aRts: open KDE Control Panel, usually called something like "System Settings" or "Personal Settings" or some such. If you're not sure, open a terminal/console, type "kcontrol" then enter then click "Sound and multimedia" then "Sound System" then disable the sound system.

In addition to ALSA, install ESD and PulseAudio. ESD is a system daemon, and pulseaudio is A sound server that is run from the user session. Make sure ALSA and ESD are running, then start PulseAudio. then run SL.

Adamas
Kristopher Tenk
Registered User
Join date: 11 Apr 2007
Posts: 153
01-27-2008 03:50
Ok still not working.

1. Checked volume levels in Ubuntu + headset (Not USB its wired)
2. Mic works 100% using skype (both ways)
3. Changed setting for each from ALSA back to Default (with relogs)

I can hear the users in SL but they cant hear me.
Kristopher Tenk
Registered User
Join date: 11 Apr 2007
Posts: 153
01-27-2008 04:46
Update:

1. When i connect and press the voice button the green light comes on, this is when the users hears a wooosh sound (only once) but none of my vocal chat.

Does this help?
Gertrud Yongho
Registered User
Join date: 9 Dec 2006
Posts: 2
01-27-2008 10:54
From: Adamas Carter

Possible but unlikely. You don't say whether or not you have the audio software I mention running or not. The first time I tried running voice, I got the same thing as you do because I only had ALSA and aRts running. I had to shut down aRts: open KDE Control Panel, usually called something like "System Settings" or "Personal Settings" or some such. If you're not sure, open a terminal/console, type "kcontrol" then enter then click "Sound and multimedia" then "Sound System" then disable the sound system.

In addition to ALSA, install ESD and PulseAudio. ESD is a system daemon, and pulseaudio is A sound server that is run from the user session. Make sure ALSA and ESD are running, then start PulseAudio. then run SL.


Thanks for the reply Adamas. But I still have my problem.
I was just building PulseAudio when i wrote the last post (i have a Gentoo system). Now i have ALSA, ESD and PulseAudio installed and running. I can see ALSA devices and an ESD module in the padevchooser. The KDE sound system is disabled.

The voice client can be started directly by the SL client or manually from the command line, I still get the reconnects every minute. That isn't normal, even when alone - or is it?

This is the repated part of the log (I replaced some stuff by <some id> and <guid>;):

2008-01-27T18:42:52Z INFO: LLVoiceClient::sessionStateChangeEvent: left session sip:confctl-320@bhr.vivox.com, name handle
2008-01-27T18:42:52Z INFO: LLVoiceClient::removeAllParticipants: called
2008-01-27T18:42:52Z INFO: LLVoiceClient::removeParticipant: participant "x_su-<sone id>" (<guid>;) removed.
2008-01-27T18:42:52Z INFO: LLVoiceClient::sessionStateChangeEvent: left session c1_m1000x_su-<some id>23in state stateRunning
2008-01-27T18:42:52Z INFO: LLVoiceClient::setState: entering state stateSessionTerminated
2008-01-27T18:42:52Z INFO: LLVoiceClient::notifyStatusObservers: STATUS_LEFT_CHANNEL, session URI sip:confctl-320@bhr.vivox.com
2008-01-27T18:42:52Z INFO: LLVoiceClient::setState: entering state stateNoChannel
2008-01-27T18:42:52Z INFO: LLVoiceClient::setState: entering state stateSessionCreate
2008-01-27T18:42:52Z INFO: LLVoiceClient::sessionCreateSendMessage: requesting join: sip:confctl-320@bhr.vivox.com
2008-01-27T18:42:52Z INFO: LLVoiceClient::notifyStatusObservers: STATUS_JOINING, session URI sip:confctl-320@bhr.vivox.com
2008-01-27T18:42:52Z INFO: LLVoiceClient::setState: entering state stateJoiningSession
2008-01-27T18:42:53Z INFO: LLVoiceClient::sessionCreateResponse: Session.Create response received (success), session handle is c1_m1000x_su-<some id>24
2008-01-27T18:42:54Z INFO: LLVoiceClient::sessionStateChangeEvent: joined session sip:confctl-320@bhr.vivox.com, name handle
2008-01-27T18:42:54Z INFO: LLVoiceClient::setState: entering state stateSessionJoined
2008-01-27T18:42:54Z INFO: LLVoiceClient::participantStateChangeEvent: state is 7
2008-01-27T18:42:54Z INFO: LLVoiceClient::addParticipant: participant "x_su-<some id>" added.
2008-01-27T18:42:54Z INFO: LLVoiceClient::participantStateChangeEvent: added participant "x_su-<some id>" (<guid>;)
2008-01-27T18:42:54Z INFO: LLVoiceClient::notifyStatusObservers: STATUS_JOINED, session URI sip:confctl-320@bhr.vivox.com
2008-01-27T18:42:54Z INFO: LLVoiceClient::setState: entering state stateRunning
2008-01-27T18:42:54Z INFO: LLVoiceClient::sendPositionalUpdate: Setting speaker volume to 0

It seems like the client disconnects ... but there are no further error messages.

Any ideas anyone?
1 2 3 4 5 6 7 8 9 10 11