Fourier Transform Pre-Laboratory

EEEN 462 - Understanding Audio Signal Processing through Shazam's Fingerprinting Technology

For Undergraduate Electrical Engineering Students

Laboratory Objectives

Theory: Fourier Transform in Shazam

What is Fourier Transform?

The Fourier Transform decomposes a function of time (a signal) into its constituent frequencies. It transforms a signal from the time domain to the frequency domain, revealing the frequency components present in the signal.

Mathematically, for a continuous signal: F(ω) = ∫ f(t) e^(-iωt) dt

How Shazam Uses Fourier Transform

Shazam creates a unique "fingerprint" for each song by analyzing its audio signal:

  1. Captures a short audio sample from the environment
  2. Applies Short-Time Fourier Transform (STFT) to create a spectrogram
  3. Identifies prominent frequency peaks in the spectrogram
  4. Creates hashes from pairs of frequency peaks and their time offsets
  5. Matches these hashes against a database of known song fingerprints

Key Concepts in This Lab

  • Time-domain representation: Amplitude vs. time
  • Frequency-domain representation: Amplitude vs. frequency
  • Spectrogram: 3D visualization showing frequency content over time
  • Audio fingerprinting: Creating unique identifiers from audio features

Interactive Simulation

Generate audio signals and analyze their frequency components using Fourier Transform.

440

Time Domain Signal

Frequency Domain (Fourier Transform)

Spectrogram (Time-Frequency Representation)

Shazam Fingerprinting Simulation

Simulate how Shazam creates audio fingerprints from frequency data. Select a sample audio and see the fingerprinting process.

1

Audio Capture

Record audio sample

2

STFT Analysis

Apply Short-Time Fourier Transform

3

Peak Finding

Identify prominent frequency peaks

4

Fingerprint Creation

Generate hashes from peak pairs

5

Database Matching

Match against known songs

Frequency Analysis Results

Frequency (Hz) Magnitude Note Octave

Shazam Match Found!

Song: Beethoven - Für Elise

Artist: Ludwig van Beethoven

Match Confidence: 92%

This simulation demonstrates how Shazam identifies songs by matching frequency patterns.