A tool that downloads a track, analyzes its audio characteristics, and generates per-song Logic Pro plugin settings for vocal practice.
qobuz-to-logic.py takes a song name, searches Qobuz for the track, downloads it as a hi-res FLAC, converts it to a 24-bit WAV, and analyzes the audio to derive recommended plugin settings for your vocal chain in Logic Pro. It generates settings for two microphones simultaneously — a Rode NT1 5th Gen for voice practice and a Shure Beta 58A for stage presence work — so you can switch between them without re-running the script.
The analysis measures BPM, spectral brightness, RMS energy, and low-mid density to determine EQ curves, compressor behavior, reverb type and amount, delay recommendations, and backing track levels on a per-song basis. Song metadata (BPM, key, time signature) is sourced from GetSongBPM when available, with local audio analysis as a fallback.
The fastest way to learn what any parameter does:
Once you know what "too much 5 kHz" sounds like, you'll recognize it instantly in future sessions.
| Condition | What You Hear |
|---|---|
| Threshold too high | Beginnings of words get chopped — soft consonants ("th", "wh", "f") disappear. Sounds like someone hitting a mute button mid-word. |
| Threshold too low | Room hum, air conditioning, or mic hiss bleeds between phrases. |
| Just right | Quietest phrase in the song comes through cleanly. No noise between phrases. |
| Condition | What You Hear |
|---|---|
| Cutoff too high | Voice loses chest resonance — sounds thin, hollow, "telephone-like". |
| Cutoff too low | Low-frequency wooliness, voice sounds boomy or boxy. |
| Just right | Rumble and handling noise gone, but chest voice still has body. |
| Condition | What You Hear |
|---|---|
| Too much cut | Low-mids sound hollow, voice loses warmth. |
| Not enough cut | "Mud" — muffled, boxy quality. Words lose clarity. |
| Just right | Voice is clear and defined without sounding thin. |
| Condition | What You Hear |
|---|---|
| Too much boost | Brittle, fatiguing. S and T sounds become piercing. |
| Not enough boost | Voice sits behind instruments. Words are hard to understand. |
| Just right | Voice moves forward in the mix. Consonants are crisp but nothing stings. |
| Condition | What You Hear |
|---|---|
| Over-compressed | Vocal loses its life. Loud and quiet notes are the same volume. May hear audible "pumping". |
| Under-compressed | Vocal jumps out on loud phrases, disappears on quiet ones. |
| Just right | Vocal sits evenly but still has dynamic expression. |
| Condition | What You Hear |
|---|---|
| Too wet | Words become indistinct. Voice sounds distant, like a cave. |
| Too dry | Voice sounds disconnected from the music. Sterile, exposed. |
| Just right | You feel the space more than hear it. Voice sits inside the mix. |
| Genre | Ratio | Attack | Release |
|---|---|---|---|
| Ballads | 2:1–3:1 | 20–30 ms | 100–200 ms |
| Mid-tempo rock | 4:1 | 10–15 ms | 40–80 ms |
| Fast/aggressive | 4:1–6:1 | 5–10 ms | 30–50 ms |
| Pop punk | 4:1 | 10–20 ms | 60–100 ms |
| Algorithm | Best For |
|---|---|
| Plate | Rock, pop rock — bright, dense, standard for rock vocals |
| Hall | Epic ballads, emotional climaxes — grandeur and space |
| Room | Garage rock, punk — natural, close, like a live venue |
Loupedeck CT (MIDI CC) → Logic Pro Smart Controls → Plugin Parameters
The Loupedeck sends MIDI CC messages. Smart Controls receive them and route to plugin parameters. Map the hardware once, remap plugins through Smart Controls if the chain changes.
Instead of loading channel strip presets (which causes an audio gap), create two tracks with the same input — one per mic. Mute/unmute to switch instantly.
| Track | Channel Strip | Status |
|---|---|---|
| Vocal - NT1 | Full chain, NT1 baseline | Unmuted when using NT1 |
| Vocal - Beta 58A | Full chain, Beta 58A baseline | Unmuted when using Beta 58A |
| Backing Track | Stereo audio | Always on |
| Dial | Parameter | Range |
|---|---|---|
| 1 | Compressor Threshold | -35 to -5 dB |
| 2 | ChromaVerb Wet | 0% to 50% |
| 3 | Backing Track Level | -inf to 0 dB |
| 4 | De-Esser Sensitivity | 0% to 100% |
| 5 | EQ Band 3 Gain (300 Hz) | -8 to 0 dB |
| 6 | Monitor Output | -inf to 0 dB |
| Button | Action |
|---|---|
| Page 1 | Tape Delay bypass, Noise Gate bypass, secondary knobs |
| Page 2 | Mute/Unmute NT1, Mute/Unmute Beta 58A, Bypass All FX |
B to open Smart Controls on each vocal trackMainStage ($29.99) is Apple's live performance companion to Logic Pro. Same plugins, same engine, but organized around patches and setlists. Your Logic Pro channel strip settings transfer directly.
| Logic Pro | MainStage | |
|---|---|---|
| Purpose | Recording/production | Live performance |
| Song switching | Open new project (slow) | Select next patch (instant) |
| Per-song settings | Manual recall | Auto-loaded per patch |
| Backing tracks | Timeline audio track | Playback plugin per song |
| Price | $299 | $29.99 |
| Plugin | Practice | Live |
|---|---|---|
| Gate Threshold | -35 dB | -25 to -20 dB |
| EQ High Pass | 80-100 Hz | 100-120 Hz |
| EQ 300 Hz cut | -3 dB | -4 to -5 dB |
| EQ 5 kHz boost | +2-3 dB | +1-2 dB |
| Comp Threshold | -20 to -24 dB | -18 to -15 dB |
| ChromaVerb Wet | 13-22% | 8-12% |
| ChromaVerb Decay | 0.5-1.0s | 0.5-0.7s |
| ChromaVerb Algo | Per-song | Plate (default) |
Tier 1 — Start here: MacBook + MainStage handles vocal processing and backing tracks. Scarlett 2i2 as the interface. Single system.
Tier 2: Hardware vocal processor (TC-Helicon VoiceLive) handles vocals. MainStage handles backing tracks only. If laptop crashes, vocals stay live.
Tier 3: iConnectivity PlayAUDIO12 with two synced laptops + hardware vocal processor. Full redundancy.