The Moog
Member
- Joined
- Apr 6, 2020
- Messages
- 11
- Likes
- 1
Hi all,
After reading about the benefits of digital room correction (DRC) I have become interested in learning a little more about it before having a go at applying it to my stereo setups. There are so many options out there that before disappearing down the rabbit hole and selecting something not fit for purpose, I just wanted to make sure that my basic understanding and underlying assumptions were correct, and then ask for some help in figuring out how best to proceed!
My starting point
All of my music is PCM and ranges from 16/44.1 to 24/192. It sits on a little Raspberry Pi running PiCorePlayer as a Logitech Media Server (LMS) hidden away in a cupboard, and feeds several Squeezeboxen scattered about the house. This all seems to work fairly seamlessly, with the attached Squeezebox Touch's having a nice touchscreen interface which is wife and child friendly meaning that you don't have to grab a phone or a tablet to control them, and each is able to send out anything up to 24/192 via their optical or USB ports to an attached DAC. It would be great to be able to apply room correction in the digital domain between the Squeezebox and the DAC so that each of these could be better tuned to the rooms that they are in.
I have no real experience of DRC apart from the very automated approach used by modern home theatre receivers, but the general process here seems similar if a little more manual. You take a set of calibration measurements around the listening room, run these through some software to create filters for that room, and then apply those filters to audio that is played in that room to try and create a more optimised listening environment. There seems to be many software tools out there to generate correction filters, but from my brief skim of the internets Audiolense seems to strike a good balance of ease of use and state of the art features.
So, I can see how I would go about creating filters using Audiolense with a suitable microphone to measure my room, but after this I get a bit stuck with how to actually apply these filters. I presume that I am going to want to run the processing at the highest resolution of my audio files so as not to degrade their quality, so 24bits and 192kHz, and reading around it seems like the ideal FIR filter length people try to achieve for the best results is ~65k taps.
What are the options
I guess this all requires processing horsepower; looking around at the readily available hardware (such as the OpenDRC-DI) none of it can get anywhere near this, so does this mean that you are stuck running the convolver on JRiver using a big old PC in your listening room? Unfortunately for me this isn't a workable solution.
People also seem to run convolvers on single board computers like the Raspberry Pi or ODROID C2. I don't want to run one on my LMS music server as this sends audio to many different rooms around the house, but it would be great to be able to drop a Pi-like-thing into the USB chain between each Squeezebox and DAC, running a convolver with a different filter setup for each individual room. Are you limited by the resolution and FIR taps that you can sensibly run on a Pi-like-thing even when just using two channels? Can you set one up to take USB audio from a network player, run an open-DRC compatible convolver, and spit out room-corrected high-res USB audio to a DAC? I am guessing not as I can't find anyone doing this...
To be clear, I do not know my way around a Linux distro, but can just about be trusted to follow instructions to put the right files onto an SD card and plonk it into a Pi.
Many thanks for the input!
After reading about the benefits of digital room correction (DRC) I have become interested in learning a little more about it before having a go at applying it to my stereo setups. There are so many options out there that before disappearing down the rabbit hole and selecting something not fit for purpose, I just wanted to make sure that my basic understanding and underlying assumptions were correct, and then ask for some help in figuring out how best to proceed!
My starting point
All of my music is PCM and ranges from 16/44.1 to 24/192. It sits on a little Raspberry Pi running PiCorePlayer as a Logitech Media Server (LMS) hidden away in a cupboard, and feeds several Squeezeboxen scattered about the house. This all seems to work fairly seamlessly, with the attached Squeezebox Touch's having a nice touchscreen interface which is wife and child friendly meaning that you don't have to grab a phone or a tablet to control them, and each is able to send out anything up to 24/192 via their optical or USB ports to an attached DAC. It would be great to be able to apply room correction in the digital domain between the Squeezebox and the DAC so that each of these could be better tuned to the rooms that they are in.
I have no real experience of DRC apart from the very automated approach used by modern home theatre receivers, but the general process here seems similar if a little more manual. You take a set of calibration measurements around the listening room, run these through some software to create filters for that room, and then apply those filters to audio that is played in that room to try and create a more optimised listening environment. There seems to be many software tools out there to generate correction filters, but from my brief skim of the internets Audiolense seems to strike a good balance of ease of use and state of the art features.
So, I can see how I would go about creating filters using Audiolense with a suitable microphone to measure my room, but after this I get a bit stuck with how to actually apply these filters. I presume that I am going to want to run the processing at the highest resolution of my audio files so as not to degrade their quality, so 24bits and 192kHz, and reading around it seems like the ideal FIR filter length people try to achieve for the best results is ~65k taps.
What are the options
I guess this all requires processing horsepower; looking around at the readily available hardware (such as the OpenDRC-DI) none of it can get anywhere near this, so does this mean that you are stuck running the convolver on JRiver using a big old PC in your listening room? Unfortunately for me this isn't a workable solution.
People also seem to run convolvers on single board computers like the Raspberry Pi or ODROID C2. I don't want to run one on my LMS music server as this sends audio to many different rooms around the house, but it would be great to be able to drop a Pi-like-thing into the USB chain between each Squeezebox and DAC, running a convolver with a different filter setup for each individual room. Are you limited by the resolution and FIR taps that you can sensibly run on a Pi-like-thing even when just using two channels? Can you set one up to take USB audio from a network player, run an open-DRC compatible convolver, and spit out room-corrected high-res USB audio to a DAC? I am guessing not as I can't find anyone doing this...
To be clear, I do not know my way around a Linux distro, but can just about be trusted to follow instructions to put the right files onto an SD card and plonk it into a Pi.
Many thanks for the input!