Paper metodologico · v1.0

La scienza dietro Transientik Master

Come un motore deterministico ascolta una traccia, ne costruisce una rappresentazione strutturata e la traduce in decisioni di mastering sicure e spiegabili.

Versione
1.0 · metodologia
Data
Maggio 2026
Lettura
~12 min
Stato
Sintesi pubblica · motore di produzione in beta privata
A cura di
Transientik Labs
ABSTRACT

Parole chiave

  • EBU R128 / BS.1770-4
  • aggregazione su percentili pesati
  • target di banda adattivi
  • tracciamento delle decisioni
  • DSP deterministico
  • analisi frame-driven
  • loudness consapevole del rischio
  • automazione spiegabile

Transientik Master tratta il mastering come un problema di misura prima ancora che creativo. Una breve fase di ascolto cattura uno snapshot di analisi ogni 100 ms; il buffer viene poi ridotto al profilo strutturato della traccia usando statistiche su percentili pesati — così i frame carichi, tonali e percettivamente rilevanti pesano più delle intro silenziose, delle code di riverbero e dei crossfade. Un livello di pianificazione deriva politiche di loudness, alte frequenze e immagine stereo che tengono conto del rischio; una recipe per destinazione le traduce in target di parametro concreti, e ogni decisione viene registrata insieme alla sua motivazione. Il risultato è una catena pronta per il rilascio che può essere ispezionata, giustificata e riprodotta — bit per bit, run dopo run.

01 · Pipeline

Ascolta. Aggrega. Decide. Rifinisci.

Ogni esecuzione del wizard attraversa quattro stadi ben definiti. Ogni stadio ha un compito unico, ingressi e uscite ben specificati — non ci sono effetti collaterali nascosti tra l'uno e l'altro, e ciascuno è verificabile in modo indipendente con test mirati.

  1. 01
    Ascolta
    FFT · stereo · transienti · LUFS
  2. 02
    Aggrega
    P75 pesato + contrasto
  3. 03
    Decide
    planner + recipe + trace
  4. 04
    Rifinisci
    12 nudge percettivi
Fig. 1 — I quattro stadi della pipeline. Gli analizzatori live continuano a girare dopo la cattura, così i display BEFORE / AFTER restano accurati mentre l'utente rifinisce.
01
Ascolta
Quattro analizzatori girano in parallelo su ogni blocco audio: un analizzatore spettrale FFT con finestra di Hann e split a otto bande, un correlatore stereo per blocco, un detector di transienti a doppio envelope follower e un misuratore di loudness pienamente conforme a EBU R128 / BS.1770-4 (momentary, short-term, integrated, LRA, true peak con oversampling). Tutti scrivono in una struct di risultati lock-free letta dal resto del motore.
02
Aggrega
Durante la fase di ascolto, uno snapshot per frame viene catturato ogni 100 ms in un ring buffer pre-allocato. Al commit, il buffer viene ridotto al profilo strutturato TrackKnowledge usando statistiche su percentili pesati anziché medie aritmetiche — così un'intro silenziosa non può più diluire a metà la severità di mud di un ritornello.
03
Decide
Quando l'ascolto si chiude, l'utente sceglie la destinazione. Un livello di pianificazione (Loudness, High-Frequency, Stereo Safety) deriva politiche consapevoli del rischio dallo snapshot e da quella destinazione, e una recipe specifica per destinazione le traduce in target di parametro concreti. Cambiare destinazione sullo stesso snapshot è una semplice ri-risoluzione — niente secondo passaggio di ascolto. Ogni regola scrive una decisione con un reason code in un trace strutturato.
04
Rifinisci
L'utente regola dodici dimensioni percettive a partire dal risultato del motore. La scelta del wizard rimane visibile come baseline di riferimento ad ogni passo — un click la ripristina, su qualsiasi controllo, in qualsiasi momento.
02 · Ascolto

Quattro analizzatori, uno snapshot condiviso.

Ogni analizzatore ha un compito stretto e testabile. Tutti scrivono nella stessa struct di risultato lock-free, così il resto del motore vede una vista coerente del segnale ad ogni blocco.

