Displaying 20 results from an estimated 1000 matches similar to: "Performance and Optimization"
2009 Jun 15
1
Performance and Optimization
I have a question about the overall performance of Speex and what I can do
to improve it. I'm running Speex Windows x86, Visual C++ EE compiler. I will
say right away that I've only compiled debug so far and used no compiler
optimizations at all.
I use the uwb-mode, preprocessing, denoising and echo cancellation.
I've noticed that speex consumes a lot of cpu resources. When I run this
2009 Jun 18
0
Performance and Optimization
Quoting Greger Burman <greger at mobile-robotics.com>:
> The reasons I have posted these questions are: 1) To find out if Speex can
> take advantage of SIMD extensions.
If you define _USE_SSE, CELT is already able to use SSE instructions. You must
be careful on Windows though because it doesn't support C99 var-arrays and
alloca() isn't properly aligned for SSE, so you have to
2009 Jun 18
2
Performance and Optimization
The reasons I have posted these questions are: 1) To find out if Speex can
take advantage of SIMD extensions.
2) To maybe learn from someone with previous experience in optimizing Speex
for moderns x86 architectures before I set off trying all kinds of things on
my own.
See answers inline:
2009/6/15 Tom Grandgent <tom at grandgent.com>
> Why haven't you tried using release build
2009 Aug 11
0
AEC troubleshooting
Well, I am not the person to be asked about how Speex AEC works :)
And I was referring speaker input as having direct access into what has been
played thru speaker. (ASIO Soundcard provides interface for that)
So if I am remebering correctly, with data from Mic and Speaker in sync,
speex AEC should do the job.
Tim
_____
From: Guilherme Balena Versiani [mailto:guibv at
2009 Aug 11
0
AEC troubleshooting
Ok, let me be more clear on this.
AFAIK, Windows OS doesn't expose speaker input as other OS ( Linux, Mac
OS...). That puts you in bad spot in using Speex AEC with windows.
Only way to work is to use Soundcard with ASIO functionality which does give
you speaker input. But then you would have to impose that requirement on
all your users.
I heard Speex AEC works great from developer who
2010 Mar 16
1
AEC strangest behavior
On 2010-03-16 06:35, Greger Burman wrote:
> Ok. Thanks J-M for clearing that up.
> What if you mix up the polarity on one speaker (180 degree phase
> change), would that matter?
Not at all. It's still all linear. You can even apply a different
equalizer to each speaker and it'll still be linear.
Jean-Marc
> cheers
> Greger
>
> 2010/3/15 Jean-Marc Valin
2005 May 29
0
cpu utilization across speex versions
Kemal,
It sounds like you are doing something wrong. I strongly recommend that you
profile your application to see exactly where the CPU time is being spent.
AMD happens to have a nice profiler called CodeAnalyst that they give away
for free. And it's plenty usable on Intel CPUs as well.
http://www.amd.com/us-en/Processors/DevelopWithAMD/0,,30_2252_3604,00.html
Make sure you test a
2009 Aug 11
2
AEC troubleshooting
I actually forgot to mention that I'm using ultra-wideband mode, but seems
like you understood that anyway. Is this true that Speex echo cancellation
only performs well in narrowband mode !?
I've been using 100 ms as the default tail length. I don't know what the
ideal tail length would be. I have tried shorter and longer tails but it
hasn't made any difference.
Does
2009 May 29
1
speex documentation
I believe there is a documentation error regarding
speex_preprocess_ctl(preprocess_state, request, ptr);
The manual states:
SPEEX_PREPROCESS_SET_DENOISE Turns denoising on(1) or off(2)
SPEEX_PREPROCESS_SET_AGC Turns automatic gain control (AGC) on(1) or off(2)
I noticed that setting a value of 0 turns the setting off. Setting a value
of 1 or 2 turns the setting on. While I do think 1 and 0 is more
2008 Mar 29
0
GCC/ELF Visibility patch
Hi,
I've attached a patch against SVN r14645 which adds GCC visibility
information to all symbols exported from libspeex.so and libspeexdsp.so.
It includes a configure.ac change to test that both the compiler flags and
__attribute__((visibility)) works, and if so will
#define EXPORT __attribute__((visibility("default")))
and if not
#define EXPORT
I've attached a diff output
2010 Mar 16
0
AEC strangest behavior
Ok. Thanks J-M for clearing that up.
What if you mix up the polarity on one speaker (180 degree phase change),
would that matter?
cheers
Greger
2010/3/15 Jean-Marc Valin <Jean-Marc.Valin at usherbrooke.ca>
> If more than one speaker receives the *same* signal, it doesn't matter the
> number of speakers. It only gets tricky when the speakers are playing
> slightly
>
2008 Mar 29
2
GCC/ELF Visibility patch (fwd)
Hi,
I've attached a patch against SVN r14645 which adds GCC visibility information
to all symbols exported from libspeex.so and libspeexdsp.so. It includes a
configure.ac change to test that both the compiler flags and
__attribute__((visibility)) works, and if so will
#define EXPORT __attribute__((visibility("default")))
and if not
#define EXPORT
I've attached a diff output
2010 Mar 16
0
AEC strangest behavior
On Mar 15, 2010, at 8:46 AM, Jean-Marc Valin wrote:
> If more than one speaker receives the *same* signal, it doesn't matter the
> number of speakers. It only gets tricky when the speakers are playing slightly
> different signals (e.g. from a stereo song).
>
Does "tricky" mean that the Speex AEC won't handle such situations well? Or just that you had to be
2010 Mar 15
5
AEC strangest behavior
If more than one speaker receives the *same* signal, it doesn't matter the
number of speakers. It only gets tricky when the speakers are playing slightly
different signals (e.g. from a stereo song).
Jean-Marc
Quoting Greger Burman <greger at mobile-robotics.com>:
> One thing I can think of is if you are using two or more speakers. If the
> speakers are not at the exact same
2010 Mar 17
1
AEC strangest behavior
On 2010-03-16 14:22, Josh Gargus wrote:
>> If more than one speaker receives the *same* signal, it doesn't
>> matter the number of speakers. It only gets tricky when the
>> speakers are playing slightly different signals (e.g. from a stereo
>> song).
>
> Does "tricky" mean that the Speex AEC won't handle such situations
> well? Or just that you
2009 Sep 03
1
Speex-dev Digest, Vol 64, Issue 2
hy,
recording and playback is working perfectly without speex.
i have try to set samplerat from 6000 to 441000 and quality from 1 to 10 sam
with complexy, but the best i can get is with 16000 samplerate, 5quality and
3complexy .. but still, the voice that came out is annoying, artificial,
robot ,...
Lp, Tim
+--------------------------+
| email: rico at gama.us |
| www: http://gama.us
2009 Aug 12
2
AEC troubleshooting
First of all, thank you for your input Tim. That is very helpful.
I would love to hear from other people with experience of AEC and Speex.
I guess I have to split my question into to parts now.
1.
Is it a fact that using the windows multimedia API (wave audio) for audio
capture and playback makes it impossible to do echo cancellation with Speex
AEC or other EC method due to inprecise timing?
I
2008 Aug 02
1
fir_mem16,iir_mem16 and filter_mem16 optimisations
-----Original Message-----
From: Jean-Marc Valin <jean-marc.valin at usherbrooke.ca>
To: ??????? ??????? <altersoft at mail.ru>
Date: Sat, 02 Aug 2008 07:54:34 -0400
Subject: Re: [Speex-dev] fir_mem16,iir_mem16 and filter_mem16 optimisations
>
> ??????? ??????? a ?crit :
> > I have some questions about that functions: fir_mem16, iir_mem16 and filter_mem16.
> >
2009 May 06
1
speex resampler
I'm trying to understand a bit more about the inner workings of the speex
resampler.
I want to do resampling on a voip stream. High quality and low latency is
important.
1) What does speex_resampler_magic() do?
2) I find that resampling has quite an impact on performance and I'm trying
to figure out where the cpu cycles are going and see what can be done to
reduce the cost. I ran a profile
2010 Feb 09
1
Stereo AEC
Hi,
Can anybody show me how to enable stereo AEC, I tried with the
following code and the result is bad, degraded output.
Init:
ec_state = speex_echo_state_init_mc(frame_size, aec_tail, 2, 2);
speex_echo_ctl(ec_state, SPEEX_ECHO_SET_SAMPLING_RATE, &sample_rate);
preprocess_state_left = speex_preprocess_state_init(frame_size, sample_rate);
preprocess_state_right =