Volume desigual
A normalização ajusta o volume de uma gravação para um nível uniforme: a fala baixa sobe, o pico estourado desce e o ouvinte para de mexer no controle a cada minuto. É o acabamento básico de qualquer áudio publicado — podcast, aula, audiolivro — feito de forma automática, por API.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
O sobe-e-desce que espanta ouvinte
Você aumenta o volume para entender o convidado que gravou longe do microfone e, dez segundos depois, o apresentador estoura no seu fone. Esse sobe-e-desce é o defeito mais comum do áudio amador — e um dos que mais fazem gente desistir de ouvir. A normalização corrige exatamente isso: analisa a gravação e ajusta os níveis para que tudo soe na mesma altura, do sussurro ao pico, sem que ninguém precise ficar de dedo no volume.
Um episódio por vez ou o acervo inteiro
Por ser uma tarefa de API, a normalização funciona tanto para o arquivo avulso quanto para a esteira de produção. Dá para normalizar cada episódio automaticamente antes de publicar, ou varrer um acervo com anos de gravações feitas em equipamentos diferentes e entregar tudo num nível uniforme. O fluxo é assíncrono — envia o arquivo, recebe o resultado —, e os limites publicados são 200 MB e 180 minutos por arquivo.
Preço fixo por minuto
A cobrança publicada é US$ 0,077 por chamada mais US$ 0,0045 por minuto de áudio: uma hora de gravação normalizada custa US$ 0,347, em dólar americano. Não existe assinatura nem franquia — quem normaliza um episódio por semana e quem trata um acervo de uma vez pagam, cada um, pelo volume que processam. O preço é o desta página, sem faixa escondida.
Quando abre: fase de implantação
Esta capacidade está em fase de implantação e ainda não aceita execuções — dizemos isso na frente, não em nota de rodapé. O que já está definido e publicado é a especificação, o limite e o preço, para que você monte seu fluxo sabendo com o que conta. Nenhum valor é cobrado até que a execução abra. Se a normalização é peça que falta no seu processo hoje, mande um e-mail ou chame no WhatsApp e conte seu caso.
Casos de uso
Podcast com dois convidados, duas gravações
O apresentador grava no estúdio; a convidada, no fone de ouvido do celular. Sem tratamento, um grita e a outra sussurra. Normalizado, o episódio soa como uma conversa só — e ninguém desliga no terceiro minuto.
Curso gravado ao longo de anos
Uma escola online tem aulas gravadas desde 2019, com três microfones diferentes. Antes de relançar o curso, passa todo o acervo pela normalização e entrega módulos com volume consistente do início ao fim.
Audiolivro gravado em várias sessões
A narradora Márcia Regina Oliveira grava capítulos em dias e humores diferentes. A normalização apara as variações entre sessões e o ouvinte atravessa o livro sem perceber as emendas.
Entrevistas antigas prontas para republicar
Um projeto de memória local recupera entrevistas gravadas em fita e digitalizadas em volumes desiguais. Normalizadas em lote, entram no site com qualidade de escuta decente — sem restauração manual arquivo por arquivo.
Perguntas frequentes
Normalizar é o mesmo que aumentar o volume?
Não. Aumentar o volume empurra tudo para cima, inclusive o que já estava alto demais. Normalizar é nivelar: o que está baixo sobe, o que está estourando desce, e a gravação inteira converge para um nível confortável.
Vai consertar uma gravação que já saiu estourada?
Sejamos francos: não faz milagre. Se o áudio distorceu na captação, a informação sonora se perdeu ali. A normalização equilibra níveis do que foi gravado — para o clipping de origem, o remédio é regravar mais longe do microfone.
Qual o custo para tratar dez episódios de uma hora?
Cada episódio de uma hora custa US$ 0,347 (chamada de US$ 0,077 mais 60 minutos a US$ 0,0045); dez episódios somam US$ 3,47. Tudo em dólar americano, pago pelo uso, sem plano mensal.
Já consigo usar hoje?
Ainda não: a capacidade está em fase de implantação e não aceita execuções por enquanto. Preço e especificação já estão publicados — e valem quando ela abrir. Preferimos essa ordem a vender promessa.
O conteúdo das minhas gravações fica exposto?
A normalização roda no servidor, então o arquivo é enviado para processamento — e não é publicado nem exposto. Se as gravações contêm conversas privadas, vale a regra geral: pergunte ao atendimento o que quiser sobre o tratamento dos dados antes de mandar.
Tem limite por arquivo?
Tem, e está na especificação: 200 MB ou 180 minutos por arquivo. Um acervo maior que isso se processa em tarefas separadas, uma por arquivo.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/audio/normalize \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"audio":"https://ejemplo.com/audio.mp3"}'const res = await fetch("https://api.kit.forhosting.com/audio/normalize", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"audio": "https://ejemplo.com/audio.mp3"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/audio/normalize",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"audio": "https://ejemplo.com/audio.mp3"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/audio/normalize", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"audio":"https://ejemplo.com/audio.mp3"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"audio":"https://ejemplo.com/audio.mp3"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/audio/normalize", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"audio": "https://ejemplo.com/audio.mp3"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.normalize",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_mb | 200 |
max_minutes | 180 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |