• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required as is 20 years of participation in forums (not all true). Come here to have fun, be ready to be teased and not take online life too seriously. We now measure and review equipment for free! Click here for details.

SBC powerfull enough for FIR crossover/EQ?

Arnandsway

Senior Member
Joined
Sep 13, 2018
Messages
356
Likes
255
#1
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?
 

Fred Jacquot

Senior Member
Forum Donor
Joined
Jun 19, 2019
Messages
313
Likes
335
Location
Europe
#2
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

Addicted to Fun and Learning
Joined
Dec 5, 2018
Messages
598
Likes
381
#3
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.
 

Arnandsway

Senior Member
Joined
Sep 13, 2018
Messages
356
Likes
255
#4
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

Addicted to Fun and Learning
Joined
Mar 4, 2018
Messages
588
Likes
555
#5
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