Linux/BruteFIR support coming in LspCAD

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
A small group of friends and I do our audio projects together, and one of my gang members is in touch with Ingemar on the LspCAD mailing list. He says Ingemar is curious about BruteFIR, and is considering how he can integrate BruteFIR support into LspCAD.

My friend wrote to Ingemar:
If you give me permission, I'll ask one of my friends to post to the diyaudio speaker forum saying that you're interested in studying the integration of BruteFIR and your product, and I'll ask BruteFIR experts to help. With their help, it is possible that you'll be able to get all the detailed inputs for you to build the integration module without doing almost any R&D about BruteFIR.

And this is what Ingemar apparently wrote back:
After some consideration, yes, please post a question and I'll try to get the BruteFIR functionality in a future release. I am already working an a few things for the next release but I don't have any release date yet.

Can I request all BruteFIR folks to please provide feedback to Ingemar? Any posts here to this thread will be great, because we can then all share our experiences, instead of doing direct email to his mailbox. Since none of us in our small gang of audio hackers knows anything about BruteFIR, we can't contribute. We are all Linux and Mac OS users, so we are all very keen to use BruteFIR, but we don't know anything about BruteFIR ourselves.

If Ingemar can actually generate BruteFIR config files automatically from LspCAD xo schematics, that would be really great. That may be the missing key that BruteFIR needs to hit the big-time. I've studied the official BruteFIR Website and I can't for the life of me figure out how to translate from a typical xo schematic to a set of BruteFIR config files. It ain't easy, at least to some of us. Ingemar can tip the scales here. Our dream is to have LspCAD and SoundEasy, and eventually SW, all generate config files for BruteFIR.

Please note, nowhere am I implying that Ingemar intends to provide "Linux support in LspCAD". He does not plan to port LspCAD to Linux. The only thing he's talking about is generating config files from LspCAD (on Windows) for BruteFIR which can then run on an Linux PC with a good soundcard.
 
A word about "Why LspCAD + BruteFIR?"

We all seem to agree (yes, we all agree sometimes :D ) that digital active xo is a Good Thing. Some of us want it just for prototyping, others want it for production.

We can buy very limited-flexibility boxes like the Behringer digital xo, or we can roll our own. (Behringer is limited because I have it on Reliable Authority that it can only do xo slopes in multiples of 6dB/oct, and only for some canned values of Q. Hence a properly optimised active xo with non-standard Q seems hard to do. And this is only the start....)

If we want to roll our own, we want to cut costs, get ease of setup, reduce our building overheads, and get top-class quality. One great way to do this is
  • Get yourself a computing platform on which the digital xo can run. This must be off-the-shelf, ready-to-use, with adequate software support for the digital xo. One answer: a PC motherboard, maybe like the Mini ITX ones, silent and fanless, with a Flashchip instead of a hard disk for system software.
  • Use an OS with wide software support, great stability and zero licence fees. One answer: one of the free Unixen
  • Blow all your pension savings on the world's greatest sound cards, provided that this card has good drivers in your free Unix. Two answers: RME Hammerfall and M-Audio cards on Linux
  • Use free digital xo software which has no licence fees, no restrictions on use, can beat the pants off most commercial digital xo products in terms of flexibility, performance and power, and allow even real-time on-the-fly changes to xo parameters. Perhaps the only answer: BruteFIR.
  • Get a full-fledged GUI-based program for the speaker design, and generate digital xo config files from it. Answer: integrate LspCAD/SoundEasy with BruteFIR.

So, all the other pieces of the puzzle were available, and now Ingemar seems interested in providing the last piece. Our happiness knows no bounds. Especially, we of the Unix/Linux brood, who use Eagle and Vutrax on Linux, and use SIMetrix for simulation (works luvvvly on Linux) find our cups of happiness spilleth over.

If BruteFIR+LspCAD (or SoundEasy) integration actually happens, then we will be able to create speakers with the infinite flexibility of digital active xo without being constrained by the flexibility, performance, and channel count of Behringer. For each speaker we build, we will need to build an xo box with a dedicated fanless PC motherboard, a sound card, and BruteFIR. We can then do our xo design using LspCAD, generate xo config files, download them to the XO-PC, and audition our new speaker without having to buy a Behringer each time. The full power of a PC will be available for our xo work.
 
catapult said:
I believe the lastest version of SoundEasy already supports FIR filters. I don't use it so I can't comment about how powerful or user-friendly it is.
Does it generate files for BruteFIR? If not, how do you actually build and use a speaker pair with a digital xo? The stuff built into SoundEasy is good for emulation, not for production, I'd think. You'll need some external, standalone digital xo for production use of your speakers --- either something in a box like the DCX2496 or something in software like BruteFIR.
 
