API d’évaluation de la qualité audio
Évaluez la qualité perceptuelle d’un fichier audio envoyé. Le résultat comprend un score global, la détection de la parole, le niveau de bruit de fond, le volume et des indicateurs d’écrêtage ou de distorsion.
URL de base
https://api.genderrecognition.com
Point de terminaison
POST /v1/audio/quality/api
En-têtes
apiKey: YOUR_API_KEY
Content-Type: multipart/form-data
Corps de la requête
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
file | file | Yes | Fichier audio à analyser. |
Exemple
curl -X POST "https://api.genderrecognition.com/v1/audio/quality/api" \
-H "apiKey: YOUR_API_KEY" \
-F "file=@audio.wav"
Réponse
{
"success": true,
"quality_score": 82,
"quality_label": "good",
"mos_score": 4.1,
"speech": {
"detected": true,
"duration": 4.8,
"ratio": 92
},
"noise": {
"level": "low",
"snr_db": 28.4
},
"volume": {
"too_quiet": false,
"rms_dbfs": -18.2
},
"clipping": {
"detected": false,
"ratio": 0
},
"audio": {
"duration": 5.2,
"sample_rate": 44100,
"channels": 1
},
"remainingRequests": 119
}
Champs de la réponse
| Champ | Type | Description |
|---|---|---|
success | boolean | true si le fichier audio a été traité avec succès. |
quality_score | integer or null | Qualité perceptuelle globale, de 0 à 100. null when no speech is detected. |
quality_label | string or null | Quality bucket for quality_score: excellent, good, fair, or poor. null when quality_score is null. |
mos_score | number or null | Raw predicted Mean Opinion Score, 1-5 (higher is better). null when no speech is detected. |
speech.detected | boolean | Indique si le fichier contient de la parole. |
speech.duration | number | Durée, en secondes, de la partie classée comme parole. |
speech.ratio | integer | Pourcentage du fichier correspondant à de la parole, de 0 à 100. |
noise.level | string or null | Background noise bucket: low, medium, or high. null when it can't be measured (for example, no non-speech audio to compare against). |
noise.snr_db | number or null | Signal-to-noise ratio in dB, comparing speech to background noise. null under the same conditions as noise.level. |
volume.too_quiet | boolean | true when the audio is too quiet to be reliably used. |
volume.rms_dbfs | number | Niveau sonore en dBFS. 0 is the loudest possible level; more negative values are quieter. |
clipping.detected | boolean | true when clipping/distortion was detected. |
clipping.ratio | integer | Percentage of audio samples affected by clipping, 0-100. |
audio.duration | number | Durée du fichier envoyé, en secondes. |
audio.sample_rate | number | Fréquence d’échantillonnage du fichier audio, en Hz. |
audio.channels | number | Nombre de canaux audio (1 = mono, 2 = stéréo). |
remainingRequests | integer | Nombre de requêtes API restantes après déduction de cette requête réussie. |
quality_score, speech.ratio et clipping.ratio sont des pourcentages
entiers. noise.snr_db et volume.rms_dbfs sont des valeurs en décibels, et
non des pourcentages.
Erreurs possibles
Clé API manquante
{ "error": "API key is required" }
Clé API invalide
{ "error": "Invalid API key" }
Fichier manquant
{ "error": "No file uploaded" }
Fichier trop volumineux
{ "error": "File too large" }
Champ inattendu
Cette erreur est renvoyée lorsque le fichier est envoyé dans un champ autre que
file (par exemple, si un fichier supplémentaire est transmis).
{ "error": "Unexpected field" }
Type de fichier invalide
{
"error": "Invalid file type. Allowed formats: WAV, MP3, FLAC, MP4, OGG, AIFF"
}
Échec de la conversion audio
Cette erreur est renvoyée lorsque l’extension du fichier est autorisée, mais que ffmpeg ne parvient pas à le convertir (par exemple, s’il est endommagé ou illisible).
{ "error": "Audio conversion failed: <details>" }
Quota dépassé
{
"error": {
"code": "RATE_LIMIT_EXCEEDED",
"message": "You have exceeded your free tier limit of 50 requests.",
"detailedMessage": "Insufficient remaining requests. Required: 1, Available: 0",
"details": {
"limit": 50,
"used": 50,
"reset_date": "2026-07-01T00:00:00.000Z"
},
"suggested_action": "Please upgrade to a premium plan to continue using the API."
}
}
Échec du traitement
{ "error": "Audio quality assessment failed" }
Remarques
- Le serveur accepte de nombreux formats audio courants, notamment WAV, MP3, M4A, FLAC, OGG, WebM, AAC, Opus, WMA, AMR, 3GP, AIFF et AU. Les fichiers autres que WAV sont convertis avant l’analyse.
- Les fichiers audio doivent être envoyés dans le champ
fileet ne pas dépasser 10 Mo. - Une requête n’est déduite qu’une fois l’évaluation de la qualité terminée avec succès.