Skip to content

Arjun-S19/BeatKey

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BeatKey

What is BeatKey?

That's a good question, BeatKey is me exploring the audio programming space and making things along the way. I originally wanted BeatKey to be a software where you could find the BPM and key/scale of an audio, but as I continued to learn and explore the space, it's shaped into a more exploratory project.

Functions of BeatKey, as of now:

  • Extracting Duration
  • Extracting Sample Rate
  • Extracting BPM
  • Extracting Key and Scale
    • via 2 different algorithms in the Essentia library
  • Adjusting Tempo/BPM and Pitch
    • GUI with the ability to load an audio file and change its tempo and pitch

Dependencies:

  • librosa
  • essentia
  • numpy
  • matplotlib
  • tkinter
  • pyrubberband
  • soundfile

Sample Audio Info:

Sample Audio Genres: Ambient, Blues, Classical, Country, Dance, Easy Listening, Electronic, Folk, Hip-hop, Industrial & Noise, Jazz, Metal, New Age, Pop, Psychedelia, Punk, R&B, Reggae, Regional - Afro, Regional - Bollywood, Regional - K-Pop, Regional - Reggaeton, Regional - Tamil Kuthu, Rock

Why these Genres?

  • I picked genres that are popular and have a wide range of sub-genres
  • I also added some regional genres to make it more globally diverse

Why these Tracks/Songs/Audios?

  • I picked tracks that are popular and well-known within their respective genres
  • I also tried to pick tracks that are diverse in terms of mood, key, and time period

PLS READ, i put a lot of time into this ;-;

Data analysis from testing key/scale and BPM extraction

About

Exploratory audio programming project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages