Aller au contenu principal

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​

ChampTypeObligatoireDescription
filefileYesFichier 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​

ChampTypeDescription
successbooleantrue si le fichier audio a été traité avec succès.
quality_scoreinteger or nullQualité perceptuelle globale, de 0 à 100. null when no speech is detected.
quality_labelstring or nullQuality bucket for quality_score: excellent, good, fair, or poor. null when quality_score is null.
mos_scorenumber or nullRaw predicted Mean Opinion Score, 1-5 (higher is better). null when no speech is detected.
speech.detectedbooleanIndique si le fichier contient de la parole.
speech.durationnumberDurée, en secondes, de la partie classée comme parole.
speech.ratiointegerPourcentage du fichier correspondant à de la parole, de 0 à 100.
noise.levelstring or nullBackground noise bucket: low, medium, or high. null when it can't be measured (for example, no non-speech audio to compare against).
noise.snr_dbnumber or nullSignal-to-noise ratio in dB, comparing speech to background noise. null under the same conditions as noise.level.
volume.too_quietbooleantrue when the audio is too quiet to be reliably used.
volume.rms_dbfsnumberNiveau sonore en dBFS. 0 is the loudest possible level; more negative values are quieter.
clipping.detectedbooleantrue when clipping/distortion was detected.
clipping.ratiointegerPercentage of audio samples affected by clipping, 0-100.
audio.durationnumberDurée du fichier envoyé, en secondes.
audio.sample_ratenumberFréquence d’échantillonnage du fichier audio, en Hz.
audio.channelsnumberNombre de canaux audio (1 = mono, 2 = stéréo).
remainingRequestsintegerNombre 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 file et 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.