ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Hello,
where can I find more docs about developing a small spectrum analyzer
and / or an equalizer? I did not speak about source code (I am reading
xmms's), but a good tutorial/paper/book.
Thanks,
tano
Yes, I am reading about fft and in particular I am searching for an understable description
of the sorenson algorithm for real data. But I would like to know thing in a more organic
way.
I don't know what you mean by more organic. The FFT will translate from a function in one domain to a function in another domain - in this case you have a sample with a constant difference in time and the FFT converts to a series with a constant difference in frequency, which is your 'spectrum'. The result of the FFT will also be a complex function so you may want to display the magnitude in your spectrum display (unless you really are interested in seeing the phase information). Do you want to attempt a real-time display or are you happy to play with small samples at a time? Even an ancient 160MHz machine can do the computations fast enough - but if you want to display things real-time then the spectrum analyzer is probably best implemented as a "multi-tap" filter rather than an FFT. Equalizers are best implemented as a digital filter as well rather than two sets of FFTs to implement a filter - in fact, that's how all modern DSP-based equalizers do their job.
Ok, for 'organic way' I intend all the informations correlated to this subject.
What I did is look inside xmms sources and know that it use fft (I read a little on
fft in dspguide, but only as a lecture). The spectrum analyzer is built from magnitude,
even if inside the code the output is not square rooted.
But I did not know if all the samples are sent to the fft function (I have some doubts because the refresh of the spectrum analyzer is configurable, as peak falloff, and more.., so I would like to found a more specific paper about this).
I look also about the equalizer and know that it use "direct form II filter".
I am absolutely new to these kind of things, so what I have to do is *study*.
What you intend for real-time or small samples? The application should display the spectrum in real time
on the screen, yes, but I am not sure this is what you ask me..
However thanks for the ideas, I am searching about multi-tap filters and more..
tano
Ok, for 'organic way' I intend all the informations correlated to this subject.
What I did is look inside xmms sources and know that it use fft (I read a little on
fft in dspguide, but only as a lecture). The spectrum analyzer is built from magnitude,
even if inside the code the output is not square rooted.
But I did not know if all the samples are sent to the fft function (I have some doubts because the refresh of the spectrum analyzer is configurable, as peak falloff, and more.., so I would like to found a more specific paper about this).
I look also about the equalizer and know that it use "direct form II filter".
I am absolutely new to these kind of things, so what I have to do is *study*.
What you intend for real-time or small samples? The application should display the spectrum in real time
on the screen, yes, but I am not sure this is what you ask me..
However thanks for the ideas, I am searching about multi-tap filters and more..
tano
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.