Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/corbanbrook/spectrotune
Performs pitch detection on a polyphonic audio source and outputs to MIDI
https://github.com/corbanbrook/spectrotune
Last synced: 11 days ago
JSON representation
Performs pitch detection on a polyphonic audio source and outputs to MIDI
- Host: GitHub
- URL: https://github.com/corbanbrook/spectrotune
- Owner: corbanbrook
- License: mit
- Created: 2009-09-01T19:43:49.000Z (about 15 years ago)
- Default Branch: master
- Last Pushed: 2018-10-06T17:22:41.000Z (about 6 years ago)
- Last Synced: 2024-08-02T14:10:52.907Z (4 months ago)
- Language: Processing
- Homepage: weare.buildingsky.net
- Size: 33.5 MB
- Stars: 100
- Watchers: 9
- Forks: 12
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Spectrotune
Spectrotune is a [Processing](https://www.processing.org) application which scans a
polyphonic audio source (in wav, mp3, etc formats), performs pitch detection and
outputs to MIDI.Spectrotune offers adjustable options to help improve pitch detection, including:
* Pitch Class Profiling (PCP)
* FFT Bin Distance Weighting
* FFT Windowing - rectangular, hamming, hann, triangular, cosine, and blackman windows.
* FFT Linear Equalization - attenuate low freqencies and amplify high freqencies.
* Harmonic Filter - filters peak harmonics.* Noise Smoothing - rectangle, triangle, and adjacent average smoothers.
* Parabolic Peak Interpolation.* Adjustable Peak Threshold.
* Octave toggles - narrow the spectrum to the octaves you are interested in recording.
* MIDI octave channel segmenting - route each octave to its own MIDI channel.## Install and Basic Usage (macOS Standalone Application):
Spectrotune is now available in a standalone application for macOS which you can download
from [Downloads/Releases](https://github.com/corbanbrook/spectrotune/downloads)* Open DMG file.
* Put audio files(wav, mp3, etc) in the music folder.
(Note: music folder *must* be relative to the spectrotune.app path)* Launch application.
* Click 'Files' tab and select the audio file you wish to open.
* Record with MIDI sequencer.
Currently only exported as an application for macOS as I dont have any other platforms to
test on. If you want a standalone application for Windows or Linux please send me a request or
install processing and export the application yourself.If you wish to play with the source code you can follow the instructions below to install
processing and the required libraries.## Processing Install (all platforms):
* Install [processing](https://www.processing.org)
* Install [rwmidi](https://web.archive.org/web/20110606063738/http://ruinwesen.com/support-files/rwmidi-0.1c.zip)* Install [ControlP5](http://www.sojamo.de/libraries/controlP5/)
* Clone Spectrotune and place inside your Processing Sketchbook directory
```
cd ~/Documents/Processing (this is where I keep mine)
git clone https://github.com/corbanbrook/spectrotune.git
```
* Make sure your operating systems MIDI interface is configured properly.* Put audio files (wav, mp3, etc) you wish to open in the 'music' folder within the route of the sketch.
* Open MIDI enabled sequencer software, ie Reason, Cubase, Fruityloops, etc.
* Open processing.
* Run.
If you are using a MIDI enabled sequencer software you should be able to record
the input and pass on to any soft synth, or hardware synth.## Keyboard Commands:
| Command | Result |
|-------|---------------------------------------------|
| 0-7 | Octave filter: toggle octaves 0 to 7 On/Off |
| p | Pitch Class Profile (PCP) toggle On/Off |
| e | Linear EQ toggle On/Off |
| h | Harmonic Filter toggle On/Off |
| m | Mute audio toggle On/Off |
| n | MIDI output toggle On/Off |
| SPACE | Pause/Play toggle |
| RIGHT/LEFT | Peak Threshold Increase/decrease |
| ESC | Quit |