Tempo and Beat Analysis

Similar documents
Tempo and Beat Tracking

A MID-LEVEL REPRESENTATION FOR CAPTURING DOMINANT TEMPO AND PULSE INFORMATION IN MUSIC RECORDINGS

Beethoven, Bach, and Billions of Bytes

Music Information Retrieval

Music Representations. Beethoven, Bach, and Billions of Bytes. Music. Research Goals. Piano Roll Representation. Player Piano (1900)

Music Information Retrieval (MIR)

MUSIC is a ubiquitous and vital part of the lives of billions

Audio. Meinard Müller. Beethoven, Bach, and Billions of Bytes. International Audio Laboratories Erlangen. International Audio Laboratories Erlangen

Music Representations

Music Synchronization. Music Synchronization. Music Data. Music Data. General Goals. Music Information Retrieval (MIR)

Automatic music transcription

Informed Feature Representations for Music and Motion

Beethoven, Bach und Billionen Bytes

Music Processing Introduction Meinard Müller

Meinard Müller. Beethoven, Bach, und Billionen Bytes. International Audio Laboratories Erlangen. International Audio Laboratories Erlangen

Music Structure Analysis

Audio Structure Analysis

Music Information Retrieval (MIR)

TOWARDS AUTOMATED EXTRACTION OF TEMPO PARAMETERS FROM EXPRESSIVE MUSIC RECORDINGS

Further Topics in MIR

Book: Fundamentals of Music Processing. Audio Features. Book: Fundamentals of Music Processing. Book: Fundamentals of Music Processing

Music Segmentation Using Markov Chain Methods

A prototype system for rule-based expressive modifications of audio recordings

CS 591 S1 Computational Audio

Music Representations

Music Structure Analysis

Voice & Music Pattern Extraction: A Review

UNIVERSITY OF DUBLIN TRINITY COLLEGE

Query By Humming: Finding Songs in a Polyphonic Database

THE importance of music content analysis for musical

Topic 10. Multi-pitch Analysis

Onset Detection and Music Transcription for the Irish Tin Whistle

Instrument Recognition in Polyphonic Mixtures Using Spectral Envelopes

Robert Alexandru Dobre, Cristian Negrescu

Topic 11. Score-Informed Source Separation. (chroma slides adapted from Meinard Mueller)

HUMAN PERCEPTION AND COMPUTER EXTRACTION OF MUSICAL BEAT STRENGTH

APPLICATIONS OF A SEMI-AUTOMATIC MELODY EXTRACTION INTERFACE FOR INDIAN MUSIC

Video-based Vibrato Detection and Analysis for Polyphonic String Music

TOWARDS IMPROVING ONSET DETECTION ACCURACY IN NON- PERCUSSIVE SOUNDS USING MULTIMODAL FUSION

A REAL-TIME SIGNAL PROCESSING FRAMEWORK OF MUSICAL EXPRESSIVE FEATURE EXTRACTION USING MATLAB

Audio Structure Analysis

Drum Sound Identification for Polyphonic Music Using Template Adaptation and Matching Methods

Laboratory Assignment 3. Digital Music Synthesis: Beethoven s Fifth Symphony Using MATLAB

Pitch. The perceptual correlate of frequency: the perceptual dimension along which sounds can be ordered from low to high.

TOWARD AN INTELLIGENT EDITOR FOR JAZZ MUSIC

Automatic Piano Music Transcription

GCT535- Sound Technology for Multimedia Timbre Analysis. Graduate School of Culture Technology KAIST Juhan Nam

CSC475 Music Information Retrieval

An Examination of Foote s Self-Similarity Method

Topic 4. Single Pitch Detection

Music Database Retrieval Based on Spectral Similarity

OBJECTIVE EVALUATION OF A MELODY EXTRACTOR FOR NORTH INDIAN CLASSICAL VOCAL PERFORMANCES

Automatic Rhythmic Notation from Single Voice Audio Sources

Pitch-Synchronous Spectrogram: Principles and Applications

MUSI-6201 Computational Music Analysis

Music Radar: A Web-based Query by Humming System

SINGING PITCH EXTRACTION BY VOICE VIBRATO/TREMOLO ESTIMATION AND INSTRUMENT PARTIAL DELETION

Automatic Construction of Synthetic Musical Instruments and Performers