Analizzatore spettrale

FFT · 8 bande

FFT real con finestra di Hann e split a otto bande calibrato su tracce di riferimento ben masterizzate. Ogni banda ha un livello target in dB, una tolleranza, un follower temporale asimmetrico e una curva di severità morbida. Una EMA broadband a finestra lunga è la scala di riferimento, così tagliare una banda non gonfia il rapporto di tutte le altre.

  • Livello, delta dal target e severità per banda
  • Tilt, flux e flatness spettrali
  • Crest factor per banda (peak / average)
  • Loudness range per banda (P95 − P10 su istogramma scorrevole)
module · 01

Analizzatore stereo

Correlatore di Pearson

Correlatore di Pearson tra L/R per blocco. Sotto una piccola soglia di energia tutto viene azzerato, così il silenzio non può far lampeggiare il radar su MONO o WIDE. Una seconda istanza gira dopo la catena per alimentare il lato AFTER di ogni display stereo.

  • Correlazione, larghezza, bilanciamento
  • Rischio di fase / compatibilità mono
  • Istanze pre / post catena per BEFORE / AFTER
module · 02

Analizzatore transienti

Doppio envelope

Due envelope follower sul mix mono rettificato — uno veloce e uno lento. La loro differenza è un segnale di forza del transiente per campione, mediato nel tempo in una confidenza di smussatura dei transienti. Un contatore di hit a parte fornisce la densità di transienti al secondo.

  • Forza del transiente, confidenza di smussatura
  • Densità di transienti (hit / secondo)
  • Rilevatore puro — indipendente dallo stadio correttivo
module · 03

Analizzatore di loudness

BS.1770-4 / EBU R128

K-weighted, gated, pienamente conforme alle specifiche. Momentary (400 ms), short-term (3 s), integrated (media gated su istogramma), LRA (EBU 3342) e true peak con oversampling tramite un FIR equiripple multi-stadio. Un warmup di 250 ms maschera il transitorio di prime dei filtri, così le prime letture non sono mai sporche.

  • LUFS momentary, short-term, integrated
  • Loudness range (LRA)
  • True peak con oversampling
  • Istanze pre / post catena
module · 04

Tutti e quattro gli analizzatori sono lock-free e allocation-free sul thread audio. Girano su ogni blocco dell'host, su ogni host, senza scorciatoie di bypass.

03 · Aggregazione

Perché un percentile batte la media.

Una traccia ha sezioni cariche e sezioni silenziose, momenti tonali e parti rumorose, intro che non dicono nulla e code che dicono ancora meno. Una media aritmetica le tratta tutte allo stesso modo. Un P75 pesato no.

0.000.250.500.751.00SEVERITÀ MUDMedia aritmetica · 0.31P75 pesato · 0.62abbassata dalle parti silenziosesegue solo le sezioni cariche del branointro · peso ≈ 0ritornello · peso ≈ 1coda · peso → 0TEMPO →
Fig. 2 — Severità di mud frame per frame su una traccia con intro silenziosa, ritornello caricato e coda lunga. La media aritmetica la legge come lievemente muddy. Il P75 pesato la legge come severamente muddy — che è quello che l'ascoltatore sente nel ritornello.
  • 01Ogni frame catturato porta un peso che dipende dalla sua loudness rispetto al valore integrato, dalla sua densità tonale e dalla sua posizione nella take. Le intro silenziose e gli ultimi secondi di una coda di riverbero collassano a peso quasi nullo.
  • 02Le grandezze di severità (mud, harsh, opacità dei transienti, problema stereo) vengono ridotte come P75 pesato del valore per frame — il 25% più carico e tonale della take. La media aritmetica viene comunque calcolata, ma solo come vista legacy.
  • 03Le grandezze di loudness (integrated LUFS, true peak, LRA) arrivano direttamente dal misuratore conforme alla specifica — sono già gated e finestrate a norma.
  • 04Se il materiale catturato è troppo breve, il motore emette un codice esplicito e dimezza i delta correttivi, invece di trattare lo snapshot come se fosse affidabile.
04 · Target adattivi

Otto bande che si muovono con la tua traccia.

