Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Voice Support for the Linux Client

Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-27-2008 11:52
Kristopher:

Here's a couple of things that come to mind:

Adjust the microphone input level in:
Edit/Preferences/Voice Chat/Device Settings/Input Level slider control
while the SL client is running. Ignore the grey boxes to the right of the slider control. They work with the Windows voice program, but not the Linux. This is a Vivox issue, and Tofu knows about it.

Other than that, the only thing I can think of is that you're just clicking the talk button to talk instead of holding it down while you're talking. The "whooshing" sound is probably you breathing into the mic within the space of time between microphone activation and deactivation.

Skype works different from Vivox voice. I don't know how or why, but they do.

That talk button system has three parts:
1. The first is the talk button itself. It must be held down while talking, then released when you're finished.

2. Second, inside the talk button, to the left of the word "Talk" is a lock button. It is round and has a padlock icon inside. It's very tiny, so it may be hard to see. If you click that, the talk button will darken, indicating that the microphone is on whether or not you are clicking the talk button. Some systems make a lot of noise or send an echo to other users, so it is usually considered a good idea to use only the talk button, not the lock.

3. Last is a button to the left of the talk button with two cartoon-style talk bubbles. This brings up the "Active Speakers" list. If you are connected, your name, as well as all other voice users' names in the area, will be listed here.

In addition to the talk button, you can click (and hold down) the middle button or wheel on your mouse and talk. It does the same thing, and you can program that in preferences.

Gertrud:

It is not normal for those repeated reconnects. This happens when the client is not making proper contact with SL's voice server(s). I don't know a great deal about Gentoo, but you might check the default settings for those three programs and run a "ps -ef" from the console to see that they are all running. Also, check to see that you have 127.0.0.1 pointing to localhost in etc/hosts (I know that's a "duhhh" but you'd be surprised at what you can find by checking the basics). (f you're running KDE, you can run "kpm" which brings up a gui form of "ps.";)

You don't say what kind of network you're using, but there might be something like an external firewall preventing proper connection. Some people have had trouble with various kinds of wireless. Also, if you're running from a corporate setting, the voice protocols may be getting blocked.

Adamas
Boroondas Gupte
Registered User
Join date: 16 Sep 2005
Posts: 186
Gentoo
01-27-2008 15:45
I got native voice to work on gentoo. As I coudn't figure out where to drop the vivox blob (I thought it belonged into ./lib which didn't work), I used the viewer from svn (check-in nr. 184 on "release" branch, has got some nice UI tweaks in it btw :-D).