CS229 Project Report Polyphonic Piano Transcription

AUTOREGRESSIVE MFCC MODELS FOR GENRE CLASSIFICATION IMPROVED BY HARMONIC-PERCUSSION SEPARATION

Simple Harmonic Motion: What is a Sound Spectrum?

Music Complexity Descriptors. Matt Stabile June 6 th, 2008

NOTE-LEVEL MUSIC TRANSCRIPTION BY MAXIMUM LIKELIHOOD SAMPLING

DAT335 Music Perception and Cognition Cogswell Polytechnical College Spring Week 6 Class Notes

Topics in Computer Music Instrument Identification. Ioanna Karydi

Audio Structure Analysis

Pitch Perception and Grouping. HST.723 Neural Coding and Perception of Sound

AUTOMASHUPPER: AN AUTOMATIC MULTI-SONG MASHUP SYSTEM

STRUCTURAL SEGMENTATION AND VISUALIZATION OF SITAR AND SAROD CONCERT AUDIO

Honours Project Dissertation. Digital Music Information Retrieval for Computer Games. Craig Jeffrey

2. AN INTROSPECTION OF THE MORPHING PROCESS

Timing In Expressive Performance

6.5 Percussion scalograms and musical rhythm

Introductions to Music Information Retrieval

Data Driven Music Understanding

Methods for the automatic structural analysis of music. Jordan B. L. Smith CIRMMT Workshop on Structural Analysis of Music 26 March 2010

Transcription An Historical Overview

Measurement of overtone frequencies of a toy piano and perception of its pitch

Drum Source Separation using Percussive Feature Detection and Spectral Modulation

PULSE-DEPENDENT ANALYSES OF PERCUSSIVE MUSIC

Rhythm and Transforms, Perception and Mathematics

Transcription of the Singing Melody in Polyphonic Music

A Parametric Autoregressive Model for the Extraction of Electric Network Frequency Fluctuations in Audio Forensic Authentication

POLYPHONIC INSTRUMENT RECOGNITION USING SPECTRAL CLUSTERING

A METHOD OF MORPHING SPECTRAL ENVELOPES OF THE SINGING VOICE FOR USE WITH BACKING VOCALS

Automatic Classification of Instrumental Music & Human Voice Using Formant Analysis

POST-PROCESSING FIDDLE : A REAL-TIME MULTI-PITCH TRACKING TECHNIQUE USING HARMONIC PARTIAL SUBTRACTION FOR USE WITHIN LIVE PERFORMANCE SYSTEMS

TOWARDS AN EFFICIENT ALGORITHM FOR AUTOMATIC SCORE-TO-AUDIO SYNCHRONIZATION

Lecture 9 Source Separation

SHEET MUSIC-AUDIO IDENTIFICATION

A Parametric Autoregressive Model for the Extraction of Electric Network Frequency Fluctuations in Audio Forensic Authentication

Expressive Singing Synthesis based on Unit Selection for the Singing Synthesis Challenge 2016

Appendix A Types of Recorded Chords

ANALYZING AFRO-CUBAN RHYTHM USING ROTATION-AWARE CLAVE TEMPLATE MATCHING WITH DYNAMIC PROGRAMMING

AUDIO-BASED MUSIC STRUCTURE ANALYSIS

Computational Modelling of Harmony

Experiments on musical instrument separation using multiplecause

AUDIO-BASED MUSIC STRUCTURE ANALYSIS

AN INTEGRATED FRAMEWORK FOR TRANSCRIPTION, MODAL AND MOTIVIC ANALYSES OF MAQAM IMPROVISATION

IMPROVING RHYTHMIC SIMILARITY COMPUTATION BY BEAT HISTOGRAM TRANSFORMATIONS

Transcription:

Advanced Course Computer Science Music Processing Summer Term 2010 Meinard Müller, Peter Grosche Saarland University and MPI Informatik meinard@mpi-inf.mpg.de Tempo and Beat Analysis Musical Properties: Harmony Melody Rhythm Timbre Musical Properties: Harmony Melody Example 1: Britney Spears Oops!...I Did It Again Tempo: 100 BPM Rhythm: Tempo and beat analysis Timbre Example 2: Queen Another One Bites The Dust Example 3: Burgmueller Op100-2 Tempo: 110 BPM Tempo: 130 BPM

