Skip to main content

Extract and separate audio signals by pitch from `.mp3` or `.wav` files.

Project description

audio-pitch-separation

Extract and separate audio signals by pitch from .mp3 or .wav files. Harmonic, percussive, and note-wise components are visualized and saved as .wav files automatically.

track visualization

Features

  • Supports both mp3 and wav audio input
  • Separates harmonic & percussive components using HPSS
  • Extracts note-wise waveforms via Constant-Q Transform (CQT)
  • Visualizes all audio tracks as waveform plots
  • Saves each pitch as an individual .wav file
  • Easy GUI file picker (via PyQt5)

Installation

pip install audipart

Usage

python -m audipart
  1. A GUI window will prompt you to select an .mp3 or .wav audio file.
  2. From the selected audio, the following will be generated:
    • harmonic.wav and percussive.wav using HPSS
    • .wav files for each pitch from C2 to C8
    • A waveform plot saved as figure.png
  3. All output files will be saved in a new folder named after the input file (excluding the extension).

you can also import audipart like this demo.

Example

For example, if you select song.mp3, the following directory will be created:

song/
├── harmonic.wav
├── percussive.wav
├── C2.wav
├── C#2.wav
├── ...
├── C8.wav
└── figure.png

TODO

  • Extract note-wise MIDI representation

License

MIT License.

Acknowledgements

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

audipart-0.0.3.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

audipart-0.0.3-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file audipart-0.0.3.tar.gz.

File metadata

  • Download URL: audipart-0.0.3.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.16

File hashes

Hashes for audipart-0.0.3.tar.gz
Algorithm Hash digest
SHA256 30f6596f0504c5ddc2f979c7aed48b8559bc33e37ab7973371ce139cdaff97e6
MD5 380c35809a72a77b22589c8eeb804c9e
BLAKE2b-256 b3f1dbd917504cf89427fba7635408af88eb2739f5a0411178fdb8fe9bf107f3

See more details on using hashes here.

File details

Details for the file audipart-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: audipart-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 5.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.16

File hashes

Hashes for audipart-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 7515c652c6d1def7cffd957ec8841a6054a68bf1be083b43688bc1d1d11a5a3d
MD5 b920cca078a7033107d6ebfea8638d45
BLAKE2b-256 45890ec74ee740df3a10a48e0a6e20127c78215f22c2839cbfa8eea9fcfe995f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page