Calcolare guadagno e livelli relativi di un mix multitraccia
Questo calcolatore di livelli per mix multitraccia trasforma i picchi misurati e i pesi del bilanciamento desiderato in un guadagno preciso per ogni traccia.
Esegui gratis nel browser
Inserisca ciascun picco in dBFS e assegni un peso non negativo che descriva il livello finale rispetto agli altri. Il calcolatore normalizza il peso massimo a 0 dBFS, converte gli altri rapporti in decibel e restituisce il guadagno o l’attenuazione necessari. Tecnici del suono, montatori, podcaster e procedure audio automatizzate ottengono così un punto di partenza coerente senza tentativi casuali sui fader.
Descriva i picchi sorgente e il bilanciamento desiderato
Parta da una lettura affidabile del picco di ogni traccia, eseguita prima dell’elaborazione sul bus di mix. Inserisca il valore come peak_dbfs, usando zero per il fondo scala digitale e valori negativi per i picchi inferiori. Assegni quindi un peso a ogni traccia. Il peso esprime un rapporto: non è un valore in decibel né una percentuale che debba totalizzare uno. Per esempio, i pesi 1, 0.5 e 0.25 richiedono picchi lineari finali nel rapporto quattro-due-uno. Moltiplicare tutti i pesi per lo stesso fattore produce lo stesso bilanciamento, perché contano soltanto i rapporti. I nomi vengono mantenuti nell’output, così Lei può associare le impostazioni ai canali senza affidarsi alla posizione delle righe. Servono almeno due tracce e almeno un peso positivo. Un peso zero silenzia intenzionalmente la traccia. I pesi negativi non sono validi, perché un’ampiezza con segno non rappresenta una preferenza di livello utilizzabile. Misuri materiale rappresentativo: un breve passaggio anomalo potrebbe generare valori matematicamente corretti ma inadatti all’intero brano o episodio.
Comprenda come viene calcolato ogni guadagno
Il peso positivo maggiore diventa il riferimento e riceve un peso normalizzato pari a uno. Il suo picco obiettivo è quindi 0 dBFS. Ogni altro peso positivo viene diviso per il massimo; il rapporto di ampiezza lineare ottenuto viene convertito in decibel moltiplicando per 20 il logaritmo in base dieci. Il guadagno richiesto è il picco obiettivo meno quello misurato. Una traccia che raggiunge -6 dBFS e possiede il peso massimo mira a 0 dBFS, quindi riceve +6 dB. Una traccia con metà peso mira a circa -6.0206 dBFS; se ora raggiunge -3 dBFS, il guadagno è vicino a -3.0206 dB. I valori vengono arrotondati a sei decimali per un output stabile e riproducibile. Una traccia con peso zero restituisce muted vero senza simulare un valore infinito. Il metodo allinea le ampiezze di picco, non il volume percepito: densità spettrale, dinamica, durata e percezione umana continuano a influire sul risultato artistico.
Applichi le impostazioni in sicurezza al mix reale
Applichi ogni gain_db come trim prima della somma, oppure lo trasformi in uno spostamento equivalente del fader se il percorso del segnale lo richiede. La traccia con il peso maggiore raggiunge 0 dBFS; le altre restano sotto secondo i rapporti scelti. La normalizzazione sfrutta il picco individuale, ma non garantisce che la forma d’onda combinata rimanga sotto il fondo scala: tracce simultanee si sommano e materiale correlato può creare un picco sul bus superiore a qualsiasi obiettivo individuale. Mantenga headroom riducendo tutte le tracce non silenziate dello stesso valore dopo il calcolo, oppure usi il risultato come bilanciamento relativo iniziale e regoli il master durante l’ascolto. Una riduzione comune conserva i rapporti calcolati. Verifichi il mix con misuratori e ascolto critico, soprattutto in presenza di limiter, compressori, automazione o relazioni di fase successive. Per procedure ripetibili, conservi insieme picchi originali, pesi e guadagni restituiti. L’API costa $0.002 per richiesta, mentre il browser esegue localmente lo stesso calcolo deterministico. Nessun audio viene caricato o analizzato, perché l’input contiene già dati numerici misurati.
Casi d'uso
Impostare il bilanciamento musicale iniziale
Converta scansioni dei picchi e rapporti di produzione in trim ripetibili prima dell’automazione dettagliata.
Bilanciare le tracce di un podcast
Porti voci, musica e ambiente a obiettivi relativi definiti prima di aggiungere headroom comune.
Automatizzare la preparazione in serie
Generi guadagni deterministici per traccia da misure già ottenute in un flusso audio offline.
Domande frequenti
I pesi devono totalizzare uno?
No. Contano solo i rapporti. I pesi 1, 0.5 e 0.25 producono lo stesso risultato di 4, 2 e 1.
Che cosa accade con un peso zero?
La traccia viene contrassegnata come silenziata; obiettivo e guadagno sono omessi invece di rappresentare infinito negativo in JSON.
Perché i pesi negativi vengono rifiutati?
Un peso rappresenta un rapporto di ampiezza non negativo; un valore negativo non descrive un picco obiettivo convenzionale.
La somma del mix resterà sotto 0 dBFS?
Non necessariamente. Più tracce possono raggiungere il picco insieme, quindi applichi headroom comune senza alterare i rapporti.
Viene calcolato il volume percepito?
No. Vengono bilanciate ampiezze di picco misurate. Usi misure LUFS e ascolto critico quando cerca il volume percepito.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/audio/multi-track-mixdown-levels \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"tracks":[{"name":"Lead vocal","peak_dbfs":-6,"weight":1},{"name":"Music bed","peak_dbfs":-3,"weight":0.5},{"name":"Room","peak_dbfs":-12,"weight":0.25}]}'const res = await fetch("https://api.kit.forhosting.com/audio/multi-track-mixdown-levels", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"tracks": [
{
"name": "Lead vocal",
"peak_dbfs": -6,
"weight": 1
},
{
"name": "Music bed",
"peak_dbfs": -3,
"weight": 0.5
},
{
"name": "Room",
"peak_dbfs": -12,
"weight": 0.25
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/audio/multi-track-mixdown-levels",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"tracks": [
{
"name": "Lead vocal",
"peak_dbfs": -6,
"weight": 1
},
{
"name": "Music bed",
"peak_dbfs": -3,
"weight": 0.5
},
{
"name": "Room",
"peak_dbfs": -12,
"weight": 0.25
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/audio/multi-track-mixdown-levels", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"tracks":[{"name":"Lead vocal","peak_dbfs":-6,"weight":1},{"name":"Music bed","peak_dbfs":-3,"weight":0.5},{"name":"Room","peak_dbfs":-12,"weight":0.25}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"tracks":[{"name":"Lead vocal","peak_dbfs":-6,"weight":1},{"name":"Music bed","peak_dbfs":-3,"weight":0.5},{"name":"Room","peak_dbfs":-12,"weight":0.25}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/audio/multi-track-mixdown-levels", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"tracks": [
{
"name": "Lead vocal",
"peak_dbfs": -6,
"weight": 1
},
{
"name": "Music bed",
"peak_dbfs": -3,
"weight": 0.5
},
{
"name": "Room",
"peak_dbfs": -12,
"weight": 0.25
}
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.multi_track_mixdown_levels",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_mb | 200 |
max_minutes | 180 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |