BRP-PACU - An Audio Configuration utility
To compile BRP-PACU on Linux, this must be installed:
* JACK. Any recent version will work, just take what the distribution provides, the package is probably named "jackd".
– Tip: If jack is not already installed on your system, try to install the package "qjackctl" which depends on JACK.
* The development files that matches the installed version of JACK.
– Finding the right development package: Search for packages with libjack in their names. Notice the name of the installed libjack*, and find the most similar named package which name is ending in "-dev", and install that one.
* GTK databox, library and header files, in version 0.9.1-1 (that will work) or preferable newer.
– In Ubuntu 10.10 you can install the package libgtkdatabox-0.9.1-1-dev , but:
– It is recommended to use a newer version, because there are a few UI tweaks in the latest gtkdatabox. Get it from the source code released on https://sourceforge.net/projects/gtkdatabox
* FFTW version 2.1.5, the package is probably named “fftw-dev”, or download it from http://www.fftw.org/download.html (note: v. 3 is not supported)
* the GTK+ and Glade stuff (including its dependencies such as Glib and Pango), with these packages (and their dependencies)
GTK+ stable release from http://gtk.org
* The building tools in these packages:
If the source code comes directly from the GIT repository, instead of a release in a tar ball, you must run “aclocal && autoconf && automake” before running “./configure”.
Details about the actual compilation procedure (run ./configure, then make, then sudo make install) are found in the file “INSTALL”
A tip for JACK and PulseAudio co-existense (not unique to BRP-PACU)
A way to automate the switching betweenf which software that can get direct (and thus exclusive) access to the audio hardware ins and outs.
In ubuntu (at least) the file /etc/pulse/client.conf needs to have the line:
autospawn = no
and put “pulseaudio -k” in the jackd start script and “pulseaudio --start” in the jackd stop script (can be done from qjackctl under setup->options-> execute script at startup).
Otherwise pulseaudio will grab ownership instantly on any sound card you try and you will never get jackd to start.
When BRP-PACU is installed, the executable is named “BRP_PACU”. It can be started from the Run dialog (that comes up when pressing ALt-F2), or from a command line which will give extra debugging information.
Some other info is placed on Wikipedia: en.wikipedia.org/wiki/BRP-PACU
A binary pakcage for Debian can be found at http://packages.debian.org/sid/brp-pacu .
Never before asked questions
What is BRP-PACU?
- It is an analysis tool to configure any sound system with an equalizer. It compares the
output of the system to the input of the system and allows you to use this data to
perform final equalization by matching the results with actual DSP/EQ.
How do you do this?
- There are many tutorials on doing this, but it takes practice, experience, and a good
ear. You could try: http://www.sounddevices.com/notes/usbpre/usbpre-with-sia-smaart-software/
its a brief introduction to the concept, although the USBPre is not supported by linux as of writing this,
so you couldn't use it with this software. Try the M-Audio usb preamp, its what I use. You
also need a decent omnidirectional calibrated mic (reasonably flat 20Hz-20kHz).
Isn't this software basically like what XYZ company sells for $1100?
Why are you giving it away for free?
- There currently is no Linux port for any of these programs and I needed one. Also I believe
anyone who knows how to perform the transfer function properly on an audio system should be
able to without selling your soul with some ridiculous EULA and forking over $1100. The
barrier to entry in any market should be knowledge and skill, not overpriced tools. There are many
markets already headed in this direction.
What if I try it and it doesn't work?
- Email me and I can probably figure it out. My email is email@example.com. Also try the mailing list,
it should be working.
Why is there no documentation?
- Channel 1 is the output of the system we are observing (measured), channel 2 is the input (reference).
You also need a decent calibrated omnidrectional microphone (reasonably flat 20Hz-20kHz) and either a
USB-Preamp like the 2-channel M-Audio, or a mixer with a 30dB pad or so going into the laptop mic input. No Pad is
neccessary if you are lucky enough to have a laptop or PC with a line input. The headphone out will have the pink noise.
How do you handle a delay between measured and referenced signals?
- There is an automatic delay finding button. You can also insert a custom delay if you want.
Is there a way to find the impulse response?
- It is in the menu under action