Skip to content

Tatsh/bpmdetect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

466 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

BPM Detect

C++ GitHub tag (with filter) License GitHub commits since latest release (by SemVer including pre-releases) QA Dependabot GitHub Pages Stargazers pre-commit CMake Prettier

@Tatsh Buy Me A Coffee Libera.Chat Mastodon Follow Patreon

BPM Detect is an automatic BPM (beats per minute) detection utility.

It uses SoundTouch's BPM library for detecting BPMs, ffmpeg for reading and writing BPMs to tags and Qt for the GUI. It supports detection with any audio format that ffmpeg can read. However, for files containing multiple audio tracks, only the first seen will be used for detection.

On Windows, this application requires Media Feature Pack to be installed.

Some formats cannot save tags. The application will not warn you about these. M4A (AAC, 3GP, etc) store tags in the tmpo atom which is limited to integers but this will not be seen as saved on restart because ffmpeg does not parse the tmpo atom when reading the file.

Packaging status

Original project

Building

Required dependencies:

  • CMake at build time
  • ECM at build time
  • Qt 6.7 or later with Gui and Multimedia modules
  • SoundTouch 2.3.2 or later
  • ffmpeg 6 or later

In the cloned project:

mkdir build
cmake ..
make

On MacPorts, set the CMAKE_PREFIX_PATH variable to /opt/local/libexec/ffmpeg7;/opt/local/libexec/qt6.

To build tests, add -DBUILD_TESTS=ON. Add -DCOVERAGE=ON to enable coverage (Clang and GCC only).

Translation support has been added but there are currently no translations. This can be enabled with -DI18N=ON.