I just had to start esd, because the viewer would use OSS otherwise, thus blocking the audio device and the vivox part wouldn't be able to use audio then. (I still crash when forcing the viewer to use ALSA).
To install esd (if it isn't already):
CODE
sudo emerge media-sound/esound

To start esd:
CODE
sudo /etc/init.d/esound start

To have esd started everytime after booting:
CODE
sudo rc-update add esound default


I had to adjust some mixer setting for capture to include the mic (and exclude the mix, which i probably included by accident), then everything probably already was all right. Only I didn't know because I didn't hear myself during SL's audio device setup and didn't read the README-linux-voice.txt because I had created that file by touch so SCons wouln't complain about it being missing at compile time.

But testing revealed I can hear others and others can hear me (although my mic isn't the best one, but that I knew in advance)
Kristopher Tenk
Registered User
Join date: 11 Apr 2007
Posts: 153
01-27-2008 23:03
Update : Dont what did it but thats it working for me, some hear me fine others say its got a lot of noise and i hear them just fine. Thanks for the help.
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-28-2008 01:09
Great! That other stuff sounds pretty normal in my experience. I think voice is still a work in progress, even for the win/mac crowd.

Adamas
Tofu Linden
Linden Lab Employee
Join date: 29 Aug 2006
Posts: 471
01-29-2008 06:52
I appreciate all the feedback despite Linux Voice not officially being in any release yet. :)
The feedback does help to confirm what the common problems/workarounds are.
Reyfer Kawanishi
Registered User
Join date: 2 Nov 2007
Posts: 51
01-29-2008 07:14
Hi.

I followed the instructions here, installed ESD, PULSEAUDIO, killed aRts, but the problem is, I see a white dot over my avatar's head, and I see my name listed on the active speakers window, but I have no voice, and the people around me that I know for sure are using voice, I don't even see the white dot over their heads, leave alone hear them. I'm using Kubuntu 7.10. Are there some parameters one should edit to make this work? Thank you.
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-29-2008 11:07
Thanks, Tofu. We all appreciate the encouragement.

Reyfer:

These instructions are for Kubuntu 7.04, but should be the same as (or close enough to) 7.10:
I notice you didn't mention ALSA. Check to see that both ALSA and ESD (sometimes called "esound" are running. They are run as system services, sometimes called "daemons." Open "System Settings" (kcontrol) in root mode, click on the advanced tab, and click on "System Services." Make sure you're looking at "Multiuser Mode (5)" mode. Scroll down the list, find those two items and see whether or not they have a "yes" next to them. If not, change, then save.

As for PulseAudio, it is a direct replacement for aRts and is run from the user account. To find out if it is running (if you have it starting every time you boot up/log in) open a console, type "KPM" and hit enter. PulseAudio should be on the list. Otherwise, if you start it every time you run SL, you can do the same thing after SL is running.

All three need to be running and you may have to troubleshoot the reason why one or more is not working properly.

Adamas
Reyfer Kawanishi
Registered User
Join date: 2 Nov 2007
Posts: 51
01-29-2008 17:10
From: Adamas Carter
Thanks, Tofu. We all appreciate the encouragement.

Reyfer:

These instructions are for Kubuntu 7.04, but should be the same as (or close enough to) 7.10:
I notice you didn't mention ALSA. Check to see that both ALSA and ESD (sometimes called "esound" are running. They are run as system services, sometimes called "daemons." Open "System Settings" (kcontrol) in root mode, click on the advanced tab, and click on "System Services." Make sure you're looking at "Multiuser Mode (5)" mode. Scroll down the list, find those two items and see whether or not they have a "yes" next to them. If not, change, then save.

As for PulseAudio, it is a direct replacement for aRts and is run from the user account. To find out if it is running (if you have it starting every time you boot up/log in) open a console, type "KPM" and hit enter. PulseAudio should be on the list. Otherwise, if you start it every time you run SL, you can do the same thing after SL is running.

All three need to be running and you may have to troubleshoot the reason why one or more is not working properly.

Adamas

ALSA, ESD and PulsAudio are all running. I copied the five files from"linden/indra/newview/vivox-runtime/i686-linux" to my SL folder. Killed aRts. Start SL. The program says I have voice running, I can see the white dot over my head, but when I speak I don't seethe green lines, nobody hears me, and I don't see white dots over other people that I know have voice activated, and I can't her them, and the only person on the "active Speakers" list is myself....any idea?
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-29-2008 18:14
Only a couple of things come to mind. Double-check aRts and PulseAudio. Make sure one is running and the other is not. See if there isn't a firewall between your internet connection and your computer. Some modem/routers have defective firewalls that disallow any but html traffic (like my Actiontec). Turn those off, and use the computer's firewall. Proxies also can cause trouble. Another thing: if you have been previously using the Windows voice program, you could still have that active in a script somewhere.

All three sound software packages should be run with default settings.

Your symptoms tell me that you are not getting networked voice connection to SL's voice servers; the white dot only says the Vivox program is active.

I'm not sure what else to add. All I can think of is to make sure all that stuff is upgraded/updated to the latest releases.

Adamas
Torrid Luna
Stylecrasher
Join date: 16 Aug 2006
Posts: 20
Voice with Linux, without ESD and OSS
01-30-2008 07:30
Hi,

I managed to get voice (and all other sound stuff, beside video) running with Pulseaudio and Alsa, and without Esound and OSS.

http://primforge.com/2008-01-30/final-voice/
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-31-2008 00:49
I went to that url, read it, and decided to give it a try. I found that Gentoo is, apparently, different enough from OpenSUSE that most of that stuff didn't work. I could find none of the files referenced in your default.pa. So, I went back to the only thing I had to affect PulseAudio: /etc/pulse/default.pa. (Also, installing that /etc/asound.conf breaks something between KDE and PulseAusio and makes it impossible to automatically run PulseAudio from ~/.kde/Autostart.)

After some experimentation with /etc/default.pa, I found that commenting everything out except the two ALSA lines under the automatic driver load section:
"### Load audio drivers automatically on access"
#add-autoload-sink output module-oss device="/dev/dsp" sink_name=output source_name=input
#add-autoload-source input module-oss device="/dev/dsp" sink_name=output source_name=input
#add-autoload-sink output module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
#add-autoload-source input module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
add-autoload-sink output module-alsa-sink sink_name=output
add-autoload-source input module-alsa-source source_name=input

and the volume restore:
### Automatically restore the volume of playback streams
load-module module-volume-restore

and that odd, unlabeled item:
.nofail

makes it work on my system without Esound. (I shut down esound in the system services section of YaST.)

I left the export-bad stuff commented out in the second life script; changing those don't seem to make any difference in the end result.

Thank you for this clue. I really appreciate being able to reduce my system load by yet another unneeded program!

Btw, anyone wanting to try this is advised to do a complete reboot after making these changes. That will ensure that everything is loaded and running properly.

Adamas
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
01-31-2008 14:43
Oops. It worked the first couple of times I tried this, now I can be heard, but cannot hear.

Back to the old drawing board!

Adamas
Drake Bacon
Linux is Furry
Join date: 13 Jul 2005
Posts: 443
01-31-2008 17:54
Hey Torrid Luna? Is your audio card in your Gentoo box sane (aka has a Master mixer et al)? I'm going to disable this mess and put in a SB Audigy.
_____________________
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)
Drake Bacon
Linux is Furry
Join date: 13 Jul 2005
Posts: 443
01-31-2008 18:25
Ugh. Tofu, can you please change the long names to actual device names? Having this:

