Background amplification and voice blur on phone call

Risto H. Kurppa risto at kurppa.fi
Wed Jul 8 21:57:29 CEST 2009


om2009t5 and the same issue here.

I had a discussion about it at #openmoko(-cdevel), here's the log


Jun 17 23:51:10 <rhkfin> DocScrutinizer: The echo doesn't to seem to
be stable: during one call it sometimes echoes sometimes doesn't (when
I'm quiet and the other end talks). To me it sounds like the noise
gate doesn't work fully but the background noise (be it the voice of
the other person or background noise like bus, computer fan, whatever)
is amplified a lot..
Jun 17 23:52:23 <DocScrutinizer> hmmm, so maybe reducing control.5 a
few units may help a lot then
Jun 17 23:52:56 <DocScrutinizer> also I'm not quite sure OM2009
handles AT%N correctly
Jun 17 23:53:49 <rhkfin> the echo reduction? Hmm.. I really hope it
doesn't and when it's fixed things get easier.. I'll ask nytowl
later..
Jun 17 23:53:51 <DocScrutinizer> and if OM2009 has borked statefiles,
everything may happen, even feedback inside mixer
Jun 17 23:54:15 <rhkfin> DocScrutinizer: I'm using the -new (-based
I've tried to fix further a bit myself)
Jun 17 23:55:51 <DocScrutinizer> aah, ok. Then just reduce control.5
until you get decent sensitivity for far end hearing you loud but
without ambient noise penetrating noisegate
Jun 17 23:55:53 <rhkfin> DocScrutinizer: Do you think the -new
statefile should work for all FR's or are there small differencies in
the component values that cause the need for a little tuning for each
unit? (well, depends on the operator etc... Hmm.. )
Jun 17 23:56:42 <DocScrutinizer> rhkfin: for sure you need to adjust
according to your particular buzzfix situation
Jun 17 23:56:59 <rhkfin> 'mono playback volume' is the volume of
signal from my microphone sent to calypso?
Jun 17 23:57:14 <DocScrutinizer> *sigh* mompl
Jun 17 23:57:27 <DocScrutinizer> numid=5,iface=MIXER,name='Mono Playback Volume'
Jun 17 23:57:32 <rhkfin> yes
Jun 17 23:59:32 <DocScrutinizer> during call open amixer, adjust "mono
pl.b. vol", then do a `alsactl store .../gsmhandset.state`
Jun 17 23:59:45 <DocScrutinizer> *then* finish call
Jun 18 00:00:23 <DocScrutinizer> probably you prefer to do this from a
decent PC via ssh
Jun 18 00:00:33 <rhkfin> yes, understand and can do that, just want to
understand the behaviour..
Jun 18 00:01:14 <rhkfin> mono playb. vol is the signal that I hear
from my speaker, isn't it?
Jun 18 00:01:39 <DocScrutinizer> alternatively write a script you call
in FR terminal that does the amixer invocation and after amixwer
returns does the alsactl store thingie automatically
Jun 18 00:01:54 <rhkfin> reducing it reduces the changes of the mic
picking up the signal - but also at the same time makes it harder for
me to hear the other end?
Jun 18 00:02:10 <DocScrutinizer> rhkfin: nope, control.5 is mixer-to-gsmMicInput
Jun 18 00:02:19 <rhkfin> oh, ok..
Jun 18 00:02:46 <DocScrutinizer> it's the sensitivity of your handsets
microphone
Jun 18 00:03:02 <rhkfin> ok, understand. Now it makes sense.
Jun 18 00:03:17 <rhkfin> How can I play with the gate level?
Jun 18 00:03:46 <DocScrutinizer> see wiki for description of AT%N
valid numeric arguments
Jun 18 00:04:02 <rhkfin> so the gate is in calypso, not alsa. ok
Jun 18 00:04:03 <DocScrutinizer> sorry no pointer ATM, you have to search for it
Jun 18 00:04:15 <rhkfin> np
Jun 18 00:04:20 <DocScrutinizer> yup, gate and echo cancellation in modem
Jun 18 00:04:36 <rhkfin> ok, got it..
Jun 18 00:04:54 <rhkfin> Thanks for this, let's see if i'd be able to
improve it a bit again..
Jun 18 00:05:13 <DocScrutinizer> mixer is a simple preamp for mic from
modems POV
Jun 18 00:06:13 <rhkfin> This is the one, I guess:
http://wiki.openmoko.org/wiki/Hardware:AT_Commands#Echo_Suppression_and_Noise_Reduction
Jun 18 00:06:44 <DocScrutinizer> yup, exactly
Jun 18 00:06:57 <rhkfin> what's short & long AEC?
Jun 18 00:07:08 <DocScrutinizer> I think it's n some of FSOs config-files
Jun 18 00:08:04 <DocScrutinizer> I guess it'S about signal delay from
output to input, I.E. how long the sound needs thru the air from
speaker to mic
Jun 18 00:08:31 <DocScrutinizer> not sure about that though, mere guess
Jun 18 00:08:37 <rhkfin> ok..
Jun 18 00:09:23 <DocScrutinizer> might as well be sth about how long
it takes the AEC to recalibrate from silence to voice and back
Jun 18 00:11:04 <rhkfin> and noise cancellation is the gate?
Jun 18 00:11:07 <DocScrutinizer> rhkfin: check mailing lists, there
has to be a better more comprehensive explanation of AT%N
Jun 18 00:11:14 <DocScrutinizer> yup,
Jun 18 00:11:31 <rhkfin> ok, thanks for the pointerst!
Jun 18 00:11:41 <DocScrutinizer> the dB value is probably the level
where it kicks in
Jun 18 00:11:51 <rhkfin> right
Jun 18 00:12:41 <DocScrutinizer> be aware there's lots of confusion
about exact semantics of AT%N
Jun 18 00:13:28 <rhkfin> ok.. I'll try to find my way through the
nasty poisonous AT-spikes shot at me from the Fortress of Calypso..
Jun 18 00:13:50 <DocScrutinizer> I even seen statements these commands
are accumulative, like "AT%N293; AT%N105"
Jun 18 00:15:22 <rhkfin> long AEC -12dB and nose reducion is active..
Jun 18 00:19:27 <DocScrutinizer> mompl, started search across *all* my OM-mail
Jun 18 00:19:45 <DocScrutinizer> may take a few minutes (no quadcore here ;-)
Jun 18 00:24:13 <wpwrak> i'd have to call the CIA to do that ...
Jun 18 00:25:41 <DocScrutinizer> sheeesh, 80.000 msgs searched, no
success to find the code sniplet I know I've seen long ago :-/
Jun 18 00:25:57 <DocScrutinizer> start agin with more fuzzy searchstring
Jun 18 00:26:19 <DocScrutinizer> start agin' - yeah, true ;-)
Jun 18 00:29:54 <DocScrutinizer> kmail search eats swap like hell
Jun 18 00:32:39 <DocScrutinizer> ooooh my....
Jun 18 00:33:16 * DocScrutinizer considers to install a beowulf with
all the FR around here ;-)
Jun 18 00:34:18 <DocScrutinizer> though kmail using threads for search
would help a lot to exploit full power of dual cores
Jun 18 00:34:53 * DocScrutinizer considers using grep instead
Jun 18 00:36:11 <wpwrak> mutt can also search mail bodies
Jun 18 00:50:17 <DocScrutinizer> rhkfin:
http://lists.openmoko.org/pipermail/hardware/2009-June/001240.html
Jun 18 00:51:36 <fredrin> wpwrak: thanks again for the buzzfix :DD
Jun 18 00:52:58 <DocScrutinizer> rhkfin: be aware though nobody knows
exactly what's the meaning of ""reset trigger for AEC / SPENH ""
Jun 18 00:54:06 <DocScrutinizer> rhkfin: I strongly suggest to OR the
bitmasks for the desired settings, and send these to calypso as a
single AT%N command
Jun 18 00:55:22 <fredrin> DocScrutinizer: Do i need to use the AT
command to fix the echo? how?
Jun 18 00:55:49 <DocScrutinizer> the meaning of bit0 ""ACK bit : set
to 1 in order to warn DSP..."" is completely up to anybody's guess
Jun 18 00:57:40 <DocScrutinizer> depends on your distro, and on your
config. please read backscroll of this #chan, starting with
""[2009-06-18 01:44:45] <wpwrak> DocMobilizer: 1k seems good, yes. he
had some big problems with echo, but that may be the alsa state""
Jun 18 00:58:01 <DocScrutinizer> fredrin: you got backscroll?

I also have these links open as tabs to try out at some stage to play
around with the settings - haven't had the time so far..

http://wiki.openmoko.org/wiki/Hardware:AT_Commands#Echo_Suppression_and_Noise_Reduction
http://wiki.openmoko.org/wiki/Neo_1973_and_Neo_FreeRunner_gsm_modem#AT_command_interface


r

-- 
| risto h. kurppa
| risto at kurppa dot fi
| http://risto.kurppa.fi



More information about the community mailing list