I’ve got the stuff together now so I can do Digital Room Correction in my car. The plan is to build a Linux ‘appliance’ (really a PC booted from Compact Flash) that will process the audio on my car stereo. The process involves sampling the sound to know what problems are occurring in the systems playback. For example: phase of different speakers, SPL at different frequencies, and spikes caused by reflections. Once this is identified, filters are generated and then applied to the audio before it gets to the amps. The filters essentially make the audio work with the problems and improve the accuracy and quality of the audio.
It really is amazing what can be done with this. Once it’s working, I plan to integrate the computer with the BMW iBus protocol, so I can adjust it from the steering wheel buttons. There are 2 buttons on the wheel that are unused (intended if you have the hands-free phone kit) that send signals over iBus. I can interface with the iBus in the trunk by using the connector intended for a CD Changer. The idea is that I’ll hit a button, it will send a signal to the computer, it will change the filter, and then it will send signals via iBus to display the current filter being used to the stereo headunit. Fun!
For more DRC info check here: http://www.duffroomcorrection.com










5 responses so far ↓
1 Jo // Sep 20, 2007 at 5:56 pm
I am very interested in this. Do you still plan to create this appliance?
2 Ron S // Sep 20, 2007 at 8:11 pm
Definitely. I’m still working out some of the implementation details but I’ve already got it running in my car. At this point it is running off a hard disk so the work is really in making a build that will work with http://www.openembedded.org/
3 Jo // Sep 22, 2007 at 8:05 am
I am no expert on this so: do you think your virtual appliance could work with vmware and the like?
4 Ron S // Sep 22, 2007 at 12:07 pm
I doubt it, because VMWare is going to get in the way of processing audio. VMWare will map your soundcard to their audio driver which emulates a soundblaster. So the OS will see a soundblaster, not an M-Audio or whatever. I think you would only have 2 channels as well. It may be possible to do it if you only want to correct 2 channels, but even then you may run into other issues with your host-os interrupting the processing of the VM. This is why most people use the low-latency patches for Linux on these appliances so they can have somewhat real-time kernel behaviour (pre-emptive).
5 Jo // Sep 24, 2007 at 8:14 am
I just want to filter the music i listen to. So for my application latency is not much of an issue. I could route the audio via the Jack and the network interface of the VM…
Leave a Comment