A lightweight module for easy beatmapping, key detection, and smart-slicing
Project description
WaveScout
WaveScout is a lightweight Python library for quickly analyzing the tempo and key of audio files and slicing them into smaller segments based on measures.
Features
- Analyzes tempo (BPM) and key of audio files
- Generates beat maps for audio files
- Slices audio files into smaller segments based on measures
- Exports plaintext beat map files and audio slices as a zip file
- Supports processing multiple audio files in a directory
Installation
You can install WaveScout using pip:
pip install wavescout
Dependencies
- numpy
- aubio
- pydub
Usage
Here's a simple example of using WaveScout:
from wavescout import WaveScout
# Analyze the audio file
scout = WaveScout("path/to/your/audio_file.mp3")
# Export the beat map to a plaintext file
scout.export("beat_map.txt")
# Export the audio slices to a zip file
scout.export("slices.zip", export_slices=True)
You can also use WaveScout to analyze and process multiple audio files in a directory:
from wavescout import WaveScoutFactory
factory = WaveScoutFactory("path/to/your/audio_files_directory")
maps = factory.create_maps()
for map in maps:
map.export(f"{map.input_file_basename}_beat_map.txt")
map.export(f"{map.input_file_basename}_slices.zip", export_slices=True)
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wavescout-0.1.0.tar.gz
(3.6 kB
view details)
Built Distribution
File details
Details for the file wavescout-0.1.0.tar.gz
.
File metadata
- Download URL: wavescout-0.1.0.tar.gz
- Upload date:
- Size: 3.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75b0ccd4e04ee3b38081a2ecbff9b8d838b3f39c3cf0a8bf62ce9e511e79ec6e |
|
MD5 | 347d160622fc17424cdd1defe197db5a |
|
BLAKE2b-256 | 0d1dee9755657f735a09a2f5adfaa212b070c90a649eba27a42ca6fedb20ca49 |
File details
Details for the file wavescout-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: wavescout-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5d2379180f9bedd5913984e715358b46efd614b8e6d1c2ec859646ab652415b4 |
|
MD5 | 925718782ae06acc982cbb10ba418da5 |
|
BLAKE2b-256 | 23b445c682b3e41fa3170de876860ebb9f0e36103091570b93ce7c741431c511 |