Java Beat Detection Program - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

Java Beat Detection Program

Description:

This gives a picture of sudden increases in each band. Peak Finding ... the end of the data. Results. St. Etienne. Chemical Brothers. Beethoven. Tito Puente ... – PowerPoint PPT presentation

Number of Views:130
Avg rating:3.0/5.0
Slides: 13
Provided by: jonathan279
Category:

less

Transcript and Presenter's Notes

Title: Java Beat Detection Program


1
Java Beat Detection Program
  • A Java Application Based on Eric Scheirer and
    Others

2
Sources
  • Tempo and Beat Analysis of Acoustic Musical
    Signals by Eric Scheirer
  • Beat Detection Algorithms by Frederic Patin
    http//www.gamedev.net/reference/programming/featu
    res/beatdetection/
  • Beat This A Beat Synchronization Project by
    Cheng, Nazer, Uppuluri, Verret http//www.owlnet.r
    ice.edu/elec301/Projects01/beat_sync/beatalgo.htm
    l

3
Program Input
  • Wav file
  • 8-bit
  • Mono
  • 22050 samples/sec

4
Step 1 FFT
  • Performed on sliding frame of 1024 samples.
  • With each step, the frame moves forward 256
    samples (so chunks overlap)
  • Resolution of 16.1 ms
  • Min frequency of 22.5 Hz

5
FFT (cont.)
  • Frequency outputs are grouped into 9 bands
  • Varying sizes, as suggested by Patin
  • Different from Scheirer and Beat This web site
  • Use half-hanning window for smoothing

6
Differentiation
  • Scheirers method for finding onsets in each band
  • For each band, at each frame, computeDiffbandf
    BandDatabandf-BandDatabandf-1
  • Half-wave rectify If(BandDatabandf lt0)
    BandDatabandf 0
  • This gives a picture of sudden increases in each
    band

7
Peak Finding
  • Start a few seconds into the recording (for comb
    filter, explained next)
  • Take a window of about 20 frames.
  • Sum frequency data across bands.
  • Consider the peak to be our first estimation of a
    beat

8
Comb Filter
  • Alternate to autocorreclation described by
    Scheirer for finding periods of repetition.
  • I use a simplified method seems to work better
    than Scheirers or Beat This.

9
Comb Filter (cont.)
  • Given a starting time t,
  • For each band, b, and for every candidate period
    T CF(T) Difft Difft-T Difft-nT
  • Sum results across bands
  • Maximum value is the new estimate for the musics
    rhythmic period.

10
Peak Finding Comb Filter
  • When we find a peak at time t
  • Estimate period T starting from t.
  • Begin looking for a new peak in the neighborhood
    of tT.
  • Repeat find peak, find period, find peak, find
    period until the end of the data.

11
Results
  • St. Etienne
  • Chemical Brothers
  • Beethoven
  • Tito Puente

12
Questions?
Write a Comment
User Comments (0)
About PowerShow.com