Default
OSS Open Sound System
Advanced Linux Sound Arch (ALSA)

Doesn't quite help when you need the second sound card that's on your system. I'd like this better:

ALSA Default
OSS /dev/dsp
OSS /dev/dsp1
ALSA hw:0
ALSA hw:1
ALSA dmix
ALSA dsnoop

(And yes, my onboard audio is **** for various medium values of ****, prompting me to replace it with a Soundblaster)
_____________________
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)
Torrid Luna
Stylecrasher
Join date: 16 Aug 2006
Posts: 20
02-01-2008 06:11
From: Drake Bacon
Hey Torrid Luna? Is your audio card in your Gentoo box sane (aka has a Master mixer et al)? I'm going to disable this mess and put in a SB Audigy.


@Drake,
I'm not sure what you mean, but yes, it has a master mixer in alsamixer, it's an old SB Live card, so it seems sane^^ I'm not sure if the hardware mixing features of that card are needed, but some of the audigy (SE) cards seem to lack that feature.

@Adamas,
I'm running the pulseaudio daemon system-wide, with --system added to the startup script, not per user. I followed the description at http://gentoo-wiki.com/HOWTO_ALSA_sound_mixer_aka_dmix#pulseaudio and disabled all stuff the pulsaudio chokes on (x11bellwhatever). The lines

add-autoload-sink output module-alsa-sink sink_name=output device=dmix
add-autoload-source input module-alsa-source source_name=input