I target di EQ hard-coded premiano le tracce che già suonano come il riferimento e penalizzano tutto il resto. Transientik Master confronta ogni banda con una curva attesa costruita per take a partire da destinazione, tilt spettrale, densità di flatness e loudness range — e interviene solo fuori dalla finestra di tolleranza della banda stessa.

-20-15-10-50dBSUBBASSMUDLOW-MIDMIDHARSHAIRSPARKLECURVA ATTESA (PER TAKE)ENERGIA MISURATAZONA MORTA ±1.5 DB
Fig. 3 — Layout a otto bande. La fascia grigia è la finestra di tolleranza per banda; i punti verdi sono l'energia misurata; la linea tratteggiata è la curva attesa adattiva.
  • dB attesi per banda = curva base + offset di destinazione + termine di tilt + termine di densità + termine di LRA.
  • Delta = misurato − atteso. Entro ±1.5 dB la banda viene loggata come bilanciata e non contribuisce a nessuna mossa di EQ.
  • Fuori dalla zona morta viene applicato un delta adattivo — limitato per destinazione dal pass di coerenza dell'EQ.
  • Una traccia volutamente scura, volutamente brillante o volutamente mid-forward non viene più scambiata per difettosa.
05 · Pianificazione

Tre planner tra conoscenza e parametri.

Tra lo snapshot e i target di parametro c'è un piccolo livello di pianificazione. Ogni planner è una funzione pura da (TrackKnowledge, Envelope) a una struttura dati a campi fissi — niente allocazioni sul thread audio, niente I/O, niente stato nascosto. I loro output alimentano poi la recipe della destinazione.

TrackKnowledgeEnvelope di destinazioneLoudnessPlanHighFrequencyPlanStereoSafetyPlanRegole della recipeCoerenza EQTarget di parametroINPLANOUT
Fig. 4 — I planner stanno tra lo snapshot e la recipe. Un pass di coerenza dell'EQ applica cinque regole sui quattro slot di EQ prima che i target vengano scritti nell'albero parametri.

LoudnessPlan

target consapevole del rischio

Sostituisce l'ingenua 'clamp(target − integrato, −6, +12)' con un effective target consapevole del rischio. Per il materiale dinamico, a rischio peak o con cattura corta il target di guadagno viene leggermente abbassato; il materiale denso e a basso LRA su destinazioni aggressive può guadagnare un filo di headroom in più — entro i limiti di destinazione.

  • global crest, density score
  • limiter risk score
  • effective target LUFS
  • manual gain consigliato (limitato per destinazione)

HighFrequencyPlan

politica HF coordinata

Coordina DeMetallic, Presence, Hi-Mid e High EQ tramite tre punteggi di rischio e quattro flag di permesso, al posto del vecchio trucco 'moltiplica Presence per un fattore fisso'. Le tracce sibilanti perdono Presence e il boost di air shelf; quelle metalliche vedono DeMetallic prioritario rispetto allo shelf alto.

  • metallic risk, sibilance risk, air need
  • Presence consentita / scala
  • high shelf consentito
  • flag di priorità DeMetallic

StereoSafetyPlan

larghezza consapevole della fase

Valuta la larghezza in basso, il bilanciamento e il rischio stereo globale, poi deriva una politica di mono-below, una quantità di stereo repair e una politica di stereo-link che dipende dalla destinazione. Il Vinyl ottiene sempre un mono in basso; la Soundtrack resta sempre link-safe.

  • low-end width risk, balance risk, global stereo risk
  • politica di mono-below
  • quantità di repair e politica di stereo-link sul bus
  • guard di widening
06 · Spiegabilità

Ogni mossa è una decisione. Ogni decisione ha una motivazione.

Ogni regola della recipe scrive una Decision strutturata in un DecisionTrace: quale parametro è cambiato, il valore prima e il valore dopo, con quale confidenza e a partire da quali segnali. Anche le mosse non eseguite vengono registrate — una mossa saltata è di per sé una decisione, e ha una motivazione.