Example 4: Chopin Mazurka Op. 68-3 Example 4: Chopin Mazurka Op. 68-3 Tempo: Tempo: 50-200 BPM 200 50 Tempo curve Time (beats) Given a recording of a musical piece Example 5: Borodin String Quartet No. 2 Tempo: 120-140 BPM (roughly) determine the periodic sequence of beat positions: Tapping the foot to a piece of music Given a recording of a musical piece determine the periodic sequence of beat positions: Tapping the foot to a piece of music

1. Note onset detection 2. Tempo estimation 3. Beat tracking 1. Note onset detection 2. Tempo estimation 3. Beat tracking period := 60 / period (seconds) 1. Note onset detection 2. Tempo estimation 3. Beat tracking phase period Beat Sequence of equally spaced impulses, which periodically occur in music. The perceptually most salient pulse (foot tapping rate). Tempo The tempo of a piece is the inverse of the beat period. Instead of frequency in Hz, we think beats per minute (BPM). Tempo and beat are fundamental properties of music The beat provides the temporal framework of music (musical meaningful time axis) Beat-synchronous audio features Rhythmic similarity for music recommendation, genre classification, music segmentation Music transcription Commercial applications - automatic DJ / mixing - light effects Tasks 1. Note onset detection 2. Tempo estimation 3. Beat tracking

Overview Overview Tasks Challenges Tasks Challenges 1. Note onset detection Non-percussive music 1. Note onset detection Non-percussive music 2. Tempo estimation Soft note onsets 2. Tempo estimation Soft note onsets 3. Beat tracking Time-varying tempo 3. Beat tracking Time-varying tempo Note Finding perceptually relevant impulses in a music signal Musical accents, note onsets Onset: The exact time, a note is hit One of the three parameters defining a note (pitch, onset, duration) Change of properties of sound: Energy or Loudness Pitch or Harmony Timbre [Bello et al. 2005] Note Finding perceptually relevant impulses in a music signal Musical accents, note onsets Onset: The exact time, a note is hit One of the three parameters defining a note (pitch, onset, duration) Change of properties of sound: Energy or Loudness Pitch or Harmony Timbre [Bello et al. 2005] Note Amplitude Squaring Windowing Differentiation Half wave rectification Waveform Note Amplitude Squaring Windowing Differentiation Half wave rectification Squared waveform

Note Amplitude Squaring Windowing Differentiation Half wave rectification Energy envelope Note Amplitude Squaring Windowing Differentiation Half wave rectification Differentiated energy envelope capture energy changes Note Amplitude Squaring Windowing Differentiation Half-wave rectification Novelty curve only energy increases are relevant for note onsets Note Energy curve Note Energy curves only work for percussive music Many instruments have weak note onsets (strings) No energy increase observable in complex mixtures Energy curve / Note onsets positions More refined methods addressing different signal properties: Change of spectral content Change of pitch Change of harmony

Energy curves only work for percussive music Many instruments have weak note onsets (strings) No energy increase observable in complex mixtures Magnitude spectrogram X Steps: 1. Spectrogram (STFT) More refined methods addressing different signal properties: Change of spectral content Change of pitch Change of harmony n Hz Frequency in allows for detecting local energy increases in certain frequency ranges pitch, harmony, or timbre changes are captured [Bello et al. 2005] Compressed spectrogram Y Steps: Spectral difference Steps: 1. Spectrogram (STFT) 1. Spectrogram (STFT) 2. Logarithmic intensity 2. Logarithmic intensity 3. Differentiation n Hz Frequency in Y= log( 1+ C X ) n Hz Frequency in follows the human sensation of intensity dynamic range compression enhances low intensity values reduces influence of amplitude modulation first-order temporal difference captures changes of the spectral content only positive intensity changes considered [Bello et al. 2005] [Bello et al. 2005] Spectral difference Steps: Steps: 1. Spectrogram (STFT) 1. Spectrogram (STFT) 2. Logarithmic intensity 2. Logarithmic intensity quency in Hz Freq 3. Differentiation 4. Accumulation 3. Differentiation 4. Accumulation Novelty curve for each time step, accumulate all positive intensity changes encodes changes of the spectral content Novelty curve [Bello et al. 2005]

