Volumio 2 and brutefir

Hi, thank you for your fast response.

Now I get only a disorted sound with reverbs. :neutral_face: I am wondering because Acourate calculates the filter curve from 0db to -, that means, when I play music with another software like Jriver or Foobar the signal with filter has less volume than without a filter.

Oct 07 09:41:44 volumio volumio[4971]: peak: 0/626027/+17.03 1/428171/+14.08 Oct 07 09:41:45 volumio volumio[4971]: peak: 0/649049/+18.02 1/445678/+14.08 Oct 07 09:41:46 volumio volumio[4971]: peak: 0/668853/+18.02 1/460017/+14.08 Oct 07 09:41:47 volumio volumio[4971]: peak: 0/692489/+18.02 1/474617/+14.08 Oct 07 09:41:48 volumio volumio[4971]: peak: 0/712441/+18.02 1/486557/+14.08 Oct 07 09:41:49 volumio volumio[4971]: peak: 0/731493/+18.02 1/497820/+14.08

Thanks Thomas

Hi there,

I solved a part of my problems. I import the Acourate filters into REW, and exported them as WAV file. Now I get a sound but it has a echo. I Hope my configuration is ok. What can i test next? I am at my wit’s end but I d like to use brutefir so much.

I Hope anyone can help.

Unbenannt.PNG
Unbenannt2.PNG

Maybe the filter length is different from the one sets in the plugin : 65536 ? check it please

Hi,
first of all I want to thank you for bringing a simple way to install brutefir to volumio. Installation as plugin works like a charm, basic brutefir settings are configurable per advanced tab, it could’nt be easier for this complex mater. Unfortunately something goes wrong on my installation. After a quick configuration in the advanced tab and pressing the save button, brutefir does not start, and an pop-up claimed to check the brutefir config. So I did this and must find a .brutefir_config in the directory /home/volumio of zero size!!! Is this still the right location of the file? I copyed the .brutefir_defaults to .brutefir_config. But after that, the taken setting in advanced tab are not taken over to the .brutefir_config. Whats going on here? I expected a .brutefir_config in /home/volumio that can be configured by the advanced tab of the plugin. But it’s not. Can you give me some advice? What am I doing wrong?

My Configuration:
Volumio 2.4.57 on Rasperry Pi 3B
Brutefir Plugin 0.4.9 downloaded on github a few days ago
WADIA di-122 DAC via USB

As is can see, the length is the same. Do you think that the other data like ā€œTime axis startā€ does lead in to the echo?

Messung.jpg

@skroiss

I Don“t have the .brutefir_config in the volumio direction. Take a look at /data/configuration/audio_interface/brutefir there should be your config file of brutefir.

Do you have installed the plugin with the manual here https://github.com/balbuze/volumio-plugins/tree/master/plugins/audio_interface/brutefir2 ? My plugin worked from out of the box with the pre configurated filter files.

Best regards Thomas

Hello,

I’m using Volumio2 on RPI 3B+ with Mixer type set to ā€œHardwareā€ so I can control volume via UPnP control point and everything works fine.