OSSERVAZIONEmud contrast 3.4 dB · mud severity 0.61CONDIZIONEcontrast > 2.5 dB AND severity > 0.45AZIONEEQ low-mid → −2.1 dBMOTIVAZIONEMUD_CONTRAST_PERSISTENT · confidenza 0.86
Fig. 5 — Una singola decisione: quali segnali sono stati osservati, quale condizione è scattata, quale azione è stata applicata, quale motivazione è stata loggata. Ogni voce di un DecisionTrace ha questa forma.
  • 01Se un parametro si è mosso, il trace dice perché — e quale segnale lo ha innescato.
  • 02Se un parametro non si è mosso pur potendo, il trace dice perché no.
  • 03Le motivazioni sono valori enumerati espliciti, non stringhe libere — sopravvivono a round-trip, versioni di schema e test.
  • 04Un phrasebook deterministico traduce il trace in summary leggibili Simple, Technical e Debug — stesso input, stesso output, byte per byte.
07 · Problem Radar

Cinque assi, due poligoni, un quadro onesto.

Il Problem Radar mostra cosa il motore vede sulla traccia sorgente e quanto la catena sta lavorando per risolverlo. Ogni asse va da 0 (centro, pulito) a 1 (anello esterno, severo). Sugli stessi assi vengono disegnati due poligoni: un BEFORE in linea ambra tenue campionato dall'input grezzo, e un AFTER mint pieno guidato dai controlli attualmente attivi.

MUDHARSHCLIPPHASEWIDE
BEFORE · input grezzo
AFTER · risposta del plugin
  • MUDaccumulo nei medio-bassi
  • HARSHenergia nei medio-alti
  • CLIPrischio di true peak / clip
  • PHASEsicurezza di fase / mono
  • WIDEbudget di larghezza stereo
Fig. 6 — Radar pentagonale. Linea ambra = BEFORE: ciò che l'analizzatore sente sull'input grezzo. Poligono mint pieno = AFTER: quanto la catena sta lavorando su ciascun asse. Con il plugin in bypass o tutti i controlli a riposo, il poligono mint si sovrappone esattamente a quello ambra — quindi ogni rientro di mint dentro l'ambra è il plugin che sta riducendo attivamente quel problema.
08 · Coerenza tra sezioni

I loop stabili non devono leggersi come incoerenti.

Loop lunghi, droni e mix stabili venivano letti come incoerenti perché un piccolo jitter frame-by-frame gonfiava la misura di dispersione tra finestre. Tre fix stratificati hanno trasformato l'indicatore in un segnale affidabile.

0.000.250.500.751.00trigger 0.55LOOP STABILESTROFA / RITORNELLOFINESTRE DA 5 S →IQR (P75 − P25)P90 − P10
Fig. 7 — IQR (P75 − P25) vs P90 − P10 su finestre scorrevoli. L'IQR traccia una linea più stretta e più onesta su un loop stabile, mentre reagisce comunque su un vero stacco strofa / ritornello.
  • Scartare la prima finestra da 5 secondi come warmup — la convergenza delle EMA upstream e il riempimento dei ring buffer non corrompono più il calcolo della dispersione.
  • Usare l'inter-quartile range (P75 − P25) come spread robusto al posto di P90 − P10 — gli outlier sui bordi non segnalano più un loop stabile come incoerente.
  • Resettare gli analizzatori al passaggio in fase di Listening, così il bias residuo di un'istanza precedente del plugin non può filtrare nella take corrente.
  • Quando l'incoerenza è genuina, i boost di EQ positivi e il softclip vengono attenuati con una curva morbida. I tagli di sicurezza non vengono mai attenuati.
09 · Determinismo

Locale, deterministico, ispezionabile.

Ogni stadio della pipeline gira localmente sulla CPU dell'host. Ogni output di ogni stadio è riproducibile bit per bit dato lo stesso input. Nessun modello generativo viene invocato in nessun punto.

Niente rete

Il motore non effettua alcuna chiamata remota in alcun punto. L'audio che processa non lascia mai la macchina dell'host.

Niente LLM

I testi degli insight vengono prodotti da un phrasebook statico indicizzato per reason code. Stesso trace, stesso testo — compresa la scelta della variante linguistica, selezionata in modo deterministico in base all'identificatore della run.

