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.4.tar.gz (6.4 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.4-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: audipart-0.0.4.tar.gz
  • Upload date:
  • Size: 6.4 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.4.tar.gz
Algorithm Hash digest
SHA256 3bbc17a66cd217ff9716d0dcc25bcad4262101cec52fbfa6c79483c327903c39
MD5 2debb3272cc07de7fea15a006b27582d
BLAKE2b-256 4d2d6f688f80f21d331479a024bebdd52c1202de262aa436ca2a6d366f15eac5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: audipart-0.0.4-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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 24cae57df4c2d092a8ab022ba8f5636670b98874882a7f9fa4abbe7fe5e20647
MD5 d4422e1f83b0c7ed05837e448d98cb4d
BLAKE2b-256 ae524a60844dc860b4c256c07a87d4c44a210e80f4369962f4d1e0d3c51565e2

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