To my undestanding "support" of brutefir in relation to LspCAD consist of two seperate issues;

1) Configuration of the PC´s sound output and Brutefir itself.
Since Brutefir only will run on LINUX and the configuration of Brutefir is dependent on the actual HW set up i dont think that this area is a candidate for tight integration. So build you LINUX-Box, get Brutefir to work with your specific piece of Soundcard HW and proceed to part two;
Some help related to this including sample configuration files at:
http://www.duffroomcorrection.com/index.php/Main_Page


2) Get the desired filter Impulse responses from LspCAD and into Brutefir. Without knowing LspCAD in detail - what should be done is: play a Dirac impulse and record the filtered output from LspCAD´s crossover simulation package. Use these Impulse responses as the filter coefficients in brutefir. Ajust the delay in brutefir correspondingly to the delay figures in LspCAD.

If anybody could sheed some light on how to record( on the digital side) the output of LspCAD or even save it directly to a file - that would be great

Thats all there is to it.

Best regards

Morten
 
LspCAD 6 BruteFIR support

Hi folks
first time I post here.
I have just uploaded a new build of LspCAD where the crossover emulator dumps the filter coefficients (read impulse resonse) used in Circular convolution mode into specific files located in the LspCAD 6 folder. The files are named
LspCAD_6_xo_emulator_1.txt
LspCAD_6_xo_emulator_2.txt
.
.
and the file format is ASCII with one coefficient per line. The number of coefficients is according to the setting in the crossover emulator.

What little I have read about the config for BruteFIR I believe that it should be possible to make references to these files in the BruteFIR config file. Know less about the DirectX plugin (convolver) but in this case I belive the ASCII format must be converted.
In order to make this more complete the G(s)G(z) prototyping filter blocks will be improved with the option to compute and use FIR filters. This and the already existing possibilty to invert the frequency response of loudspeakers makes it possible to eventually create BruteFIR impulse responses for phase linear loudspeaker systems.

This dump feature will not be available in the demo versions (sorry) reason is simply put that I want people to buy the software and it is not necessary to get the professional version for this. The loophole through this is of course run a dirac trough the crossover emulator and record the response, the quality of the impulse responses is however somewhat worse due to the 16bit quantization.

Best regards
Ingemar
 
tcpip said:

Does it generate files for BruteFIR? If not, how do you actually build and use a speaker pair with a digital xo? The stuff built into SoundEasy is good for emulation, not for production, I'd think. You'll need some external, standalone digital xo for production use of your speakers --- either something in a box like the DCX2496 or something in software like BruteFIR.

You just run SoundEasy and your multichannel sound card feeds the amps. Frankly, Windows isn't that expensive so you're really spending a lot of time (100s or 1000s of hours?) trying to save a couple of bucks. Personally, I value my time. If you don't care about linear-phase crossovers, either SoundEasy or LspCAD can use their optimizing functions to generate IIR filters for the DCX or other pro boxes.
 
catapult said:
You just run SoundEasy and your multichannel sound card feeds the amps. Frankly, Windows isn't that expensive so you're really spending a lot of time (100s or 1000s of hours?) trying to save a couple of bucks. Personally, I value my time.
I guess we have different definitions of "couple of bucks". A retail licence for Windows XP will set me back by USD 100 or so, and Soundeasy will cost another USD 225. I guess in some currencies, USD 325 is "a couple of bucks." Not in mine. :)

I can afford and justify one copy of Windows+Soundeasy for development and prototyping. But if I build many pairs of speakers for friends, I can't afford to load each of them with this extra USD 325, I think. In addition, I would find it easier to build an embedded PC with no fan and CF-card-booting software with Linux than with Windows. That's really another reason to look at a Linux-based solution.
 
Hi!

A very small contribution:
1) I was said that E-mu sound cards was the best sounding cards for the buck.
Lynx audio cards are said to be the best at any price.
Good Linux drivers available?

2)Lspcad runs under Window. It would be best to test and develop the filter under this OS like in the current emulator, and then, if the user want to switch, buy a new computer under Linux.

3) The easiest way for spreading FIR could be to rebuild the emulator of Lspcad, switch to higher resolution to match the evolution of the new sound cards so that it could be use has the main soft for user friendly FIR XO... the place remains to be taken...

4) It is possible to get a window 98 OS very light Http://www.litepc.com/

It is possible to get a Linux OS very light
http://drc.wildgooses.com/index.php...mory_stick#Mini-BruteFIR_with_USB-memorystick

5)PC turn key:
http://h18004.www1.hp.com/products/thinclients/index.html
http://www.mini-itx.com/store/product.asp?sid=HUSH
Maybe we could look for for a housing integrating a small LCD...