Thread audio lock-free

Ogni analizzatore è allocation-free sul thread audio. I buffer di cattura sono pre-allocati. La fase di ascolto non blocca mai il processBlock dell'host.

Commit riproducibili

Dato lo stesso buffer di frame catturato e la stessa destinazione, i parametri risolti e il decision trace sono byte-identici tra una run e l'altra. La destinazione entra a decide-time, non a listen-time, quindi cambiare destinazione sulla stessa cattura ri-risolve in modo deterministico contro la stessa TrackKnowledge.

Trace verificabile

Ogni mossa e ogni mossa saltata vengono loggate con un reason code esplicito. Il trace è ciò su cui la suite di test verifica le asserzioni, ed è ciò che l'utente vede nella modale di analisi.

Snapshot riutilizzabili

La TrackKnowledge viene serializzata sia nello stato del progetto sia nei preset utente, quindi un master salvato può ri-risolversi contro una destinazione diversa in una sessione futura senza un nuovo passaggio di ascolto — lo stesso snapshot catturato, riusato in modo deterministico.

10 · Confini

Cosa scegliamo deliberatamente di non fare.

Gli strumenti di mastering accumulano una lunga lista di feature che suonano benissimo nel marketing ma degradano silenziosamente il segnale. Ecco cosa è intenzionalmente fuori scopo per il motore v1.

  • Niente source separation
    Non separiamo un master stereo in stem. Il senso del mastering è essere l'ultimo stadio sul bus.
  • Niente rilevamento di tempo o tonalità
    Nessuno dei due informa una decisione di mastering. Non vengono misurati.
  • Niente 'AI generativa'
    Nessun modello generativo scrive audio, parametri o testi. Ogni valore che l'utente vede è uscito da una funzione con ingressi e uscite ben specificati.
  • Niente passaggio cloud nascosto
    Nessuna parte della pipeline chiama un servizio remoto per analisi, decisioni o rendering.
  • Niente reference-track matching
    I target arrivano dalla semantica della destinazione e dalla traccia stessa, non da un file di terzi caricato dall'utente. Non fingiamo di copiare un disco di successo su un'altra canzone.
11 · Glossario

Definizioni operative.

TrackKnowledge
Il profilo strutturato della traccia letto dalla recipe. Grandezze di loudness, delta su otto bande, severità (P75), euristiche di contrasto, metadati di cattura.
P75 pesato
Il 75° percentile del valore per frame, pesato per loudness × tonalità × posizione nella take. Intro silenziose, code e crossfade collassano a peso quasi nullo.
Delta di banda adattivo
Livello misurato della banda meno una curva attesa fatta di base + destinazione + tilt + densità + LRA. Entro ±1.5 dB la banda è considerata bilanciata.
Envelope (di destinazione)
Tupla per destinazione di target LUFS, ceiling, indice di carattere, cap e slope di softclip, aggression, cap di manual gain e cap totale di EQ.
Planner
Funzione pura da (TrackKnowledge, Envelope) a una struttura dati a campi fissi. Ne esistono tre: Loudness, HighFrequency e StereoSafety.
DecisionTrace
Il log strutturato di ogni mossa della recipe e di ogni skip registrato. Reason code, id parametro, valori prima / dopo, confidenze, segnali sorgente.
Reason code
Valore enumerato esplicito che identifica perché una decisione è stata presa — sopravvive a bump di schema, test ed export.
Pass di coerenza EQ
Post-process sui quattro slot di EQ che applica cinque regole: smorzamento di tagli adiacenti, preservazione del basso peso, guard di stack presence / air, guard di sibilanza e cap del movimento totale di EQ limitato per destinazione.
Chiusura

Costruito per essere misurato, non per essere creduto sulla parola.

Se qualcosa in questo paper sembrava una pretesa che vale la pena verificare, è proprio quello il punto. Il motore viene rilasciato con il trace attivo di default, il report visibile nella modale di analisi e la baseline ripristinabile su qualsiasi controllo.

© Transientik Labs — paper metodologico, sintesi pubblica. Soglie, formule e costanti interne non vengono divulgate.