Normaliser le volume d’un audio
La normalisation ajuste le volume d’un enregistrement pour amener l’ensemble à un niveau sonore régulier. Les passages trop faibles remontent, les pointes trop fortes sont contenues, et l’auditeur n’a plus à jouer du bouton de volume. Utile dès que plusieurs prises, plusieurs intervenants ou plusieurs appareils donnent des niveaux disparates dans un même fichier.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
Le problème du volume inégal
Un enregistrement capté sur le vif souffre souvent de niveaux irréguliers : une personne proche du micro couvre une autre plus lointaine, un mémo dicté sonne bien plus fort que le suivant, une piste importée détonne dans un montage. La normalisation corrige cela en ramenant l’ensemble vers un niveau de référence cohérent. Le résultat s’écoute sans surprise, à volume constant, ce qui compte particulièrement pour un podcast, une compilation de mémos ou un module diffusé à un large public.
Ce que l’outil ajuste, ce qu’il ne fait pas
La normalisation agit sur le volume, pas sur le contenu : elle n’efface pas un bruit de fond et ne sépare pas les voix. Pour retirer un souffle parasite, c’est la réduction de bruit qu’il faut ; pour supprimer les blancs, le nettoyage des silences. Ici, on égalise la puissance sonore. Les formats courants — MP3, WAV, M4A — sont acceptés jusqu’à 200 Mo et 180 min, et la durée de la piste reste évidemment inchangée après traitement.
Un service en préparation
Disons-le sans détour : cet outil n’est pas encore ouvert. Il est en cours de déploiement et sera bientôt disponible ici même. Le tarif est déjà fixé pour que vous puissiez le prévoir : $0.077 par requête, puis $0.0045 par minute d’audio traitée, en dollars US. Normaliser une piste de vingt minutes reviendra à environ $0.17. Nous jugeons plus honnête d’afficher ce prix dès à présent que de le révéler seulement au moment de l’exécution.
Cas d’usage
Podcast à plusieurs voix
Studio Lumen SAS harmonisera le volume d’un épisode où un invité, enregistré à distance, sonnait bien plus bas que l’animatrice en studio.
Compilation de mémos
Julien Lefèvre égalisera une série de mémos vocaux dictés dans des lieux différents, pour les réécouter d’affilée sans corriger le volume à chaque fois.
Piste prête pour le montage
Une voix off importée sera ramenée au même niveau que la musique de fond, avant l’assemblage final d’une vidéo de présentation.
Cours réécouté au casque
Un étudiant remontera le niveau d’un cours capté de loin en amphi, pour l’entendre nettement au casque sans pousser le volume au maximum.
Questions fréquentes
La normalisation supprime-t-elle le bruit de fond ?
Non. Elle agit uniquement sur le volume, pas sur les parasites. Pour atténuer un souffle ou un brouhaha, il faut passer par la réduction de bruit, qui est une opération distincte.
Le résultat sonnera-t-il « écrasé » ?
L’objectif est d’obtenir un niveau régulier tout en gardant le relief naturel de la parole. Les écarts extrêmes sont contenus, mais la dynamique utile de la voix est préservée.
L’outil est-il déjà utilisable ?
Pas encore : il est en cours de déploiement et n’accepte pas d’exécutions pour l’instant. Son tarif est publié pour que vous puissiez l’anticiper dès maintenant.
Combien coûtera la normalisation d’une piste ?
Le tarif annoncé est de $0.077 par requête plus $0.0045 par minute, en dollars US. Une piste de vingt minutes reviendra à environ $0.17, sans abonnement ni forfait.
Mes fichiers seront-ils gardés après traitement ?
Non. À l’ouverture du service, le fichier passera par nos serveurs le temps de l’ajustement, via un transfert chiffré, puis sera effacé. Le traitement a lieu côté serveur.
Pourrai-je traiter plusieurs fichiers en série ?
Oui. En plus de cette page, une API permettra d’envoyer plusieurs pistes à normaliser, ce qui convient à une collection de mémos ou aux épisodes d’un podcast.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
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)Exemple de requête
{
"audio": "https://ejemplo.com/audio.mp3"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.normalize",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_mb | 200 |
max_minutes | 180 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |