• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

SBC powerfull enough for FIR crossover/EQ?

Biblob

Addicted to Fun and Learning
Joined
Sep 13, 2018
Messages
633
Likes
600
Hi all,

For my DIY 2.2 speaker build I want to do everything in the digital domain. I want to use linear-phase FIR filters for the crossovers, delay, EQ etc.
I want to use Linux for this project. I don't know yet how to do the routing, but I will probably use BruteFIR in combination with a Asus Xonar U7.
The XO's (subs, midwoofers and tweeters) will be very steep, with lots of taps (don't have the exact number now).

I often read people using complete HTPC's with i5's etc.

But how much horsepower is needed for this task? To be able to fluently stream music while also executing the DSP?
Is a Raspberry Pi 4 sufficient? Or is a more powerfull Khadas VIM3 or Hardkernel Odroid-N2 better suited? Or better still, to invest more in a x86 processor?
 

boXem

Major Contributor
Audio Company
Joined
Jun 19, 2019
Messages
2,014
Likes
4,852
Location
Europe
I heard, but did not check myself, that BruteFIR is quite resource intensive.
I will not discuss your choice to FIR instead of IIR, the second being much lighter.
For the ARM SBCs you also have the ASUS Tinker Board which is quite powerful.
The x86 SBCs prices are crazy, better taking a NUC.
 

somebodyelse

Major Contributor
Joined
Dec 5, 2018
Messages
3,682
Likes
2,962
I'd expect a Pi 4 to be sufficient, but it'll depend on the number of taps, sample rate and partitioning, plus whatever else you want to do on the system. A Pi 3 was fine with 32/96 stereo and 64k taps even when BruteFIR was pinned to a single cpu core, streaming using squeezelite.
 
OP
Biblob

Biblob

Addicted to Fun and Learning
Joined
Sep 13, 2018
Messages
633
Likes
600
Well, the thing is, multiple FIR filters will be used, because I will have multiple crossovers etc.
For this I doubt a Pi 4 would be sufficient.
 

dc655321

Major Contributor
Joined
Mar 4, 2018
Messages
1,597
Likes
2,235
Well, the thing is, multiple FIR filters will be used, because I will have multiple crossovers etc.
For this I doubt a Pi 4 would be sufficient.

How many channels do you intend to process and how many filter taps?
You may be surprised at the computing power available versus the computing power required.

I have constructed a convolution engine for my own interests. Similarly to BruteFIR, my engine uses a partitioned overlap-save algorithm.
Even my minimally optimized system does not present much of a problem.

The benchmarks below are running single-core on the i5 cpu of my Dell XPS13, and represent the latency from input de-interleaving, convolution, and dithering back to an interleaved 16-bit format for output to a DAC. The number of partitions used is filter-taps/block-size for 2, 4, 6, and 8 channels of output, given a stereo input signal.

cvngn_benchmarks_16bit_dithered.png
 
Top Bottom