Sign inSign up

yxchen1994/bpm-finder-cli

By yxchen1994

Updated 7 months ago

CLI BPM finder for audio files. Analyze song tempo locally and explore BPM Finder.

Image
Developer tools
0

1.1K

yxchen1994/bpm-finder-cli repository overview

BPM Finder CLI

BPM Finder homepage: https://bpm-finder.net/

yxchen1994/bpm-finder-cli is a lightweight Docker-friendly BPM finder for local audio analysis. It extracts a mono low-pass waveform with ffmpeg, detects tempo with the peak-grouping approach behind web-audio-beat-detector, and prints a clean BPM result for DJs, producers, and music tool builders.

Why This Image Exists

  • Build a Docker Hub backlink that points directly to the BPM Finder homepage.
  • Offer a real CLI instead of a placeholder image.
  • Keep the image independent from the main Next.js website codebase.

Quick Start

docker run --rm -v "$PWD:/data" yxchen1994/bpm-finder-cli:latest analyze /data/song.mp3

JSON output:

docker run --rm -v "$PWD:/data" yxchen1994/bpm-finder-cli:latest analyze /data/song.mp3 --json

Write the JSON result to a mounted file:

docker run --rm -v "$PWD:/data" yxchen1994/bpm-finder-cli:latest \
  analyze /data/song.mp3 --output /data/song.bpm.json

CLI Usage

bpm-finder analyze <file> [--json] [--min-tempo <number>] [--max-tempo <number>] [--output <path>]

Supported options:

  • --json prints machine-readable output.
  • --min-tempo sets the lower tempo bound.
  • --max-tempo sets the upper tempo bound.
  • --output writes the JSON payload to a file.

Example Output

{
  "file": "/data/song.mp3",
  "fileSizeBytes": 96698,
  "bpm": 101,
  "tempo": 100.613,
  "offset": 0.031,
  "peakCount": 1,
  "duration": 4.781,
  "sampleRate": 44100,
  "channels": 1,
  "detector": "web-audio-beat-detector-inspired",
  "homepage": "https://bpm-finder.net/"
}

Use Cases

  • Check the BPM of an MP3 or WAV file inside a Dockerized workflow.
  • Add simple tempo detection to internal music tooling.
  • Publish a small utility image on Docker Hub with a clear backlink to BPM Finder.

Notes

  • The container includes ffmpeg by default.
  • Audio is processed locally inside the container.
  • For the full web app and additional tools, visit BPM Finder.


Tag summary

Content type

Image

Digest

sha256:12b19a1a7

Size

95.3 MB

Last updated

7 months ago

docker pull yxchen1994/bpm-finder-cli