similar to: Proposed AGC additions

Displaying 20 results from an estimated 400 matches similar to: "Proposed AGC additions"

2005 Jun 20
1
Speech detection in preprocessor with echo
I think you'll have to modify Speex to get the functionality you're looking for. I've made a few simple modifications to the AGC to prevent it from 1) exceeding a specified level of amplification and 2) enable and disable adaptation, so I can freeze it at a certain level while speech is not detected. It's mostly just a matter of doing this at the end of speex_compute_agc():
2005 Jun 22
1
Speech detection in preprocessor with echo
agc_gain seemed to fit with the idea of what I wanted to do, it was easy to understand its units and behavior, and freezing it produced the desired results. Also I wanted to cap it, so that's done at the same place, and that definitely works. All I want to do is be able to freeze AGC adaptation and put an upper bound on the AGC (for example, 2x amplification). Both of these things seem
2007 May 29
2
Noise suppression less than AGC gain
Jean-Marc Valin wrote: >> I've had a small case with noise suppression and AGC. I have a fairly >> noisy environment here, and with the default parameters, noise >> suppression works fairly well while I talk. However, when I shut up, AGC >> starts slowly increasing the gain until it has amplified whatever noise >> is left to levels about equal to having no
2007 May 29
2
Noise suppression less than AGC gain
>> Yes, after I stop speaking, the noise slowly starts climbing again, and >> if I peek at st->agc_gain, that's slowly climbing too. I think part of >> the trouble is that the noise in here isn't uniform white noise; there's >> traffic outside the window and people walking in the hallway outside my >> door. Each little event is enough to cause the AGC
2008 Mar 18
1
Patch to make SPEEX_PREPROCESS_GET_AGC_GAIN use dB, and _SET_AGC_LEVEL use a int32
Hi, The attached patch fixes an incistency in my earlier patch. Whereas the rest of the AGC ctls are in dB, GET_AGC_GAIN was linear. This patch fixes that. It also changes the API for _GET and _SET_AGC_LEVEL to use a int32 instead of a float, meaning we don't need to do a API change when we get a fixed point AGC. Best regards, Thorvald -------------- next part -------------- ---
2007 May 29
0
Noise suppression less than AGC gain
> Yes, after I stop speaking, the noise slowly starts climbing again, and > if I peek at st->agc_gain, that's slowly climbing too. I think part of > the trouble is that the noise in here isn't uniform white noise; there's > traffic outside the window and people walking in the hallway outside my > door. Each little event is enough to cause the AGC to increase a little
2014 Jan 08
1
Some Speex AGC Questions
I'm attempting to use speex preprocess for automatic gain control in an application I'm working on and could use some help. I'm using Opus as my codec. In order to keep the number of packets down, I'm using 60msec frames. I'm sampling at 48KHz as is recommended for Opus. So, the frame length is 2880 samples and the sampling rate is 48000. The source of the data is a
2007 May 29
2
Noise suppression less than AGC gain
Hi, I've had a small case with noise suppression and AGC. I have a fairly noisy environment here, and with the default parameters, noise suppression works fairly well while I talk. However, when I shut up, AGC starts slowly increasing the gain until it has amplified whatever noise is left to levels about equal to having no filtering at all. As soon as I talk, AGC backs down fairly quick
2006 Feb 03
0
Leaking audio and AGC/VAD
Hi, The leakage problem you describe is very, very common and you will need to do something to address it. I modified the version of Speex I use to implement an adjustable max gain. If you look at speex_compute_agc in preprocess.c, you will see: if (agc_gain>200) agc_gain = 200; This max of 200 is usually more than enough to amplify leakage which occurs either in the sound
2007 May 03
3
iaxclient & speex
Hi The latest SVN trunk for speex has changed the SpeexPreprocessState to an opaque structure, for jolly good software engineering reasons. However, the Analogue AGC (AAGC) feature of iaxclient (in audio_enode.c) relies on some members of this. It uses speech_prob to detect when there is enough speech to consider AAGC and then loudness2 to decide how to adjust the input mixer. We want to use
2008 Feb 02
0
Patch to make analysis data available.
Hi, Ref the disucussion on IRC yesterday; here's a patch which makes a bit more data from the analysis of the preprocessor and the echo canceller available. For the preprocessor: - Size of power spectrum. - Power spectrum and noise estimate of the previous frame. These are given as squared values, so sqrt() to get values in the 0->32767 range. - Current amplification level
2008 Feb 12
0
Second part of data export patch
Hi, Here are the next two patches for the data export. speex_get_psd should be applied after speex_get_agc_gain (sent in previous mail). It allows applications to get the power spectrum for the signal and the noise estimate. speex_get_prob should be applied last. It allows fetching the speech probability of the current frame (the value that the _PROB_START and _PROB_CONTINUE parameters are
2014 Jan 04
0
Some Speex AGC Questions
I'm attempting to use speex preprocess for automatic gain control in an application I'm working on and could use some help. I'm using Opus as my codec. In order to keep the number of packets down, I'm using 60msec frames. I'm sampling at 48KHz as is recommended for Opus. So, the frame length is 2880 samples and the sampling rate is 48000. The source of the data is a
2008 May 25
3
FFTW3 for libspeexdsp
Hi, Attached is a patch which enables FFTW3 to be used by libspeexdsp. Using SSE, the FFT code is more than twice as fast, and it's 50% faster even without SSE. To enable the library, you'll need to call configure with '--with-gpl-fftw3'. Based on the benchmarking we did, this also changes the default FFT to smallft for floating point implementations when not using FFTW3.
2007 Feb 06
2
svn AGC
Hi Jean Marc, I found that the AGC API and algorithm has changed in svn head trunk. Is it safe to use it? Or is it for testing purpose only? You also said that VAD in svn is broken in a previous post, is it related to the AGC change? or can we mix the old VAD algorithm with the new AGC safely? kind regards, fredo
2011 Aug 19
2
AGC on a phone conversation
I have a recorded conversation from an analog trunk. As usual one side is stronger that the other one. In my case, the gap between signal levels are even bigger. How does speex AGC preprocessor will perform on this type of audio recording? Maybe I am wrong and AGC is not really what I need to equalize the two persons in my phone conversation? As I Understand, AGC will perform better if each
2009 May 28
1
DC component coming back after AGC
I'm getting confused, what's the problem exactly? The AGC doesn't remove the DC or it adds one? Jean-Marc Aymeric Moizard a ?crit : > Hi Jean-Marc & all, > > I'm currently working on a wav file with very low volume. > This wav also contains a DC component. > > Using testdenoise with modification (AGC turned on with > 20000.0 value) I'm able to
2008 Jul 14
2
A question about AGC usage
Hello All, I'm using speex codec in ARM based embedded project and really satisfied by its performances and quality (thanks a lot for speex development team for great work!). I'd like to add AGC functionality and as I actually understood it is not supported in FPU-less platforms. Is it correct? If it is, do you have any updates of preprocessor or an experience to run AGC in
2013 May 18
1
Asterisk 1.8-cert and AGC
Hi, I'm trying to use AGC in combination with Asterisk 1.8 and an odd telephone which is very loud when used with a headset and more quiet when used "normal". Regarding to the documentation, AGC should be available since * 1.6 - but every time I want to set it, the CLI tells me: -- Executing [0160xxxxxxx at intern:2] Set("SIP/intern-xxx-000000d2",
2008 Feb 21
0
st->nb_loudness_adapt removal patch
Hi, I've been looking a bit at the VAD/AGC situation. I noticed a leftover variable declaration. The AGC used to use nb_loudness_adapt to count the number of frames so far, but it now uses nb_adapt which is shared by all the functions. However, it still allocates and updates nb_loudness_adapt. This patch saves 4 bytes of memory and a partial cycle of CPU power ;) -------------- next part