ALSA problems
MWP,
Here is the .brutefir.config file that I'm using atm:
modules_path: "/home/rfs/brutefir-1.0/";
sampling_rate: 44100;
filter_length: 256,4;
logic: "cli" { port: 3000; };
coeff "main-high" {
format: "text";
filename: "/home/rfs/brutefir-1.0/lib/hi1.txt";
};
coeff "main-low" {
format: "text";
filename: "/home/rfs/brutefir-1.0/lib/lo1.txt";
};
input "left-in", "right-in" {
device: "file" { path: "/home/rfs/brutefir-1.0/test.wav"; };
sample: "S16_LE";
channels: 2;
};
output "lloout", "rloout", "lhiout", "rhiout" {
device: "alsa" { param: "dac03";};
sample: "S32_LE";
channels: 4;
};
filter "left-high" {
inputs: "left-in"/0;
outputs: "lhiout";
coeff: "main-high";
};
filter "left-low" {
inputs: "left-in"/0;
outputs: "lloout";
coeff: "main-low";
};
filter "right-high" {
inputs: "right-in"/0;
outputs: "rhiout";
coeff: "main-high";
};
filter "right-low" {
inputs: "right-in"/0;
outputs: "rloout";
coeff: "main-low";
};
and the very simple .asoundrc file:
pcm.ice1712 {
type hw
card 0
device 0
}
ctl.ice1712 {
type hw
card 0
}
pcm.dac03 {
type plug
ttable.0.0 1 # (left lo...Delta 1)
ttable.0.1 1 # (right lo...Delta 2)
ttable.0.2 1 # (left hi...Delta 3)
ttable.0.3 1 # (right hi...Delta 4)
slave.pcm ice1712
}
The reason the .asoundrc is bundled up all 4 channels into dac03 is it wouldn't work when split into "channel12" and "channel34" for example. BruteFIR would gag trying to open the channel34 pcm because ALSA believes the "device" is already active due to already having opened the channel12 device.
I hope this is understandable.
Anyway, all channels appear to be getting exactly the same information, not 4 different streams. It sounds ok when I put -1 in for the filter coeff, which passes the .wav file unfiltered. But obviously the tweeters can't take much volume of that. Once the "main-low" filter is enabled for either left or right, I get bad distortion (at all volumes on all 4 channels).
????
-Robert
MWP,
Here is the .brutefir.config file that I'm using atm:
modules_path: "/home/rfs/brutefir-1.0/";
sampling_rate: 44100;
filter_length: 256,4;
logic: "cli" { port: 3000; };
coeff "main-high" {
format: "text";
filename: "/home/rfs/brutefir-1.0/lib/hi1.txt";
};
coeff "main-low" {
format: "text";
filename: "/home/rfs/brutefir-1.0/lib/lo1.txt";
};
input "left-in", "right-in" {
device: "file" { path: "/home/rfs/brutefir-1.0/test.wav"; };
sample: "S16_LE";
channels: 2;
};
output "lloout", "rloout", "lhiout", "rhiout" {
device: "alsa" { param: "dac03";};
sample: "S32_LE";
channels: 4;
};
filter "left-high" {
inputs: "left-in"/0;
outputs: "lhiout";
coeff: "main-high";
};
filter "left-low" {
inputs: "left-in"/0;
outputs: "lloout";
coeff: "main-low";
};
filter "right-high" {
inputs: "right-in"/0;
outputs: "rhiout";
coeff: "main-high";
};
filter "right-low" {
inputs: "right-in"/0;
outputs: "rloout";
coeff: "main-low";
};
and the very simple .asoundrc file:
pcm.ice1712 {
type hw
card 0
device 0
}
ctl.ice1712 {
type hw
card 0
}
pcm.dac03 {
type plug
ttable.0.0 1 # (left lo...Delta 1)
ttable.0.1 1 # (right lo...Delta 2)
ttable.0.2 1 # (left hi...Delta 3)
ttable.0.3 1 # (right hi...Delta 4)
slave.pcm ice1712
}
The reason the .asoundrc is bundled up all 4 channels into dac03 is it wouldn't work when split into "channel12" and "channel34" for example. BruteFIR would gag trying to open the channel34 pcm because ALSA believes the "device" is already active due to already having opened the channel12 device.
I hope this is understandable.
Anyway, all channels appear to be getting exactly the same information, not 4 different streams. It sounds ok when I put -1 in for the filter coeff, which passes the .wav file unfiltered. But obviously the tweeters can't take much volume of that. Once the "main-low" filter is enabled for either left or right, I get bad distortion (at all volumes on all 4 channels).
????
-Robert
Ok, the thing ive found is that using asound to route channels is a bad, even though it seems like the most logical and correct way to do things.
Also, using the "plug" device is bad as it drops sound quality.
Its a guess, but try using:
See if that works.
Also, using the "plug" device is bad as it drops sound quality.
Its a guess, but try using:
Code:
output "lloout", "rloout", "lhiout", "rhiout" {
device: "alsa" { param: "hw:0";};
sample: "S32_LE";
channels: 4;
};
See if that works.
Good advice MWP!
MWP,
Thanks so much for steering me away from .asoundrc routing. This is what I eventually figured out:
output "lloout", "rloout", "lhiout", "rhiout" {
device: "alsa" { param: "hw:0";};
sample: "S32_LE";
channels: 10/0,1,2,3;
};
Now, I have separation between the filtered streams to each channel. The hi channels are getting nicely filtered high-pass streams and the lows are getting distorted low-pass streams.
So, next up is to improve the low-pass filters.
Will report back.
-Robert
MWP,
Thanks so much for steering me away from .asoundrc routing. This is what I eventually figured out:
output "lloout", "rloout", "lhiout", "rhiout" {
device: "alsa" { param: "hw:0";};
sample: "S32_LE";
channels: 10/0,1,2,3;
};
Now, I have separation between the filtered streams to each channel. The hi channels are getting nicely filtered high-pass streams and the lows are getting distorted low-pass streams.
So, next up is to improve the low-pass filters.
Will report back.
-Robert
In the clear
We are now crossed over and sounding good
. All 4 filters working well. The problem with the low-pass was my normalization. I had scaled the coeff's so that the sum of squares = 1.000. Not smart. Just leaving them as-is from gmeteor sounds good.
I think some listening is in order before jumping on the next issues.
Sound assessment is 7/10. Not bad. Not "best in the world".
A nice place to be for a few moments.
-Robert
We are now crossed over and sounding good

