![]() |
Brutefir is a nice and unique convolution engine for running FIR-Filters. It is trimmed to maximum performance in all aspects. If used in a pipe of processes Brutefir should be the last one. The tool has been developped by Anders Torger. Unfortunatly Brutefir is not maintained any longer. However it ist still working. It could IMO need some improvements, such as improved dithering. You can download the tool over here: https://www.ludd.luth.se/~torger/brutefir.html ON DRC - Duffroomcorrection https://www.duffroomcorrection.com/wiki/Main_Page you'll find a lot of interesting information. When it comes to filter creation Uli Brueggemanns Acourate https://www.acourate.com/ is IMO the best tool to get what you need. I'havn't seen better ones. Please read his WhitePapers? about phase linear filters. Of course if you have a good scientific background you can build filters by yourself. You don't have to spent that much money. 1. ---- Installing it is quite easy: 2. ---- Brutefir and MPD 1. First you need to setup a fifo. That's where brutefir and MPD meet each other. I'd put it on a RAM directory. /tmp is RAM on my machine mkfifo /tmp/mpd.fifo 2. change your brutefir-mpd.conf file output to your fifo input "ileft", "iright" { device: "file" {path: "/tmp/mpd.fifo"; }; # module and parameters to get audio sample: "S16_LE"; # sample format channels: 2/0,1; # number of open channels / which to use delay: 0,0; # delay in samples for each channel maxdelay: -1; # max delay for variable delays mute: false,false; # mute active on startup for each channel }; 3. Now you configure the mpd fifo interface in /etc/mpd.conf ############################### audio_output { type "fifo" name "FIFO-Analog-44.1-hw" format "44100:16:2" # optional path "/tmp/mpd.fifo" # optional } ############################### 4. Restart mpd, select fifo output in minion and select playlist 5. Start playback here !!! mpc play 6. Start brutefir as daemon sudo chrt -f -p 80 ./brutefir -daemon -nodefault <you-dir>/brutefir-mpd.conf Note: maybe you have to start brutefir as root Until here it works so far - a bit odd - but it works. The problem if you start and stop mpd playback, mpd flushes the fifo which makes brutefir die, because it sees a bad file descriptor. This needs to be solved on either of the ends. Either brutefir becomes immune against bad file- descriptors on the fifo or MPD stops flushing the fifo on start and stop. Once the playlist is playing in mpd next/prev/pause within mpd will work. |