V
V
Vladimir Bershov2014-12-19 21:06:21
linux
Vladimir Bershov, 2014-12-19 21:06:21

How to do realtime sound processing?

Task: to make a sound processing device in real time (that is, with a minimum, imperceptible delay).
The processing itself is quite simple - applying an equalizer at certain points in time.
I tried to do it on a computer - in Windows the delay is very large (well, roughly speaking ~ 0.4 sec). On Linux (Ubuntu 14.04), after removing pulseaudio, the delay is much less, but still unacceptably large (~0.1-0.2 sec). I did it in operating systems. I wanted to eventually use a single-board computer as a device.
Question: does it make sense to deal with
1. realtime version of Linux
or
2. installing and configuring the JACK driver on Linux?
Or is it worth dealing with some kind of controller + ADC-DAC (or + sound card)?
Note: a device for developing the hearing of musicians, i.e. more or less normal sound. And the processing algorithm is still not exactly known, but it is known that it is computationally simple.

Answer the question

In order to leave comments, you need to log in

3 answer(s)
V
Vladimir Bershov, 2015-01-08
@Mezmay

There is a solution: you can work with sound in real time in conventional operating systems . As it turned out, a special kernel is not required for realtime work with sound . The cross-platform tool Jack (Jack audio connection kit)
is enough jackaudio.org/faq/realtime_vs_realtime_kernel.html
In Linux, for example, it is enough to enable realtime priority for Jack: jackaudio.org/faq/linux_rt_config.html
and use the minimum buffer size that will work . My sound works on a buffer length of 64, and I use it.

A
Armenian Radio, 2014-12-19
@gbg

In fact, there are special processors - equalizers in the form of a separate microcircuit. Tell us more about the task - frequency range, equalization depth, number of bands. And it turns out that you - in a music store for a pedal.

D
Don Kaban, 2014-12-19
@donkaban

www.juce.com - this is if "where to find more powerful batteries, like a boost" :)
And with latency - well, if you have AC97 - then 100ms is your limit. Jack, of course.
PS Calling FTT a "computationally simple" algorithm is, uh... well, new.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question