Steps: 1. Spectrogram (STFT) 2. Logarithmic intensity 3. Differentiation 4. Accumulation Steps: 1. Spectrogram (STFT) 2. Logarithmic intensity 3. Differentiation 4. Accumulation 5. Mean Subtraction Novelty curve / local average Novelty curve / local average subtractred Normalized novelty curve Steps: 1. Spectrogram (STFT) 2. Logarithmic intensity 3. Differentiation 4. Accumulation 5. Mean Subtraction Logarithmic compression is essential linear intensity Logarithmic compression is essential Logarithmic compression is essential logarithmic intensity C = 1 logarithmic intensity C = 10 41 42

Logarithmic compression is essential Spectrogram Compressed Spectrogram Novelty curve logarithmic intensity C = 1000 Peaks of the novelty curve are note onset candidates Peaks of the novelty curve are note onset candidates Extraction of note onsets by peak-picking methods (thresholding) Extraction of note onsets by peak-picking methods (thresholding) Peak-picking is a very fragile step in particular for soft onsets (strings) How to distinguish between true onset peaks and spurious peaks? Peak picking Peak picking [Bello et al. 2005] [Bello et al. 2005] Shostakovich 2 nd Waltz Drumbeat Going Home Lyphard melodie Borodin String Quartet No. 2 Por una cabeza Donau

, Summary Overview Compute a novelty curve that captures changes of certain signal properties Energy Spectrum Pitch, harmony, timbre Energy based methods work for percussive music only Peaks of the novelty curve indicate note onset candidates Extraction of note onsets by peak-picking methods (thresholding) Peak-picking is a very fragile step in particular for soft onsets (strings) [Bello et al. 2005] Tasks 1. Note onset detection 2. Tempo estimation 3. Beat tracking The beat is a periodic sequence of impulses Reveal periodic structure of the note onsets Avoid the explicit determination of note onsets (no peak picking) Analyze the novelty curve with respect to periodicities Methods for frequency / tempo estimation: 1. Fourier Transform 2. Autocorrelation Fourier-Tempogram Fourier-Tempogram Fourier-Tempogram Local periodicity kernel

Fourier-Tempogram Fourier-Tempogram Local periodicity kernel A time / tempo representation that encodes the local tempo of the piece A spectrogram (STFT) of the novelty curve Frequency axis is interpreted as tempo in BPM instead of frequency in Hz Reveals periodicities of the note onsets Fourier-Tempogram Fourier coefficient window function centered at Novelty curve Fourier tempogram for the tempo parameter in BPM and the set of tempo parameters [30:600] Windowed Autocorrelation Novelty curve Novelty curve Compare the novelty curve with time-shifted copies of itself

Windowed Autocorrelation Windowed Autocorrelation Time-lag (seconds) Time-lag (seconds) Windowed Autocorrelation Time-lag (seconds) Time-lag (seconds) Windowed Autocorrelation High values for time lags with high correlation Reveals periodic self-similarities Maximum for a lag of zero (no shift) Autocorrelation Time-lag (seconds) Time-lag (seconds)

High values for time lags with high correlation Reveals periodic self-similarities Maximum for a lag of zero (no shift) 1. Convert time-lag into tempo in BPM Tempo ( in BPM ) = 60 / Lag (in sec) Time-lag is not intuitive for music signals Autocorrelation Autocorrelation / Time-lag (seconds) 600 120 40 30 20 15 10 Time-lag (seconds) 1. Convert time-lag into tempo in BPM 1. Convert time-lag into tempo in BPM Tempo ( in BPM ) = 60 / Lag (in sec) Tempo ( in BPM ) = 60 / Lag (in sec) Still not a meaningful tempo axis 2. Interpolate to a linear tempo axis in a musically meaningful tempo range Autocorrelation / Tempo mapped autocorrelation 600 120 40 30 20 15 10 Time-lag (seconds) Lag g (seconds) Lag g (seconds) Time / Lag representation Time Lag is not musically meaningful

30 600 40 60 80 120 300 T 500 400 300 200 100 Rescaled to linear tempo axis: Tempogram Time Lag is not musically meaningful Tempograms Fourier Autocorrelation Autocorrelation window function centered at Autocorrelation tempogram Tempograms Tempograms Fourier Autocorrelation Fourier Autocorrelation 210 70

