The Magic of Music Matching
summary
Recreates how a Shazam clone is built in a weekend: capture microphone audio with Java AudioSystem, decode MP3s with JLayer/MP3SPI, compute windowed FFTs to produce spectrograms, compress each time-slice to a 46‑bit fingerprint stored in a long, index fingerprints for about 3,000 songs, and match by hash plus offset to identify song and exact timestamp. Demoed working recognition and movie-syncing; approach is fast and practical but needs refinement to scale.
AI-written summary · about
chapters (18)
- 0:00Introduction and speaker struggles
- 1:02Speaker introduction and background
- 2:06How programming demystified computers for me
- 4:33The magical moment of discovering Shazam
- 5:59Recording audio in Java with DataLine
- 8:31Understanding microphone data and sound waves
- 11:47Fourier transformation explained visually
- 15:49Limitations of Fourier transformation in time
- 17:13Windowing to preserve time information
- 19:01Creating a spectrum analyzer in Java
- 21:33Recap of sound, microphones, and Fourier
- 22:14Fingerprinting songs with spectrum data
- 24:49Processing MP3 files for fingerprinting
- 26:40Matching microphone input to song database
- 28:07Live demo of the music matching system
- 32:32Matching movie audio and synchronization
- 34:55Applications beyond music matching
- 36:46Recap and conclusion of the weekend project
related talks
19mAudio Recognition and Connected Living
10mHow Shazam Predicts a Song's Future
51mThe Merger of Machine Learning, Music and Programming
58mMusic Generation via Masked Acoustic Token Modeling
43mMaking machines that make music
30mCats, The Musical! Algorithmic Song Meow-ification
41mMusic and Machine Learning
14mThe nuts and bolts of music source separation
