Time–frequency analysis for music signals explained

Time–frequency analysis for music signals is one of the applications of time–frequency analysis. Musical sound can be more complicated than human vocal sound, occupying a wider band of frequency. Music signals are time-varying signals; while the classic Fourier transform is not sufficient to analyze them, time–frequency analysis is an efficient tool for such use. Time–frequency analysis is extended from the classic Fourier approach. Short-time Fourier transform (STFT), Gabor transform (GT) and Wigner distribution function (WDF) are famous time–frequency methods, useful for analyzing music signals such as notes played on a piano, a flute or a guitar.

Knowledge about music signal

Music is a type of sound that has some stable frequencies in a time period. Music can be produced by several methods. For example, the sound of a piano is produced by striking strings, and the sound of a violin is produced by bowing. All musical sounds have their fundamental frequency and overtones. Fundamental frequency is the lowest frequency in harmonic series. In a periodic signal, the fundamental frequency is the inverse of the period length. Overtones are integer multiples of the fundamental frequency.

Table. 1 the fundamental frequency and overtone
FrequencyOrder
f = 440 HzN = 1Fundamental frequency1st harmonic
f = 880 HzN = 21st overtone2nd harmonic
f = 1320 HzN = 32nd overtone3rd harmonic
f = 1760 HzN = 43rd overtone4th harmonic

In musical theory, pitch represents the perceived fundamental frequency of a sound. However the actual fundamental frequency may differ from the perceived fundamental frequency because of overtones.

Short-time Fourier transform

Continuous STFT

Short-time Fourier transform is a basic type of time–frequency analysis. If there is a continuous signal x(t), we can compute the short-time Fourier transform by

STFT\left\{x(t)\right\}\equivX(t,f)=

infty
\int
-infty

x(\tau)w(t-\tau)e-jd\tau

where w(t) is a window function. When the w(t) is a rectangular function, the transform is called Rec-STFT. When the w(t) is a Gaussian function, the transform is called Gabor transform.

Discrete STFT

However, normally the musical signal we have is not a continuous signal. It is sampled in a sampling frequency. Therefore, we can’t use the formula to compute the Rec-short-time Fourier transform. We change the original form to

X(n\Deltat,m\Deltaf)=

n+Q
\sum
p=n-Q

x(p\Deltat)e-j\Deltat

Let

t=n\Deltat

,

f=m\Deltaf

,

\tau=p\Deltat

and

B=Q\Deltat

. There are some constraints of discrete short-time Fourier transform:

\Deltat\Deltaf=

1
N

,

where N is an integer.

N\ge2Q+1

\Delta<

1
2fmax
, where

fmax

is the highest frequency in the signal.

STFT example

Figure 1 shows the waveform of an audio file "" with 44100 Hz sampling frequency. Figure 2 shows the time-frequency plot of the short-time Fourier transform (in particular, Gabor transform) results of the audio file. In this plot, horizontal lines with frequencies not greater than 230 Hz represent the fundamental frequencies while horizontallines with frequencies above 230 Hz represent the harmonic components. Observe that from t = 0 to 0.5 second, a chord consists of three notes (C-E-G) is played. The chord then changed to C-E-A at t = 0.5, and then changed again to D-F-A at t = 1.

Spectrogram

Figure 3 shows the spectrogram of the audio file shown in Figure 1. Spectrogram is the square of STFT, time-varying spectral representation. The spectrogram of a signal s(t) can be estimated by computing the squared magnitude of the STFT of the signal s(t), as shown below:

spectrogram(t,f)=\left|STFT(t,f)\right|2

Although the spectrogram is profoundly useful, it still has one drawback. It displays frequencies on a uniform scale. However, musical scales are based on a logarithmic scale for frequencies. Therefore, we should describe the frequency in logarithmic scale related to human hearing.

Wigner distribution function

The Wigner distribution function can also be used to analyze music signals. The advantage of the Wigner distribution function is the high clarity of the output; however, it is computationally expensive and has a cross-term problem, so it's more suitable to analyze signals without more than one frequency at the same time.

Formula

The Wigner distribution function

Wx(t,f)

is:

Wx(t,f)=

infty
\int
-infty

x(t+\tau/2)x*(t-\tau/2)e-j2\pi\taufd\tau,

where x(t) is the signal, and x*(t) is the conjugate of the signal.

See also

Sources