Tempogram Time-tempo representations that encode the local tempo of the piece over time Fourier Autocorrelation Extract musically meaningful tempo from tempograms Compare the novelty curve with templates consisting of sinusoidal kernels each representing a specific tempo Reveals periodic sequences of peaks Emphasizes harmonics, i.e. multiples of the tempo: Tatum - Level Compare the novelty curve with time-shifted copies of itself Reveals periodic self-similarities Emphasizes subharmonics, i.e. fractions of the tempo: Measure - Level Tempo (BPM M) Extract musically meaningful tempo from tempograms Piano Etude Op. 100 No. 2 by Burgmüller Tempo (BPM M) 1/4 1/8 1/16 What if the pulse level is changing? Local maximum of tempogram is correct in many cases Switching of predominant pulse level

Switching of predominant pulse level Prior knowledge: 1/4 note pulse level We can restrict the analysis to certain pulse levels Prior knowledge: 1/8 note pulse level Prior knowledge: 1/16 note pulse level 240 60 Prior knowledge: 1/16 note pulse level Without prior knowledge? Restrict the tempo to a certain range: For most pieces the tempo will be in the range of 60 to 240 BPM (close to the human heartbeat ~120 BPM)

240 240 60 60 Prevent pulse level changes: Assuming smooth tempo changes: the tempo of a piece will not change abruptly Compute a tempo curve that constrains the local tempo estimates to a single pulse level Prevent pulse level changes: Assuming smooth tempo changes: the tempo of a piece will not change abruptly Compute a tempo curve that constrains the local tempo estimates to a single pulse level and finds the best sequence of local tempi DTW: Boundary conditions: find path from (1,1) to (M,N) Tempocurve determination: Boundary conditions: find path from (1,.) to (M,.) Time Monotonicity: monotone in both axes Tempo T Monotonicity: monotone in time axis Step size condition: from (n,m) only to (n+1,m), (n, m+1) or (n+1, m+1) Step size condition: depending on allowed tempo change Time Time 93 94 Overview Tasks 1. Note onset detection 2. Tempo estimation 3. Beat tracking Given the tempo, find the best sequence of beats Complex Fourier tempogram contains magnitude and phase information The magnitude encodes how well the novelty curve resonates with a periodicity kernel of a tempo The phase aligns the periodicity kernels with the peaks of the novelty curve 96

Complex Fourier tempogram Locally aligned periodicity kernel Overlap-add accumulation of all kernels Overlap-add accumulation of all kernels Overlap-add accumulation of all kernels Halfwave rectification

o (BPM) Tempo Beethoven Symphony No. 5 Borodin String Quartet No. 2 150 Brahms Hungarian Dance No. 5 100 Borodin String Quartet No. 2 BPM) Tempo (B Brahms Hungarian Dance No. 5 Local tempo at time : [60:240] BPM Tempo (B BPM) Phase Sinusoidal kernel Periodicity curve

Summary References 1. Novelty curve (something is changing) Indicates note onset candidates Hard task for non-percussive instruments (strings) 2. Fourier tempogram Autocorrelation tempogram Musical knowledge (tempo range, continuity) 3. Beat tracking Find most likely beat positions Exploiting phase information from Fourier tempogram Peter Grosche and Meinard Müller Computing predominant local periodicity information in music recordings. Proceedings of the IEEE Workshop on Applications of Signal Processing to Audio and Acoustics (WASPAA), New Paltz, New York, USA, 2009. Geoffroy Peeters Template-based estimation of time-varying tempo Eurasip Journal on Applied Signal Processing,(Special Issue on Music Information Retrieval Based on Signal Processing) 2007. [Bello et al. 2005] J. P. Bello, L. Daudet, S. Abdallah, C. Duxbury, M. Davies, M. B. and Sandler A tutorial on onset detection in music signals. IEEE Transactions on Speech and Audio Processing, 2005. Tatum 1/8 Tatum 1/8 Beat 1/4 Beat 1/4 Measure Measure 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 Switching of predominant pulse level 1/4 note pulse level

1/8 note pulse level 1/16 note pulse level Examples: Strong or weak rhythm? Queen Another One Bites The Dust Shostakovich 2 nd Waltz Queen Another One Bites The Dust Shostakovich 2 nd Waltz Beethoven Pathetique Beethoven Symphony No. 5 Borodin String Quartet No. 2 Beethoven Symphony No. 5 Borodin String Quartet No. 2