Question

i've been assigned a homework that includes audio processing in matlab, what i got to do is get at least 3 channels of different frequencies in a song, and increase the dB output depending on the channel. It's got to work like an equalizer but using only 3 channels. My biggest problem here is getting a frequency and magnitude values and save it into variables separated in channels (Low, Mid and High) frequencies.

Was it helpful?

Solution

  1. Read your file using wavread
  2. Specify the filter using fdesign (FDesign Help) where you need 3 filters lowpass, bandpass and High pass. (You may need to decimate)
  3. Use design to actually design the filter from above specification. You need to specify & design thrice as you have 3 channels. This can be made into a function and wavread output can be passed to this.
  4. Finally use filter command to actually filter the data. (Again 3 filters)
  5. Now you have 3 outputs which belong to 3 frequencies. (Use Matlab help its really good)

PS: I assume you have Signal Processing Toolbox.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top