Harmonic Frequency Shifter

A VST3/AU audio plugin that combines frequency shifting with musical scale quantization for creative sound design.

Plugin Screenshot

What It Does

This plugin performs frequency shifting — moving all frequencies in your audio by a fixed Hz amount — while keeping the output musical through intelligent scale quantization.

Unlike pitch shifting (which preserves harmonic relationships), frequency shifting creates unique, often metallic or otherworldly tones. By adding scale quantization, you get the best of both worlds: the character of frequency shifting with musical coherence.

Features

Frequency Shift

±20,000 Hz range with linear or logarithmic control

Musical Quantization

Snap frequencies to any of 22 musical scales

Phase Vocoder

High-quality processing with minimal artifacts

Quality Modes

Low Latency, Balanced, or Quality presets

Spectrum Analyzer

Real-time visualization of frequency content

Dry/Wet Mix

Blend processed and original signals

Quick Start

  1. Download the plugin from the Releases page
  2. Install the VST3 or AU to your plugin folder
  3. Load in your DAW and start experimenting!

Basic Usage

Parameter Description
Shift (Hz) Amount to shift frequencies. Positive = up, negative = down
Quantize How strongly to snap to scale notes (0% = pure shift, 100% = fully quantized)
Root Note The root of your scale (C, C#, D, etc.)
Scale Choose from Major, Minor, Dorian, Pentatonic, Blues, and more
Dry/Wet Mix between original and processed audio

Creative Tips

Downloads

Get the latest release for your platform:

Platform Format Download
macOS VST3 Download
macOS AU Download
Windows VST3 Download

How It Works

The plugin uses a sophisticated DSP pipeline:

flowchart TD A[🎵 Audio Input] --> B[STFT Analysis] B --> C[Frequency Shift] C --> D[Scale Quantization] D --> E[Phase Vocoder] E --> F[ISTFT Synthesis] F --> G[🔊 Audio Output] B -->|Magnitude & Phase| C C -->|Shifted Spectrum| D D -->|Quantized to Scale| E E -->|Phase Coherent| F style A fill:#7c3aed,stroke:#9333ea,color:#fff style G fill:#cd8b32,stroke:#b8860b,color:#fff style B fill:#3d2963,stroke:#5b4180,color:#f5f0e6 style C fill:#3d2963,stroke:#5b4180,color:#f5f0e6 style D fill:#3d2963,stroke:#5b4180,color:#f5f0e6 style E fill:#3d2963,stroke:#5b4180,color:#f5f0e6 style F fill:#3d2963,stroke:#5b4180,color:#f5f0e6

The Algorithm

1. STFT (Short-Time Fourier Transform): Break audio into overlapping frames, apply window function, transform to frequency domain.

2. Frequency Shifting: Reassign each frequency bin by adding the shift amount:

\[f_{\text{new}} = f_{\text{original}} + \Delta f\]

3. Musical Quantization: For each frequency, find the nearest note in the selected scale:

\[\text{MIDI} = 69 + 12 \cdot \log_2\left(\frac{f}{440}\right)\] \[f_{\text{quantized}} = 440 \cdot 2^{\frac{\text{MIDI}_{\text{quantized}} - 69}{12}}\]

4. Phase Vocoder: Use identity phase locking (Laroche & Dolson) to maintain phase coherence between frames.

5. ISTFT: Overlap-add synthesis to reconstruct the time-domain signal.

For complete mathematical details, see Algorithm Documentation.

Documentation

System Requirements

Source Code

This project is open source! Check out the GitHub repository to:

Download Plugin View Source

Acknowledgments

Based on established DSP techniques:


Questions? Open an issue on GitHub.