seem to be the important change.
In addition to rebooting the whole machine, or at least the complete audio subsystem, I had to manually delete /var/run/pulse/* and /tmp/.esd* on several occasions.


Just trying to enable voice on my cute subnotebook, with some crappy snd_intel_hda,
Torrid
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
02-01-2008 14:35
Thanks Torrid. I tried once before to run PulseAudio as a system daemon and was unsuccessful. (I get the feeling on a lot of this stuff the good people at Novell, or whoever publishes stuff like this for OpenSUSE, don't test all options and don't set up defaults properly.)

I just found an OpenSUSE repository for multimedia: audio that has a bunch of PulseAudio stuff in it. I'm going to update my machine and add as much of that stuff as I can. Maybe something will make it work right.

Adamas
Drake Bacon
Linux is Furry
Join date: 13 Jul 2005
Posts: 443
02-01-2008 17:25
Ugh. Just tried to muck around OpenAL, which is what the Vivox blob is using... and no go. It does have a configuration area in ~/.openalrc, but documentation's missing.
_____________________
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)
Torrid Luna
Stylecrasher
Join date: 16 Aug 2006
Posts: 20
02-02-2008 06:04
I set this line in ~/.openalrc

(define devices '(alsa native esd null))

With my other computer and the intel hda chip I have to start the (real) esound, or else I have no sound at all. Neither esdplay nor other programs seem to work with the pulseaudio daemon.


Cheers,
Torrid
Armin Weatherwax
Registered User
Join date: 4 Jan 2008
Posts: 71
pse slowly
02-02-2008 15:39
[kubuntu 7.10 686 kernel 2.6.23]
Hi,

ok, i went through installing PulseAudio, disabling Arts, putting the vivox-files into my SL folder. First I got a result with kubuntu 7.10 like described: White point, but no one, but me in the list. No sound. After reboot PulseAudio disappeared from system services - I can reinvoke it by typing "puleseaudio &" in the console. Xmms and amarok then play audio using puleaudio output . But the white point vanished in SL.
For english isn't my native language I may have missed something, additionally I may have missed something with the configuration of puleseaudio. So ... if possible ...could you pse give some hints (slowly and in easy words) ... _and_ enlightening links about configuring pulseaudio? Well, i know thats nearly too much, to ask for, but I think it would help for a great step forward for so many linux-client-users ;)

thanks a lot for helping and patience - cu and hopefully - HEAR - you soon !

Armin
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
02-03-2008 01:21
Here's a text file I wrote to make the windoze version work with Linux (and posted way back on page 7 of this thread). You'll only need to follow the instructions for the Linux sound system, as you already have the Vivox stuff up and running. Just download it and print it out from OpenOffice or KWrite or something:

http://www.paganstead.com/extras/sl_voice_linux.txt

I will, from time to time, update this document. I've been starting PulseAudio from the KDE "Autostart" folder (/home/<user>/.kde/Autostart). Just create a new "Link to Application" in that folder and put in "pulseaudio" for the program to start. Then when you login to your computer, PA will start then. (Be sure to not have any script shut down PulseAudio!) Just delete those lines from the scripts described in my document. Also, if you found the Linux Vivox binaries, you can do away with the scripts altogether.

Adamas
Armin Weatherwax
Registered User
Join date: 4 Jan 2008
Posts: 71
Thanks
02-03-2008 12:19
thank you for that quick reply, this helped a lot! And I figured out, why the the white point dissappeared: I had libasound2-plugins installed - those seem to have a bug which prevents the voice-client from working: By running SL from a console I could see the output: pcm_params.c:2351: sndrv_pcm_hw_params: Assertion `err >= 0'.
Just uninstalling libasound2-plugins solved that problem.

;) Armin

Edit:
no, i was wrong: removing libasound2-plugins removes the symptom and solves nothing. The cause was that /etc/asound.conf was set up correctly but not /home/myuser/.asoundrc
So do -not- remove libasound2-plugins, they are needed.
Karack Uborstein
Registered User
Join date: 15 Nov 2007
Posts: 15
02-03-2008 14:01
Wanted to share, experiences I have had with the native voice for linux.

First my system is set up following the post adamas made, with esd, pulseaduio running and arts turned off.

So far I've not experienced the popping noise refer to in some of the posts.

What I have noticed, clearer incoming and outgoing voice, quicker response times.

Any choppiness I have experienced has been from networking related issues, i.e. bandwidth, to much traffic that kinda of stuff, and of course if the mic is turned up to loud, the voice is distorted and all.

One thing I did before going into sl is I adjusted the mic using KDE's record program & pulseaduio's mic input level, once it sounded ok in that respect, went into sl everyone usually hear's me ok. I never changed sl's volume control in device settings under voice chat, left it as default.

Awesome on at least having the native linux voice blob for testing and trying,

Thanks,
TheCondor Kondor
Registered User
Join date: 31 Jan 2008
Posts: 5
02-04-2008 05:30
Can someone explain to me how to start ESD and Pulseaudio at the same time?

I am running on Mandriva 2008, and if I start the Pulseaudio daemon, esd refuses to start, if i start esd first Pulseaudio refuses to start... and my only option seems to be to install the pulseaudio-esound-compat rpm, which removes esd and just create a link from esd to the pulseaudio daemon!

What I am getting now is:

I have sound output and capture working with all the applications (using alsa).

If I setup SL to use esd, I get sounds in SL, but cannot hear people talking (in sl voice device setting i only have null as output driver)

If i setup SL to use alsa, no audio in SL but I can hear people talking!!!

In both case my capture device points to ALSA in the sl voice device settings, but capture does not seem to work at all.

I have tried all the possible combinations of artsd, esd, oss, alsa and pulseaudio and still have problems getting things to work!

Why Linden lab is just not fixing the ALSA output????
Adamas Carter
Registered User
Join date: 2 Jun 2007
Posts: 192
02-04-2008 11:05
Are you trying to run ESD and PulseAudio both as daemons? ALSA and ESD are supposed to run as daemons, PulseAudio is run from the user account. Don't try to run it as a daemon (system service), it won't work properly. Most of this stuff are still works in progress. Nobody has anticipated these programs being used this way before.

In short, ALSA and ESD are daemons (system services), both started on bootup. PulseAudio is started either from a script just before running the SL client or on user login with a script, link, or KDE application .desktop file in the ~/.kde/Autostart folder.

All this stuff is run with defaults.

PulseAudio is envisioned as a drop-in replacement for ESD (in Gnome), but it is still in development and will not work that way (at least not in KDE).

Make SURE aRts is NOT running. This program is obsolete, hasn't been maintained in years, and should have been dumped by KDE long ago. If it is running while you're trying to run everything else, it will &%@# %! everything. PulseAudio acts as a replacement for aRts in this configuration, not as a replacement for ESD.

If I were feeling snarky, I would suggest you try a better distro than Mandriva, but I would really like to see this stuff work in any distribution.

Adamas
TheCondor Kondor
Registered User
Join date: 31 Jan 2008
Posts: 5
02-05-2008 01:09
Thank you for the info, actually only ALSA is running as a system service, while both ESD and pulseaudio are running from the user session.

So, is ESD supposed to be lauched from root or with its own user?

Edit: I forgot to mention: I am running on x86_64 and with snd_hda_intel (but yesterday I replaced it with an Audigy 2 ZS card, with minor improvements)
1 ... 3 4 5 6 7 8 9 10 11