Is it possible to use BruteFIR with Mixer type set to ā€œHardwareā€? I’m asking this because when I installed brutefir2 as described here (https://github.com/balbuze/volumio-plugins/tree/master/plugins/audio_interface/brutefir2) the ā€œHardwareā€ option seems to be missing.

Br
Kova

P.S. I installed the plugin as described on that link but I’m also getting the message ā€œBrutefir faied to start. Check your config.ā€

If you have configured a hardware mixer before enabling the plugin, then it is still used when the plugin is enabled even if it is not displayed in playback config. But please don’t change anything once the plugin is enabled (i2s DAC, output, mixer type), do it before using the plugin.

Ok, good to hear - thank you for the reply!

So, what do I do now to make it work?

Currect situation is like this: I have Volumio2 working and brutefir is installed and ā€œOffā€. When I try to set it to ā€œOnā€ I got a biref message ā€œAttempting to start Brutefirā€ and after that ā€œBrutefir failed to start. Check your configā€. After that there was a message ā€œPlayer has been restartedā€ and button is set to ā€œOnā€. I get no sound when I’m trying to play anything. Also, the volume is set to 100, not to 10 as it used to be.

Can you please assist? I can provide whatever screenshots and config files you need to help me. Thank you in advance! :slight_smile:

Some more info:

I didn’t change anything in playback options after installing and activating Brutefir.

I followed these steps and they went fine without any errors:
wget github.com/balbuze/volumio-plug … utefir.zip
mkdir ./brutefir
miniunzip brutefir.zip -d ./brutefir
cd ./brutefir
volumio plugin install

When I activate plugin I’m getting error and no sound. The same happens if I reset Volumio.

If I then go to plugins and set brutefir plugin to ā€œOffā€ then output device is reset to my DAC, volume is reset to value of 10 (it’s the preset value that I configured in Volume Options together with Mixer Type set to ā€œHardwareā€) and everything works fine again.

@ Gowattn
thanks for your help. Got brutefir to start now. But I end up with distorted sound and an echo, even with the default filters and the default filtersize described in the readme.txt of \brutefirfilters dir.
I got brutefir to run flawlessly with mpd on a plane debian x86 machine. I know such distorted sound from wrongly set filtersize or data format, but now on the volumio plugin it looks all right…Did you got it fixed for you in the meantime?

@ balbuze
I didnt understand why the brutefir plugin has a equalizer. It makes the config file just complicated and needs cpu power and helps not much, because it is possible to design and import any filter you want with a impulse response file. Dont get me wrong, I like the EQ plugin volumio provides, but in this case it is a sort of mix up different goals. I would appreciate it, if this brutefir plugin is more focused on computing filter files. I tried to remove the equalizer filter, but on every start of the plugin the config file is rewritten…

Best regards
Sebastian

Hello,

Brutefir works well and simple to install with new volumio versions, thanks for that. To find the good setup for filter creation e.g. with rePhase took some time but volumio forums contained all the information for proper setup.

Only thing what I’m thinking about, how to use different filters for different sample rates automatically ? Somewhere I found the possibility to rename filters on a specific way like DRC_44100_24, DRC_192000_24 and the player can switch between them but that was not the volumio. How can I set it up in volumio ?

Resampling to one sampling rate does not sound good since (at lest to my ears) a 44.1KHz file loose it’s original rhythmicity during resampling to 192KHz. I mean it seems DAC can fit its internal filters much better to the original than to the resampled version. If I use a 4x44.1 = 176.4KHz resampling that is not okay for 192KHz files as well. This is why I’m looking for a way to use 4-5 brutefir filters for the different sampling rates.

Thank you for all your ideas for the proper setup. Maybe I’m just too beginner in volumio and the solution is simple.

hello
thank you for your feedback!
Do you use brutefir3 ? https://github.com/balbuze/volumio-plugins/tree/master/plugins/audio_interface/brutefir3
what is your hardware?
It is not on my roadmap to supports several samplerate…
When you use brutefir, the signal goes trough its convolution engine, and is no more ā€œbit perfectā€, because modifing the signal is the target of brutefir.
It 's because only one sample rate is provided : why not resampling all signals, and using only one filter?
Now if you need other sample rate than those provided, I could add it if brutefir supports it (176.4kHz).
Let me know :wink:

edit : it works with 176.4kHz, so I can add it as selectable value.

At first, thank you for all your work, brutefir helps lot to eliminate room effect on music. Adding 176.4kHz to the list is a good idea. I used previous brutefir, the new brutefir3 is much more simple to set up.

My system; DigiOne Signature streamer - Chord Qutest DAC - Vincent tube amp - Audio Physic speakers + absorbers/diffusors on walls

I ask you about possiblity to use one filter for 44.1KHz, 88.2KHz, 176.4KHz sample rates and an another one for 96KHz, 192KHz files because of during the listening sessions I found resampling 44.1KHz files to 96KHz or to 192KHz is not a good idea (and sending that one sampling rate to brutefir) is not the best in sound quality, I mean timing, dynamics of the music reduced. At least two filters are necessary I think, one for 44.1KHz files and one for 192KHz (or 96KHz) files.

For example at Adele - Hello, with original 44.1KHz sampling rate it is full of with emotions on my system, Chord DAC does it’s job very well. If I use 192KHz volumio upsampling over the original 44.1KHz file, the DAC cannot receive original accurate timing (192 is not multiplied value of 44.1) and the ā€œ- Hello, It’s meā€¦ā€ loose the emotions, vibrant timing. Not because of brutefir, but because of volumio resampling. I believe volumio software based upsampling not useful at new DACs because of their better hardware based internal computing capability.

All in all brutefir improved lot on my system. There are not too much native 192KHz files actually, so one 44.1KHz filter (I will try 176.4KHz) what I started to use for everything after your answer.

Obsolete message, no real information inside, sorry that, I deleted the content

Hi Balbuze,

Sorry for my new message, but as I wrote you I updated volumio to latest and brutefir to v3 previously and I see now what was the problem when I had no sound, first the setup;

DigionePlayer - Qutest DAC

volumio settings:
resampling to 24 bit (necessary because of equaliser attenuation ā€œstealā€ 2-3 bits from 16 bit), but same result if no resampling
no sample rate resampling

Brutefir settings:
sample rate 44.1KHz
Filter size: 262144 same as in RePhase software the FFT length of the filter

So the probelm was Brutefir v3 does not give audio output with 32/64 bits float lines filter + S24LE or S32_LE output format. Only S16LE works. The DigiOne Player knows 24bit since it was ok in brutefir V2

When I modified volumio playback options because of no music I just switched off brutefir (it was in active status but no affect on music) this is why I had music till the next rebbot.

I tried 24 bits LPCM mono WAV filters and brutefir v3 seems not work with them at all. It was okay in brutefir v2 as well. Maybe it is because of some background settings but in v3 less settings are shown on GUI ( which can be good :slight_smile: if everything works fine ). Can it be in connection with taps size ? It is a parameter in RePhase but I cannot set up number of partitions on new brutefir GUI.

Now I’m downgrading to brutefir v2 to check above again with extended GUI settings.

Hello Balbuze,

Sorry for my previous emails, I found why was no sound on the DigiOne Player at 24 bit output. It uses the S24_4LE format, could you add it to brutefir output format values, please ?

I found a second thing during config file reviews, the number of partitions was set to constant 8 in config files but it is not described, not visible and cannot change on v3 GUI. Finally I rewrite it in config files to 4, instead of regenerating my filters. This parameter exists in the config.json but not on GUI.

Third thing about usage of 24bit resolution. I try to use 24 bit output resolution since attenuation about -10dB in Eq, it means more than 3 bits losses from 16 in case of 16bit CD quality files. I believe it is audible, the stage background become dark and fine details missing from music. I would like to avoid it with usage of 24 bit output resolution. In volumio-brutefir-config I added the S24_4LE to the output->sample, the filter is a floating 32/64bit txt, is it enough to use 24 bit on output ? Input is S16LE, if I change it, it was written back by brutefir at restart to original value.

Have you ever tried 24 bit input ? Is it any way to let input on S24LE ? If I made config file readonly :slight_smile: with S24LE input format, brutefir cannot start.

Thank you for all your help. I reread all the forum pages and I see how big work what you did in last two years.

hello Dudu!
thanks you for your feedback!
So do you use brutefir2 or 3?
S24_LE is already a output format. What do you mean by adding it?
Yes, in order to simplify the UI, I set some option by default ( number of part, filter format). Maybe it is not a good idea…
If you want to test other settings than thus provided, change it in brutefir.conf.tmpl , it will be permanent.
For the 24 bits, no idea if enough.

Hello,

I decided to use brutefir v3 because of floating filters. Not S24_LE, but: S24_4LE ! :slight_smile: I found it in brutefir core documentation. It differs from S24_LE in highest 4 bit placement, with S24_4LE there is sound from DigiOne Player (S16_LE works as well).

I will report you if I can set up working 24bit input.

update: None of 24bit input formats (listed in brutefir core documentation) work with volumio/mpd, but S16_LE and S32_LE work. S32_LE okay with 16 or 24 bit resolution inputs as well. That might be a good function to let users to choose from S16_LE and S32_LE input values at least.

Simplify the GUI: I agree with you, few people want to see thousands of settings. To write into the documentation the default partition number could be enough.

Hi !
I would like to share with you my personal experience of DRC (digital room correction) using Volumio and the plugin Ā« brutefir Ā».
When you want to improve the sound of your system, there is several ways: (non exhaustive list, not in order, not personal…)
New dac
New power supply
New amp
New loudspeakers
New cable
High res files
Of course, all these element may improve the sound. Sometimes with an important cost, for a little difference…
Often, one very important element is neglected : the room.
We all experienced the difference of sound in a large room (church) or in a very small room.
Between these two extreme, there is a large variety of room… Your room, where you listen your favorite musics.
Sometimes, improvements can be done by moving furniture, reducing reflection with appropriate material on the wall, floor, ceiling.
And an other way(complementary with previous) is to use digital room correction, DRC. What is DRC? Basically it is to measure with a good microphone how the system behaves and modifing the signal sent to DAC to compensate imperfection. For more details : en.wikipedia.org/wiki/Digital_room_correction
This can be done with some hardware DSP or via a software.
One of these software is called ā€œbrutefirā€ ludd.ltu.se/~torger/brutefir.html
It’s a open source software convolution engine using advanced math (Fast Fourier Transform ).
Not so simple? Let’s see that.

But first of all, you need a measurment microphone. A first price is about 30€. An USB model with a calibration file is about 100€. Even if it is not given, it is worth buying a such mic, still less expensive than an other ā€œhifiā€ hardware and with a real use to make a good DRC.

In order to make it easy to install and use ā€œbrutefirā€, a plugin is now available for Volumio : ā€œbrutefir3ā€.
A wiki, still under construction, is already here : volumio.github.io/docs/Plugins_ … lumio.html
I let you test and read.

But I’d like to show you the result on my system, comparing the response curve ā€œbeforeā€ and ā€œafterā€ correction.
I made a lot of measure using a software REW and correction were made with Rephase.
I want to thanks a lot Krunoslav, a Volumio and brutefir user who gave me precious advice for the plugin writing and the way of doing good filters.

The system is:
Streamer/dac: Volumio Allo Boss
Amp: Rega Brio
Speakers: Qacoutics 3050i

On the picture, the two bottom curves are channel left and right before correction
The two top curves are after correction. As you can see, everything fits in a range of less than 5dB.(I add an offset to the corrected curves to make it easiest to read.
And the listen is just fantastic! It was the main target.

I hope to publish soon an ā€œofficialā€ version.
Thanks for reading :wink:
qa3050i-equalized-2019-01-17.png

Let me clarify few things here mentioned in previous posts:

  • upsampling 44.1kHz content to 96kHz (or to any other higher sampling rate) doesn’t in ANY way change the quality of the recording. For that reason you simply cannot hear the difference between original 44.1kHz recording and the upsampled version.

  • number of partitions is internal parameter of Brutefir convolution engine and it has nothing to do with the filter creation process. Number of partitions is related to a parallel processing within convolution engine to reduce delay and there is no reason to change the default value.

  • only relevant values for filter creation are number of taps and sampling rate. Suggested sampling rate of 96kHz was choosed to retain quality of a few 96kHz recordings that exist on the market. Most recordings that have higher sampling rate than 96kHz are probably not recorded in that sampling rate but are upsampled versions of the 96kHz recordings. While you can choose higher sampling rate than 96kHz you will see no gain in sound quality so you are advised to go with 96kHz or lower.

  • optimal number of taps, which relates to ā€œFilter sizeā€ parameter in BruteFIR settings, is 65536 for 96kHz sampling rate. If you choose lower sampling rate you are advised to lower the filter size (number of taps) as well.

  • BruteFIR attenuates signal by 6dB internally. Any additional attenuation is added via BruteFIR settings. In the tool you will be using to create your filters, and here I would advise you use rePhase as it is free and works perfectly well, you will be able to see how much you need. Default value of 10 allows you 16dB (6+10) of adjustment space within your filter. Once your filter is created use minimum value to avoid clipping. For example, if your fliter uses max +12dB set input attenuation to 6 (as 6dB is already set internally within the engine).

  • as a general rule you are advised not to use more than 16dB of gain in your filters

  • most modern USB DACs will require S32_LE as a value for Output format. That value will support all bitrates supported by your DAC

hi. Sorry, I wanted to ask you
on the functions of brutefir 2 we talk about a 30-band equalizer 1/3 octave.but I tried to install both brutefir 2 and brutefir 3 but I do not see any equalizer.something and gone wrong? maybe it will be introduced in the future?
thank you