Our teacher gave us an assignment: Write a program to transform an audio track to time - frequency domain, and create a vector include at least 4 features extracted from transformed output signal.

I think that i have to write a program that read an audio file, transform it into an vector of signals, which is the input of dwt algorithm, and i will get transformed output signal. After that, i use the output as an input of some functions to get extracted features.

I have some serious problems, due to lack of knowledge. I have very limited knowledge of physic, math, audio processing. Assume that what i'm thinking are right, then i don't know how many signal arrays should i get from the audio track and how to do it. I haven't figured how DWT work and the meaning of the DWT output, so that i don't know what to do with arrays of input signal. And the last are the extracted features, what features can be extracted using DWT (maybe i just needed the keyword, if i could understand DWT).

Thank you for your help!

  • $\begingroup$ Why, given "time-frequency domain", did you pick DWT? $\endgroup$ – Laurent Duval Oct 2 '18 at 20:37
  • $\begingroup$ @LaurentDuval I think the signals of audio file is in time-amplitude domain, and DWT can transform those signals to time-frequency domain $\endgroup$ – Tan Nguyen Oct 3 '18 at 5:18
  • $\begingroup$ DWT is often associated to time-scale, not time-frequency. I'd suggest you to look at technology behind mp3 or Shazam, that compress or identify audio wrt time-frequency features $\endgroup$ – Laurent Duval Oct 3 '18 at 5:42

Four features is a very short description for an audio signal. The hint: "Write a program to transform an audio track to time-frequency domain" is important. Since audio signals are in general not fully stationary, windowed-Fourier or Short-term Fourier transforms can be important. Such representations are generally redundant, yet one can expect that the most energetic features in those domains represent the main energy in the time domain.

One first bet is to use a time-frequency spectrogram, and pick the most important features, or the highest local maxima.

Then, if needed, you can think about reducing the redundancy with filter-banks or discrete wavelet transforms. You can further incorporate auditory system weighting, or classification priors.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.