I think some listening is in order before jumping on the next issues.
Sound assessment is 7/10. Not bad. Not "best in the world".
A nice place to be for a few moments.
-Robert
Which player?
We're making fast progress now. Thanks to the experts, esp MWP and peufeu.
Next up on the project menu is - player selection and interface w/ brutefir.
Choices of potential players are xmms, aplayer, gstreamer, xine, alsaplayer...
I still don't know much (or anything really) about Jack.
I've been using xmms with alsa plug-in but that won't work for 4-ch brutefir input.
How to config brutefir and player? Set up brutefir for stdin? Daemon?
That's the next hurdle.
-Robert
We're making fast progress now. Thanks to the experts, esp MWP and peufeu.
Next up on the project menu is - player selection and interface w/ brutefir.
Choices of potential players are xmms, aplayer, gstreamer, xine, alsaplayer...
I still don't know much (or anything really) about Jack.
I've been using xmms with alsa plug-in but that won't work for 4-ch brutefir input.
How to config brutefir and player? Set up brutefir for stdin? Daemon?
That's the next hurdle.
-Robert
Sound quality
Before moving on to experiments with filters (after setting up the player) I thought I'd attempt to report on sound quality.
It's not quite as good overall as it was at stage 1. Stage 1 was the same hardware except the speakers weren't biamped and the player was foobar/ASIO on Windows XP.
So now with initial simple Linux/BruteFIR/ALSA, what we've got is less detail and less soundstage. The degree of separation of instruments is noticeably worse. Soundstage is barely there - I easily hear the individual speaker positions although not the drivers themselves.
On an overall scale from 1 to 10, we've gone from 8/10 to 7/10. Still better than most pc's by a big margin.
-Robert
Before moving on to experiments with filters (after setting up the player) I thought I'd attempt to report on sound quality.
It's not quite as good overall as it was at stage 1. Stage 1 was the same hardware except the speakers weren't biamped and the player was foobar/ASIO on Windows XP.
So now with initial simple Linux/BruteFIR/ALSA, what we've got is less detail and less soundstage. The degree of separation of instruments is noticeably worse. Soundstage is barely there - I easily hear the individual speaker positions although not the drivers themselves.
On an overall scale from 1 to 10, we've gone from 8/10 to 7/10. Still better than most pc's by a big margin.
-Robert
JACK is basically an audio switchboard.
You simply (well, in theory) tell it what output ports to connect to other input ports.
Make sure you get JACK from CVS (as the download page sugests)... you get much newer sources this way.
Because youll only be using JACK for connection between the player (xmms, etc) and brutfir, things might become complicated.
JACK normally uses the soundcard as its clock source via the ALSA/OSS driver.
But you dont want this since JACK eont need to have a connection with the soundcard... so you will probably want to use the "dummy" device driver.
But this could then lead to clock sync problems as brutfir's input clock from JACK will be different to the output ALSA soundcard clock (they will probably drift causing syncing issues).
So, you might have to use use JACK for the brutefir output to the soundcard as well.
It would look like this:
xmms -> jack -> brutefir -> jack -> alsa -> soundcard
Enough rambling... ive given you a bit of info on the problems youll come across for the moment.
You simply (well, in theory) tell it what output ports to connect to other input ports.
Make sure you get JACK from CVS (as the download page sugests)... you get much newer sources this way.
Because youll only be using JACK for connection between the player (xmms, etc) and brutfir, things might become complicated.
JACK normally uses the soundcard as its clock source via the ALSA/OSS driver.
But you dont want this since JACK eont need to have a connection with the soundcard... so you will probably want to use the "dummy" device driver.
But this could then lead to clock sync problems as brutfir's input clock from JACK will be different to the output ALSA soundcard clock (they will probably drift causing syncing issues).
So, you might have to use use JACK for the brutefir output to the soundcard as well.
It would look like this:
xmms -> jack -> brutefir -> jack -> alsa -> soundcard
Enough rambling... ive given you a bit of info on the problems youll come across for the moment.
Cracker Jack
MWP,
Thanks for the signpost along the highway. I was indeed reading the awesome documentation on Jack even as you wrote your recommendations.
Ok, I'm exaggerating the quality of the docs. In fact, if there ARE docs at all, I'm still trying to locate them. I'll go directly to CVS and see if maybe the README has something useful.
Anyway, thanks again.
-Robert
MWP,
Thanks for the signpost along the highway. I was indeed reading the awesome documentation on Jack even as you wrote your recommendations.
Ok, I'm exaggerating the quality of the docs. In fact, if there ARE docs at all, I'm still trying to locate them. I'll go directly to CVS and see if maybe the README has something useful.
Anyway, thanks again.
-Robert
MWP said:JACK is basically an audio switchboard.
You simply (well, in theory) tell it what output ports to connect to other input ports.
Make sure you get JACK from CVS (as the download page sugests)... you get much newer sources this way.
Because youll only be using JACK for connection between the player (xmms, etc) and brutfir, things might become complicated.
[cut]
So, you might have to use use JACK for the brutefir output to the soundcard as well.
It would look like this:
xmms -> jack -> brutefir -> jack -> alsa -> soundcard
Enough rambling... ive given you a bit of info on the problems youll come across for the moment.
Why on earth would you use Jack w/BruteFIR but NOT have it run the soundcard?? I'm not even sure that's possible, and if it is it doesn't make any sense to me. IMHO running Jack and using BruteFIR as a standard Jack client is the best way to handle this - gives you the I/O switching capabilities and leaves you open to adding things like volume control or sample-level delays after the BruteFIR processing - writing little Jack clients to do this sort of thing is really very easy, much easier IMHO than trying to write a client to talk to BruteFIR's console port..
Possible soluiton for dac?
Hi all, I've been following this thread with great interest.
I'm glad you're making progress with your setup Robert, please keep us updated, i'm sure you can get it to at least one notch above your old system.
I'm doing something similar with a SBlive and the KX driver.
I know the soundblaster isn't really top notch, but since it's already in my machine i figured i might as well use it to it's full potential.
I hope i'm not threadjacking, but on the topic of external dacs, i've started looking around for possible ways to do this.
Maybe this firewire chip coupled with one of these 8 channel dacs would do the trick?
I haven't read up on the firewire chip, but i think it does just about everything you'd need it to. It even has an internal ARM7 processor you could play with. It's a 101 page (abbreviated!) data sheet, so it might take a while to read and understand.
I'll post back if i find anything interesting...
What do you dac experts think of these chips?
Would it be possible to use without too much hassle?
How does that 8 channel dac compare to high quality standalone dacs?
I'm kindof inexperienced with low level digital chips, so i'm not sure i can pull this off by myself. I have some experience programming 6802 assembler, but i don't know how much that helps with this firewire chip...
best regards
/Andreas
Hi all, I've been following this thread with great interest.
I'm glad you're making progress with your setup Robert, please keep us updated, i'm sure you can get it to at least one notch above your old system.
I'm doing something similar with a SBlive and the KX driver.
I know the soundblaster isn't really top notch, but since it's already in my machine i figured i might as well use it to it's full potential.
I hope i'm not threadjacking, but on the topic of external dacs, i've started looking around for possible ways to do this.
Maybe this firewire chip coupled with one of these 8 channel dacs would do the trick?
I haven't read up on the firewire chip, but i think it does just about everything you'd need it to. It even has an internal ARM7 processor you could play with. It's a 101 page (abbreviated!) data sheet, so it might take a while to read and understand.
I'll post back if i find anything interesting...
What do you dac experts think of these chips?
Would it be possible to use without too much hassle?
How does that 8 channel dac compare to high quality standalone dacs?
I'm kindof inexperienced with low level digital chips, so i'm not sure i can pull this off by myself. I have some experience programming 6802 assembler, but i don't know how much that helps with this firewire chip...
best regards
/Andreas
Re: In the clear
I did a brief read of the gmeteor docs, and unless I'm missing something, it's probably not a great way to generate audio filters. Not necessarily a bad place to start, but unless you use something like DRC to subsequently eq the overall response of the system *including the drivers* getting any kind of reasonable alignment and integration with the drivers will be tough with the type of optimized filters that gmeteor generates.
The basic problem is that in audio the behavior of the filters in the transition band is critically important since this is where the drivers overlap, whereas in typical optimized filter creation the transition band is pretty much ignored and only the passband and stopband are significant.
Also, it looks like gmeteor only creates linear-phase filters - these can be difficult to get right as they require careful alignment between adjacent filters to avoid pre-echo/pre-ringing effects.
So, starting from gmeteor is not necessarily a bad thing, and if you intend to use DRC then it might be all you need. If not, though, it's likely that you'll never get much past the 7/10 or maybe 8/10 stage - you need much better filters that include the acoustic response of the drivers to really realize the potential of digital filters.
RFScheer said:We are now crossed over and sounding good. All 4 filters working well. The problem with the low-pass was my normalization. I had scaled the coeff's so that the sum of squares = 1.000. Not smart. Just leaving them as-is from gmeteor sounds good.
I think some listening is in order before jumping on the next issues.
Sound assessment is 7/10. Not bad. Not "best in the world".
A nice place to be for a few moments.
-Robert
I did a brief read of the gmeteor docs, and unless I'm missing something, it's probably not a great way to generate audio filters. Not necessarily a bad place to start, but unless you use something like DRC to subsequently eq the overall response of the system *including the drivers* getting any kind of reasonable alignment and integration with the drivers will be tough with the type of optimized filters that gmeteor generates.
The basic problem is that in audio the behavior of the filters in the transition band is critically important since this is where the drivers overlap, whereas in typical optimized filter creation the transition band is pretty much ignored and only the passband and stopband are significant.
Also, it looks like gmeteor only creates linear-phase filters - these can be difficult to get right as they require careful alignment between adjacent filters to avoid pre-echo/pre-ringing effects.
So, starting from gmeteor is not necessarily a bad thing, and if you intend to use DRC then it might be all you need. If not, though, it's likely that you'll never get much past the 7/10 or maybe 8/10 stage - you need much better filters that include the acoustic response of the drivers to really realize the potential of digital filters.
dwk123 said:
Why on earth would you use Jack w/BruteFIR but NOT have it run the soundcard?? I'm not even sure that's possible, and if it is it doesn't make any sense to me. IMHO running Jack and using BruteFIR as a standard Jack client is the best way to handle this - gives you the I/O switching capabilities and leaves you open to adding things like volume control or sample-level delays after the BruteFIR processing - writing little Jack clients to do this sort of thing is really very easy, much easier IMHO than trying to write a client to talk to BruteFIR's console port..
Good point.
I didnt think about having other processing after brutefir.
Ive been trying to move away from JACK due to it wanting to kill off clients on every xrun (very annoying).
Thread hijacking
I'm glad people are watching the progress on this thread. Today so far there's been ZERO effort - sorry. Tonite I'll try to find out more about Jack. Still haven't found a decent howto or guide, but the info must be out there somewhere.
nuppe,
Interesting post on those 2 TI parts. Not thread jacking at all. Even if they aren't good choices for our hifi requirements, it's still interesting to learn about what's out there. Does anyone know if the 8ch DAC is worthy? Now, the firewire chip looks very interesting, especially if you can ship 6 or 8 or more streams coming out of BruteFIR across it.
dwk123,
Do you use BruteFIR routinely? Obviously, you know all about Jack and digital filters but how far have you gone down this road? And thanks for assuming that the gmeteor filters are just a starting point. Exactly right. In fact, I've already found that functionally gmeteor blows up trying to make 2048 tap filters (at least several times so far) so it's got a few things going against it.
Regarding the equalization of the total sound chain, I fully intend to do that. I've been reading a bit about microphones and I need to set up a mic preamp for my soundcard. Clearly, there's subtlety involved with measuring the response spectrum without adding big artifacts from the microphone and A/D. This is something I want to do a good job on though because I have 2 purposes in mind. The first is my little pc music player setup and the second is my theater, which is a 24x36 anechoic underground concrete bunker with 5 MG20's and 4 Rel sub's. I'm already dreaming of a diy pc theater system that will beat my current Krell A/V Std. Clearly, room/driver equalization would be one of the components needed to improve on the current setup.
Anyway... I shouldn't hijack my own thread so back on the track. Any recommendations on a microphone and preamp? I'll probably need them right away but haven't learned enough yet.
dwk123, do you agree that Octave or Matlab are the best way to go for designing the filters?
-Robert
I'm glad people are watching the progress on this thread. Today so far there's been ZERO effort - sorry. Tonite I'll try to find out more about Jack. Still haven't found a decent howto or guide, but the info must be out there somewhere.
nuppe,
Interesting post on those 2 TI parts. Not thread jacking at all. Even if they aren't good choices for our hifi requirements, it's still interesting to learn about what's out there. Does anyone know if the 8ch DAC is worthy? Now, the firewire chip looks very interesting, especially if you can ship 6 or 8 or more streams coming out of BruteFIR across it.
dwk123,
Do you use BruteFIR routinely? Obviously, you know all about Jack and digital filters but how far have you gone down this road? And thanks for assuming that the gmeteor filters are just a starting point. Exactly right. In fact, I've already found that functionally gmeteor blows up trying to make 2048 tap filters (at least several times so far) so it's got a few things going against it.
Regarding the equalization of the total sound chain, I fully intend to do that. I've been reading a bit about microphones and I need to set up a mic preamp for my soundcard. Clearly, there's subtlety involved with measuring the response spectrum without adding big artifacts from the microphone and A/D. This is something I want to do a good job on though because I have 2 purposes in mind. The first is my little pc music player setup and the second is my theater, which is a 24x36 anechoic underground concrete bunker with 5 MG20's and 4 Rel sub's. I'm already dreaming of a diy pc theater system that will beat my current Krell A/V Std. Clearly, room/driver equalization would be one of the components needed to improve on the current setup.
Anyway... I shouldn't hijack my own thread so back on the track. Any recommendations on a microphone and preamp? I'll probably need them right away but haven't learned enough yet.
dwk123, do you agree that Octave or Matlab are the best way to go for designing the filters?
-Robert
Hi again
I've been reading up on the TSB43CB43 firewire chip.
As far as i understand this chip is able to recieve/transmit three kinds of digital audio:
DVD-Audio (MBLA), SACD and S/PDIF.
It has two "HSDI" ports that can be used for input/output, only one of them supports SACD, both handles DVD-Audio and S/PDIF.
It has one 4kB isochronous FIFO buffer per port.
Correct me if i'm wrong, but i think this means you could have up to 12 channels out or 6 channels in/out at 24 bits 192kHz simultaneously. Sounds sweet...
There is a possibility to connect an external cpu, but i don't think that you'd have to for our purposes.
What i'm still not sure of is how much else you'd need to get things working.
As for drivers, i think firewire is supposed to be self configuring, right? That is, the device tells the other devices on the bus what it's able to do, and things just work.
Not sure about this though...
I'm sure if someone with a little more experience than me took a look at the data sheet he'd be able to tell us a lot more.
Oh, by the way, it has 3 physical 1394 ports, so if theres a need for more channels, it would be easy to just daisy-chain more chips on the same pcb.
/Andreas
I've been reading up on the TSB43CB43 firewire chip.
As far as i understand this chip is able to recieve/transmit three kinds of digital audio:
DVD-Audio (MBLA), SACD and S/PDIF.
It has two "HSDI" ports that can be used for input/output, only one of them supports SACD, both handles DVD-Audio and S/PDIF.
It has one 4kB isochronous FIFO buffer per port.
Correct me if i'm wrong, but i think this means you could have up to 12 channels out or 6 channels in/out at 24 bits 192kHz simultaneously. Sounds sweet...
There is a possibility to connect an external cpu, but i don't think that you'd have to for our purposes.
What i'm still not sure of is how much else you'd need to get things working.
As for drivers, i think firewire is supposed to be self configuring, right? That is, the device tells the other devices on the bus what it's able to do, and things just work.
Not sure about this though...
I'm sure if someone with a little more experience than me took a look at the data sheet he'd be able to tell us a lot more.
Oh, by the way, it has 3 physical 1394 ports, so if theres a need for more channels, it would be easy to just daisy-chain more chips on the same pcb.
/Andreas
If this firewire chip is designed for sound, there'll likely be some sound drivers available for it already. If there are not, wait a little... or find a device it's used in, and use the drivers for that device...
It's also possible to write a driver for Linux. For windows is looks like a nightmare...
It's also possible to write a driver for Linux. For windows is looks like a nightmare...
Promising
nuppe,
As soon as I pass the current milestone of learning how to:
1) design decent crossover filters for BruteFIR
2) connect a general gui music player like xmms to jack to brutefir to alsa
3) measure the full live response of my system
4) correct the response and achieve best sound possible from M-Audio 410 analog outputs
then it'll be time to start designing the next stage of improvement in the dac section. If someone hasn't ruled out this firewire chip by then, it looks like a good candidate for a diy multichannel pc music player dac board.
All,
Have you ever corresponded with Don Maurer regarding his pc music system, which has many fantastic attributes? I've sent him an email hoping he has some advice for us. Don's website:
dwk123,
I've reread some of your old posts and realize that you have a M-Audio Delta 1010 and use BruteFIR and have implemented correction of drivers and I believe room response. So, how do you set target response and design filters to achieve your targets? Do you follow peufeu's basic procedure (see a few posts back). What kind of microphone/preamp setup do you use and/or recommend?
Have any of you gone so far as to also compensate for your own hearing response? I'm certainly not a candidate for hearing aids, but I'm thinking of getting a calibrated measurement made of my hearing response and then using that as the final compensation requirement for the filters. It's been somewhat depressing as I've practiced my critical listening ability to realize I have tinnitus (constant background ringing at about 12kHz (guessing on exact f but in that ballpark). Usually it's tuned out but whenever I'm critically listening, it's a nuisance.
-Robert
nuppe,
As soon as I pass the current milestone of learning how to:
1) design decent crossover filters for BruteFIR
2) connect a general gui music player like xmms to jack to brutefir to alsa
3) measure the full live response of my system
4) correct the response and achieve best sound possible from M-Audio 410 analog outputs
then it'll be time to start designing the next stage of improvement in the dac section. If someone hasn't ruled out this firewire chip by then, it looks like a good candidate for a diy multichannel pc music player dac board.
All,
Have you ever corresponded with Don Maurer regarding his pc music system, which has many fantastic attributes? I've sent him an email hoping he has some advice for us. Don's website:
dwk123,
I've reread some of your old posts and realize that you have a M-Audio Delta 1010 and use BruteFIR and have implemented correction of drivers and I believe room response. So, how do you set target response and design filters to achieve your targets? Do you follow peufeu's basic procedure (see a few posts back). What kind of microphone/preamp setup do you use and/or recommend?
Have any of you gone so far as to also compensate for your own hearing response? I'm certainly not a candidate for hearing aids, but I'm thinking of getting a calibrated measurement made of my hearing response and then using that as the final compensation requirement for the filters. It's been somewhat depressing as I've practiced my critical listening ability to realize I have tinnitus (constant background ringing at about 12kHz (guessing on exact f but in that ballpark). Usually it's tuned out but whenever I'm critically listening, it's a nuisance.
-Robert
Re: Thread hijacking
Im gonna answer a couple of the questions you aimed at dwk123... 😉
This might interest you then... its the predecessor to BruteFIR:
http://www.ludd.luth.se/~torger/filter.html
Not updated since 2001.. wow, i was using this before BruteFIR came out.
Anyway, read everything there, its a good guide on doing speaker EQ and room EQ.
I havnt used Octave, but Matlab isnt too bad.
Its a little difficult to make accurate lower freq crossover points with though esp if bandpass.
Besides that, it does a good job.
Im gonna answer a couple of the questions you aimed at dwk123... 😉
Regarding the equalization of the total sound chain, I fully intend to do that. I've been reading a bit about microphones and I need to set up a mic preamp for my soundcard. Clearly, there's subtlety involved with measuring the response spectrum without adding big artifacts from the microphone and A/D. This is something I want to do a good job on though because I have 2 purposes in mind. The first is my little pc music player setup and the second is my theater, which is a 24x36 anechoic underground concrete bunker with 5 MG20's and 4 Rel sub's. I'm already dreaming of a diy pc theater system that will beat my current Krell A/V Std. Clearly, room/driver equalization would be one of the components needed to improve on the current setup.
This might interest you then... its the predecessor to BruteFIR:
http://www.ludd.luth.se/~torger/filter.html
Not updated since 2001.. wow, i was using this before BruteFIR came out.
Anyway, read everything there, its a good guide on doing speaker EQ and room EQ.
dwk123, do you agree that Octave or Matlab are the best way to go for designing the filters?
I havnt used Octave, but Matlab isnt too bad.
Its a little difficult to make accurate lower freq crossover points with though esp if bandpass.
Besides that, it does a good job.
NWFIR
MWP,
Yes, I've scanned through this site and it's definitely useful as a guide. Do you think all of the software will still work? As soon as I figure out how to interface xmms to jack to brutefir to jack to alsa, I'll start working on better filters and measuring response curves. Meanwhile, I'm amassing info on the best methods people know about. What kind of microphone setup do you use?
-Robert
MWP,
Yes, I've scanned through this site and it's definitely useful as a guide. Do you think all of the software will still work? As soon as I figure out how to interface xmms to jack to brutefir to jack to alsa, I'll start working on better filters and measuring response curves. Meanwhile, I'm amassing info on the best methods people know about. What kind of microphone setup do you use?
-Robert
DIY microphone candidate
How about this diy microphone?
and the software mentioned is good too?
-Robert
How about this diy microphone?
and the software mentioned is good too?
-Robert
It was too obvious
After further reading, it was too obvious that this is the perfect testing microphone, so I ordered it. I didn't think that I could design and build better or cheaper than Old Colony could provide for $130 including preamp. Hope it works as well as everyone says:
Mitey Mike II page
-Robert
After further reading, it was too obvious that this is the perfect testing microphone, so I ordered it. I didn't think that I could design and build better or cheaper than Old Colony could provide for $130 including preamp. Hope it works as well as everyone says:
Mitey Mike II page
-Robert
- Status
- Not open for further replies.
- Home
- Source & Line
- Digital Source
- PC music players