6) The price of this kind of config (with a dedicated noiseless PC plus a decent soundcard) is higher thant a simpler but very (very) effective DCX24/96, so I think people interested in FIR home grown XO belong to high-end folks (who will spend 1000usd for XO and 50usd for drivers? ) and it should be this way to make the venture worth the effort....
The target is to do better than a TACT but cheaper, chalenging IMHO.

@+
Maiky
 
Tcpip, you really need to decide what you want. If the goal is cheap, buy the Behringer. You won't be able to come close to the price with any home-brewed solution. The DCX2496 costs less than a good multichannel sound card, let alone all the other hardware and software you'll need.

(Behringer is limited because I have it on Reliable Authority that it can only do xo slopes in multiples of 6dB/oct, and only for some canned values of Q. Hence a properly optimised active xo with non-standard Q seems hard to do.

That is not true at all. By combining the stock crossovers with parametric band and shelving filters, you can shape the curve however you want it. Both SoundEasy and LspCAD can use the measured driver data and optimize the Behringer's filters to your desired acoustical response. It's very powerful and very easy once you get the hang of it, at least with LspCAD.

If you absolutely must have linear-phase filters, then you'll need to spend more money and BruteFIR is a candidate. Reading between the lines, that doesn't sound like it's terribly important to you.
 
Ingemar has done it - that was fast :)

LspCAD 6.20 (2005-10-11)
+ G(s) G(z) component, Digital phase lineal FIR filter component added, possible to simulate and
export filter coefficients for FIR filters with filter orders 129..4097 with various window options.

Ergo
 
catapult said:
If you absolutely must have linear-phase filters, then you'll need to spend more money and BruteFIR is a candidate. Reading between the lines, that doesn't sound like it's terribly important to you.
You're right... it's not for the FIR that I wanted to look into BruteFIR. And in general, your post makes sense, thanks. :)

Maybe you're right... maybe for most of my kind of experimentation, a DCX is better than BruteFIR, till I decide to outgrow it. I may take quite a long time to outgrow three channels of output per side, or the "limitations" of doing IIR, or the "limitations" of doing non-standard Q using the standard building blocks plus the parametric eq. In fact, I hadn't realised that LspCAD/Soundeasy actually can totally neutralise the limitations of the standard slopes and Q by using the parametric eq.

Thanks for your inputs. I think I see the picture more clearly now.
 
ergo said:
Ingemar has done it - that was fast :)
LspCAD 6.20 (2005-10-11)
Yes, I saw it too. Apparently his announcement on his mailing list includes
  • Digital phase linear FIR filter component, up to 4097 filter taps using various windowing options.
  • Crossover emulator exports impulse response that can be used by external convolver such as BruteFIR.
I'm not sure how much work/tools are needed to get BruteFIR up and running with these impulse responses, but it seems Ingemar has done enough to get BruteFIR off the ground. Great news.
 
BruteFIR using analog sources

I'm currently building a one box Jukebox with DRC, Active Filters and integrated Class-T amps from 41hz (3 * AMP6). The soundcard I use is M-Audios 1010LT.

You can read more more about this little project here:
http://www.diyaudio.com/forums/showthread.php?s=&threadid=63526&highlight=

Another very interesting thread ShinOBIWAN Windows Jukebox,
it's interesting but very expesive I think it has all the features I'm after. However an awful amout of software needs to be installed:
http://www.diyaudio.com/forums/showthread.php?s=&threadid=63078&highlight=

I am interested in a PC that supports filtering while using an analog source as input (I.e. Vinyl). The MediaPlayer Convolver definitely wont support this.
Will BruteFIR provide support for this?

Also, I grew up in a small town in Northern Sweden called Luleå.
Note that both Anders Torger the creator of BruteFIR
(http://www.ludd.luth.se/~torger/)

and LspCADs creator Ingermar Johansson
(http://www.ijdata.com/)

both come from Luleå!
(Well, that's enough patriotism for today.)
 
Hi Ninfendo,

To set up a PC to proccess analog inputs you need to install Jack ( http://jackit.sourceforge.net/ ), an audio server for linux, and then configure BruteFir to take as inputs the jack outputs.

Inside jack you can wire whatever inputs and outputs your soundcard and jack-aware programs have to route your audio.

A good interface to jack is qjackctl ( http://qjackctl.sourceforge.net/ ), to setup the routing graphically.

You can wire both the analog inputs of your card and your favorite player (alsaplayer in my case) to the brutefir inputs. See the brutefir manual to see how to interface with jack.

Having jack working can be a little tricky since you need a kernel with realtime capabilities. Just ask if you follow this route.

I think that this could also be done in windows if the soundcard has ASIO drivers, and using an ASIO framework for the wiring, but I'm only guessing. ¿Does anybody knows of a free or cheap ASIO framework to give it a try?

Regards,

Roberto
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.