Senior Signal Processing Engineer in an audio-related company in Germany. Focus on audio DSP - microphone beamforming, ANC, low latency compression, 3D audio, etc...

Re: Audio Signal Filter

Reply posted 3 months ago (08/12/2021)
Hiany 32bit processor with 100MHz should be more than enough. On a STM32 Cortex M4 with 100MHz I implemented several filters, limiter, echo-cancelling and FIR filter...

Re: Sub-band processing

Reply posted 3 months ago (08/05/2021)
Since Audacity is open source and the code is quite readable, I also encourage you to download the code and look for yourself. I did this for a different effect...

Re: Loop optimization in C6416T Processor

Reply posted 6 months ago (04/14/2021)
Ahh - and obviously: Correlation in the time domain is conj(multiplication) in the frequency domain, so bringing both signals to the same length, ffting, multiplying...

Re: Loop optimization in C6416T Processor

Reply posted 6 months ago (04/14/2021)
depending on the signals you are correlating I have an algrithmic suggestion:Make a coarse search followed by a finer search -> run the entire correlation at...
The input stages of these devices usually have a dynamic range (difference of loudest possible input signal to noise floor) of less than 120dB. That's about 20bits...
yes, mostly. With integers, a large number plus a small number may create a large negative value. For 16bit signed integers:32767 + 1 = -32768
I don't exactly get what you mean, but I'll try anyway.There is no difference between analog and digital clipping (except for numeric overflow which is NOT happening...
I have programmed soft clippers and used them for mastering purposes and would share the source code if I hadn't done that on comany budget :(Pseudo code for positive...
If I understand you correctly, you want to use a digital signal path that does some sort of clipping as some sortz of musical effect - very much like people use...
I doubt there is something very complex going on at the output of your average DAW. I wouldn't really want it to. Within the entire signal chain there is a lot of...

Re: Carrier frequency correction using real IQ

Reply posted 11 months ago (11/25/2020)
From memory and without confirming the math I am not sure. Things are easier if the frequency offset is a lot bigger than your bandwidth. Then after modulation with...

Re: Carrier frequency correction using real IQ

Reply posted 11 months ago (11/25/2020)
well - if by 'interleaved' you mean z = [real(z0) imag(z0) real(z1) imag(z1) ...] then you need to deinterleave it and do the same: zout(n) -> (z(2*n) + i*z(2*n+1))...

Re: Algorithm testing via simulation in Scilab/Xcos

Reply posted 1 year ago (09/28/2020)
on a closer look, the entire code has pointer/value problems. For instance:    target      = (double*)(*(block->work));    inputDelta  = (double*)(*(block->work...

Re: Algorithm testing via simulation in Scilab/Xcos

Reply posted 1 year ago (09/28/2020)
/* init */    *(block->work) = (double *)scicos_malloc(sizeof(double)*3);should probably beblock->work = (double *)scicos_malloc(sizeof(double)*3);

Re: Algorithm testing via simulation in Scilab/Xcos

Reply posted 1 year ago (09/28/2020)
yes, I think it does - but I might err

Re: Algorithm testing via simulation in Scilab/Xcos

Reply posted 1 year ago (09/28/2020)
yes, the lines    inputDelta  = (double*)(*(block->work + 1));    out         = (double*)(*(block->work + 2));increment the pointer block->work...

Re: Algorithm testing via simulation in Scilab/Xcos

Reply posted 1 year ago (09/28/2020)
I have no spcific knowledge about using C blocks in xcos, but it seems to me the problem must lie with using static variables within your block to save system states.A...

Re: OT: Laughing in the Face of Adversity

Reply posted 2 years ago (04/06/2020)
Just one of the best Corona Song Parodies out there...

Re: Covid-19 Stories

Reply posted 2 years ago (03/30/2020)
HiI'm from Germany in the Stuttgart Area. My company is still up and running. Production has been changed from one larger shift to two shorter shifts to increase...

Re: Sampling and using the data

Reply posted 2 years ago (03/18/2020)
It has been some time, so maybe this is not entirely correct, but to my knowledge it is like this:I your rf bandpass signal is centered around fc, and you multiply...
HiI cannot help you improve your problem, but I can tell you that using up-conversion or downconversion, your BER should not change at all (at least not significantly)....

Re: DQPSK - New t this, and want to learn...

Reply posted 2 years ago (02/17/2020)
k is the discrete time index or symbol index. k is the current symbol, k-1 the last one and so on.phi and I and Q are related by the formula:I + j*Q = a * exp(j*phi)so...

Re: DQPSK - New t this, and want to learn...

Reply posted 2 years ago (02/17/2020)
When you are filtering the input signal with your raised cosine that was also used when generating this sequence, this is equal to a corellation of the signal with...

Re: DQPSK - New t this, and want to learn...

Reply posted 2 years ago (02/17/2020)
"The differnece between DQPSK and QPSK should not be vissible to me at this point" - That depends on the quality of your DQPSK signal and on the exactness of your...

Re: DQPSK - New t this, and want to learn...

Reply posted 2 years ago (02/17/2020)
Hithe widely spread rumor that Q is I phase-shifted by 90° is a dangerous one. It is true if you look at a continous harmonic oscillation - this can be described...
a bit error rate of 0.5 is equivalent to guessing, so I think you have some sort of general bug in your implementation (it does not work at all) and not an issue...

Re: How to obtain impulse response of a room acoustics

Reply posted 2 years ago (01/23/2020)
Hiwe do that a lot and we usually excite the room with a log sine sweep followed by a pause and a pink noise signal of some seconds and record that with a microphone...

Re: fixed point coeficcients to floating point

Reply posted 2 years ago (01/15/2020)
I don't know much about numpy, but from the comments I figure this is about an IIR filter, namely a biquad. Since there are only 5 coefficients, they must be normalized...

Re: MSc Digital Audio Engineering Project Idea

Reply posted 2 years ago (01/13/2020)
Yes, while synthesizing reverb has been studied a lot, dereverberation is a hot topic and to my knowledge there is no best-practice on this yet. Most papers on the...

Re: About timing recovery

Reply posted 2 years ago (01/07/2020)
Hi, it has been a while since I used these algorithms, so I may be wrong, but my understanding is this:You estimate the symbol duration T and sample the incoming...

Re: What is the cost of a typical MSEE degree?

Reply posted 2 years ago (12/17/2019)
I also paid 0$ for my 5 years of university in electronic engineering (Diplom - German predecessor to the masters degree). And I think that today I would be paying...

Re: damping filter - finite stationary error

Reply posted 2 years ago (11/27/2019)
A simple brick wall limiter would be implemented like this:if (filtered_signal[k] > desired_signal_max)    filtered_signal[k] = desired_signal_max;if (filtered_signal[k]...

Re: damping filter - finite stationary error

Reply posted 2 years ago (11/27/2019)
HiWhile I agree with the others that your resolution is very low and I don't know exactly what you try to achieve, but your desired signal looks pretty much like...
It might work, but only if you have at least statistical information about the source signal - if it is a mastered pop music signal I wouldn't waste any effort since...
I don't really get the problem, I think... An allpass is a filter that alters the phase only and lets the amplitude of all frequencies of interest unaltered. If...
For an oversampling as big as yours, I would simply calculate the linear interpolation of the two neighbouring input samples. If your output sample is taken at time...

Re: What is this effect ?

Reply posted 2 years ago (09/09/2019)
Hi.The generated files are heavily clipped versions of the real files. If you amplify the real file by factor 1000 and then clip saturate them at +-1.0, they will...
Spectral Subtraction produces artifacts over the entire frame length of your current STFT (short term fourier transform). To reduce these artifacts, start with overlapping...

Re: Average Impulse Response from multiple measurements

Reply posted 2 years ago (08/12/2019)
Hias some above have stated the linearity of the DFT tells us that averaging the measurement results in the time domain or in the frequency domain is equivalent....
You can always do direct conversion of the RF signal (sample RF signal at very high rate and do demodulation in digital domain) if you have the power and the money.A...
That sound like frequency shift keying to me - so google "FSK detector" or "FM demodulation" or "superhet" for hints.

Re: multi windowing and combining fft

Reply posted 2 years ago (07/31/2019)
I know I don't answer your question, but to me you seem to have a error in your assumption: You are talking about 'high' reflections - indicating they are relevant...

Re: Window Impulse Response

Reply posted 2 years ago (06/26/2019)
I think I would use the terms "smearing" or "smoothing" instead of "filtering" in the frequency domain - if you multiply the time domain signal with a window function,...

getting started on dereverberation

New thread started 2 years ago
Hi everyoneI am trying to dig into the topic of dereverberating an audio signal - e.g. a microphone signal picking up direct sound and room reflections of a speaker...

Re: 50Hz and harmonics filtering

Reply posted 3 years ago (02/07/2019)
You can try not to filter the hum from the signal, but to cancel it. To do so, you have to create an synthesized 50Hz-with-harmonics signal, like a clipped 50Hz...

Re:

Reply posted 3 years ago (01/29/2019)
Exactly what I was going to say :)

Re: Help on Noise Correlation Matrix

Reply posted 3 years ago (01/28/2019)
Two noise vectors OF INFINITE LENGTH are mutually uncorrelated - taking 100 samples of two uncorrelated noise processes will not produce uncorrelated vectors..More...

Re: raised-cosine filter paramiters.

Reply posted 3 years ago (01/07/2019)
I don't know about that specific Matlab function, but I woulod assume 'sps' to stand for samples-per-second and thus 228000...
Yes I am actively deciding on which bins to modify in real time. My question is general because I can think of several things I could use this for, but consider...
I have used QMFs for a low-latency audio compression I designed a few years ago - I haven't considered them for my current task for some reason. Thanks for the hint.In...
Hi everyone.For various tasks in my day-to-day job I run into the same problem. I would like to do the following:- Slice a one dimensional signal x into chunks of...
I think windows aligns itself to the audio interface clock... And no, you don't have to use a timer at all. Everytime you receive N samples from the radio, you count...
Who defines the rate at which samples are 'picked up' (the 192kHz) - is this defined by the audio interface? Who defines the input rate (the high rate)? Is it the...

Re: Automatic Frequency Correction AFC in DSP

Reply posted 3 years ago (10/15/2018)
I think googling these key words might get you going:Timing RecoveryEarly-late gateMueller and MullerGardner algorithmRegards (that's not a key word :)

Re: MCU signal processing PDM to PCM

Reply posted 3 years ago (10/04/2018)
some micro-controllers offer hard-wired instructions to count the number of bits in a variable. Sometimes these instructions can be accessed within c by using compiler...

Re: Resolution vs Sampling Speed

Reply posted 3 years ago (09/27/2018)
Yes, new samples are added to the tail.If you only want to monitor the signal (no changes made), this method will work just like that.If you want to alter the signal,...

Re: Resolution vs Sampling Speed

Reply posted 3 years ago (09/27/2018)
well, you could collect only 128 samples and fill the rest with zeros - your fft will have a resolution of less than 1Hz then, but also the spectrum of your signal...

Re: Resolution vs Sampling Speed

Reply posted 3 years ago (09/27/2018)
Your specification of the problem isn't exactly clear to me, but I'll give an answer to what I think you mean.Q1: Whatever you want to do with your signal afterwards...

Re: How to cancel REALLY heavy echo?

Reply posted 3 years ago (09/24/2018)
Sorry, my week-end got in the way :) Thanks again for the hints. I will look into the sub-band stuff...

Re: How to cancel REALLY heavy echo?

Reply posted 3 years ago (09/20/2018)
Thanks for the hints!HOW would you divide the spectrum into subbands? I tried MDCT, but the results were poorer than with the NLMS adpative filter. I also tried...

Re: How to cancel REALLY heavy echo?

Reply posted 3 years ago (09/20/2018)
Well, maybe it is more lean than nice :) Basically it is just an adaptive filter. Length is limited by processing power which isn't much, but in simulations the...

How to cancel REALLY heavy echo?

New thread started 3 years ago
HiI am designing the echo-cancelling/removal algorithm of a speakerphone device and am trying to get ideas on how to improve the performance.I know, physics are...

Re: THD estimation: FFT vs Periodogram

Reply posted 3 years ago (06/22/2018)
Quote:As I've explained above, there is only other frequencies, no noise at all. And, by sure, that frequencies are sampled according to nyquist rate, avoiding...

Re: THD estimation: FFT vs Periodogram

Reply posted 3 years ago (06/21/2018)
I do not use Matlab much so I may be wrong, but my first guess would be: Does Matlab mesaure THD+N instead of THD? That could make a huge difference depending on...

Re: Correlation of complex sinusoid

Reply posted 3 years ago (06/11/2018)
The absolute value of your correlation will always be 1, but the phase will change. Maybe your software just shows you the absolute value?
In a two-pole filter you can create conjugate complex pole-pairs - in a single-pole filter you can only create real poles - unless you have complex coefficients,...

Re: Track delays between two speech signals over time

Reply posted 4 years ago (02/27/2018)
Hithe echo-canceller adapts slowly over time. When fed with a broadband signal it will converge to the room impulse response with correct delays. If you feed the...

Re: Finding a CW signal in pulsed signal environment

Reply posted 4 years ago (02/19/2018)
Firstly, I assume CW is something with "continuous" in it? Abbreviations can obscure a problem, so it is usually helpful to give the complete notion once.If you...

Re: A Sinusoid with Missing Periods

Reply posted 4 years ago (02/19/2018)
right! OOK then :)

Re: A Sinusoid with Missing Periods

Reply posted 4 years ago (02/15/2018)
Another thing: Depending on what you mean by "reconstructing the sine wave" the solution might very well be simpler. if you just need to know the frequency of the...

Re: A Sinusoid with Missing Periods

Reply posted 4 years ago (02/15/2018)
Looks like a PSK (phase-shift-keying) modulated carrier to me - that leads me to support bholzmayer's suggestion to use a PLL to reconstruct the carrier...

Re: Impulse behavior of FIR LP filter

Reply posted 4 years ago (01/11/2018)
Not sure I'm helping, but if I get your numbers right, you have a cosine burst at 0.75 of your original Nyquist frequency (3/8 of your original sample rate - three...

Re: IIR filters

Reply posted 4 years ago (11/30/2017)
Generally speaking, you can say that IIR filters only need special attention if you want to design filters with high Q and/or f << Fs - then the precision...

Re: Upsampling of data

Reply posted 4 years ago (11/21/2017)
I read the answers to the posts and cannot resist to add this reply even though I think the methods below will solve your specific problem well enough.I am a little...

Estimate battery run-time in real-time

New thread started 4 years ago
Hi everybodyI have an interesting problem to solve. I am working on a product that runs on two AA-batteries - could be alkaline or NiMH (or Lithium or NiCd, but...

Re: DSBSC Demodulator

Reply posted 4 years ago (10/30/2017)
Sounds like a software optimization problem to me. Did you try to increase the optimization level of the compiler - does that minimize your 45msec some?
Most important aspects have been mentioned before, but I wanted to give another viewpoint on lossless compression: The redundancy that can be removed from a wave-file...

Re: GMSK Non Coherent demodulation

Reply posted 4 years ago (09/26/2017)
Firstly, you will run into trouble if you want good results with a channel spacing this narrow and a data rates that high. Your single channel carrier will significantly...

Re: GMSK Non Coherent demodulation

Reply posted 4 years ago (09/26/2017)
HiGMSK is a special case of GFSK and can thus be demodulated as any FM based modulation can be:A very simple implementation:Roughly filter your RF signal to exclude...

Re: Generating Random Numbers Through Audio

Reply posted 4 years ago (09/20/2017)
I think he wants to say that he might want to use the seed-creation-method above and then just directly use the seed as the random number instead of using it as...

Re: Generating Random Numbers Through Audio

Reply posted 4 years ago (09/20/2017)
"For example, let's say I was choosing a random number from 1 - 10 using my algorithm. Are you saying that the distribution of those random numbers would be more...

Re: Generating Random Numbers Through Audio

Reply posted 4 years ago (09/19/2017)
I wouldn't use audio as a source in the first place - why would I - I just said I wouldn't go through all of the hassle described above just to get a number that...

Re: Generating Random Numbers Through Audio

Reply posted 4 years ago (09/19/2017)
That seams to be an unreasonable effort to me - if I were to use audio as a source for random numbers, I'd take one audio sample (as in one sample: T = 1/44100),...
There is something similar in linear predictive coding (LPC or ADPCM). here you try to estimate the next sample by a linear combination of past samples. Sometimes...
AFAIK, it is used heavily in the open source 'Opus' codecs (ogg vorbis) that you can find at xiph.org and it's resources. They developed and use something they call...

Re: DSB-SC demodulation

Reply posted 4 years ago (07/12/2017)
a shift in the frequency domain is performed by - well - shifting - not multiplying by some complex value.A frequency shift in the time domain, however, is performed...
HiI find Mark's summary very useful - I've done quite some stuff in fixed point and found that the biggest danger is in getting confused by all the effects that...

Re: GFSK parameters

Reply posted 4 years ago (05/22/2017)
What makes these calculation hard is that in FSK and its derivatives, the modulating signal is in the argument of a cosine - hence it is a highly non-linear function....

Re: DSP Filter Verification in FPGA

Reply posted 4 years ago (05/08/2017)
Again - that's all clear - it is just a common mistake to think that since we multiplied two 16 bit values, we just take the upper 16 bit of the 32 bit result and...

Re: DSP Filter Verification in FPGA

Reply posted 4 years ago (05/08/2017)
yes, of course, that's what I'm saying. You must not truncate 16 bits but 15.

Re: DSP Filter Verification in FPGA

Reply posted 4 years ago (05/08/2017)
I didn't read everything below, but a frequent mistake immediately comes to mind: If you multiply two signed 16bit integers, the result is only 31 bits long, not...

Re: Cross talk in ADC channel due to noise on PCB

Reply posted 5 years ago (04/26/2017)
That depends if your "noise" is crosstalk (correlated) or noise. If it is crosstalk, you could try to remove it using a short adaptive filter:ChB' = ChB - AdaptFIl...

Re: Odd Convolution Results

Reply posted 5 years ago (04/05/2017)
Convolution is all about phase-cancellation. What the convolution actually does is take your original signal and create N copies of it (for an N sample impulse response)....

Re: PDM asynchronous sample rate conversion

Reply posted 5 years ago (03/22/2017)
Another trick might be to run a simple low-pass filter at high speed in the 3MHz domain - say a 1st order feed-back filter or a single biquad. This will of course...

Re: Signal power at the receiver

Reply posted 5 years ago (03/09/2017)
Q: Does the power at the receiver matter at the RF or the baseband stage?A: The receiver adds noise to the receive signal - so more signal power means more signal-to-noise-ratio...

Re: Data prediction in small embedded systems

Reply posted 5 years ago (03/08/2017)
As spetcavich said it all depends on what you want to predict. Prediction is only possible if you have some valid assumptions about the nature of the process you...
I agree with dgshaw6.If you have complete control over every dry signal that's handed over to person Y you might make Y's life harder by introducing a very sharp...
Sorry for the hasty formulas below, I was too lazy to make real formulas.Yes I agree to that. And could I retrieve the impulse response from a dry and a wet signal?...
I agree with the others that assumptions 2 and 3 are wrong. I just wanted to say that convolution is just another word for delaying and dropping the amplitude. The...

Re: Interactive digital filter design

Reply posted 5 years ago (01/31/2017)
Looks pretty cool, but is restricted to non-commercial use (as is the tool suggested by asn). Does anyone know of a really free (as in free for all uses) filter...

Re: Upsampled input to an Adaptive filter?

Reply posted 5 years ago (01/25/2017)
OK - so if I get you correctly, you want to do some sort of echo-cancelling - you transmit a signal and want to receive only the reflections, not the direct path.The...

Re: Upsampled input to an Adaptive filter?

Reply posted 5 years ago (01/23/2017)
I've implemented a few adaptive FIRs myself and what you observe doesn't strike me as too weird. I agree with Tim: By upsampling and interpolating you effectivly...

Re: Preemphasis Filter Design

Reply posted 5 years ago (01/18/2017)
OK - I think you might be confusing yourself by mixing up a few things that are all correct in some sense, but in different senses :)Firstly: Your filter does not...

Re: Preemphasis Filter Design

Reply posted 5 years ago (01/17/2017)
In your case it seems to me that absolute phase is not that important, so I'd say you have a few given fix-points of your filter transfer function given by gain...

Re: Preemphasis Filter Design

Reply posted 5 years ago (01/16/2017)
I don't quite understand what you are trying to do and what that result of yours is supposed to show... If you want to show the deviation of the shifted AM/AM curves...

Re: Preemphasis Filter Design

Reply posted 5 years ago (01/16/2017)
You can! But only if you are synthesizing the TX signal - in other words if you create those signals in matlab like you did above, you can of course change the synthesis...

Re: Preemphasis Filter Design

Reply posted 5 years ago (01/16/2017)
I may have gotten the problem wrong, but as I see it, this is not about pre-emphasis - which in the standard usage of the term would mean frequency and phase alteration...

Re: Some ideas I had

Reply posted 5 years ago (11/17/2016)
You may well be right - but the last little 'machine' I did this on came with a coprocessor which was extremely useful to me, but unfortunately only programmable...

Re: Some ideas I had

Reply posted 5 years ago (11/16/2016)
If you are into writing more efficient code for very special cases (which is something I really enjoy) - you will probably find this site very nice:http://bits.stephan-brumme.com/Regarding...

Re: Matlab Home-use version

Reply posted 5 years ago (11/08/2016)
I use Scilab (http://www.scilab.org/) extensively. I think the syntax is a tiny little bit different from Matlab, but it has been too long since I last used Matlab...

Re: Zero-Padding as scalloping loss attenuator

Reply posted 5 years ago (10/24/2016)
The equation you seek has been given before, but here's an additional thought on scalloping loss that I found scanning through the net:http://dspguru.com/sites/dspguru/files/Scalloping%...These...

Use this form to contact dudelsound

Before you can contact a member of the *Related Sites:

  • You must be logged in (register here)
  • You must confirm you email address