آڈیو معیار جانچنے کی API
اپ لوڈ کردہ آڈیو فائل کے محسوس ہونے والے معیار کا جائزہ لیں۔ جواب میں مجموعی معیار اسکور، تقریر کی شناخت، پس منظر کے شور کی سطح، آواز کی بلندی اور کلپنگ یا بگاڑ کے اشارے شامل ہوتے ہیں۔
بنیادی URL
https://api.genderrecognition.com
اینڈپوائنٹ
POST /v1/audio/quality/api
ہیڈرز
apiKey: YOUR_API_KEY
Content-Type: multipart/form-data
درخواست کا مواد
| فیلڈ | قسم | لازمی | وضاحت |
|---|---|---|---|
file | file | ہاں | تجزیے کے لیے آڈیو فائل۔ |
مثال
curl -X POST "https://api.genderrecognition.com/v1/audio/quality/api" \
-H "apiKey: YOUR_API_KEY" \
-F "file=@audio.wav"
جواب
{
"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
}
جوابی فیلڈز
| فیلڈ | قسم | وضاحت |
|---|---|---|
success | boolean | آڈیو کامیابی سے پراسیس ہونے پر true۔ |
quality_score | integer یا null | مجموعی محسوس شدہ معیار، 0 سے 100 تک۔ تقریر نہ ملنے پر null۔ |
quality_label | string یا null | quality_score کے معیار کی قسم: excellent، good، fair یا poor۔ quality_score، null ہو تو یہ بھی null۔ |
mos_score | number یا null | پیش گوئی کردہ خام Mean Opinion Score، 1 سے 5 تک (زیادہ بہتر)۔ تقریر نہ ملنے پر null۔ |
speech.detected | boolean | آیا فائل میں تقریر ملی یا نہیں۔ |
speech.duration | number | تقریر کے طور پر درجہ بند آڈیو کا دورانیہ، سیکنڈ میں۔ |
speech.ratio | integer | فائل میں تقریر کا فیصد، 0 سے 100 تک۔ |
noise.level | string یا null | پس منظر کے شور کی سطح: low، medium یا high۔ پیمائش ممکن نہ ہو تو null۔ |
noise.snr_db | number یا null | تقریر اور پس منظر کے شور کا سگنل ٹو نوائز تناسب، dB میں۔ noise.level والی صورتوں میں null۔ |
volume.too_quiet | boolean | آڈیو قابل اعتماد استعمال کے لیے بہت دھیمی ہو تو true۔ |
volume.rms_dbfs | number | آواز کی شدت dBFS میں۔ 0 سب سے بلند سطح ہے؛ زیادہ منفی قدر دھیمی آواز ظاہر کرتی ہے۔ |
clipping.detected | boolean | کلپنگ یا بگاڑ ملنے پر true۔ |
clipping.ratio | integer | کلپنگ سے متاثرہ آڈیو نمونوں کا فیصد، 0 سے 100 تک۔ |
audio.duration | number | اپ لوڈ کردہ فائل کا دورانیہ، سیکنڈ میں۔ |
audio.sample_rate | number | اپ لوڈ کردہ آڈیو کی نمونہ شرح، Hz میں۔ |
audio.channels | number | آڈیو چینلز کی تعداد (1 = mono، 2 = stereo)۔ |
remainingRequests | integer | اس کامیاب درخواست کی کٹوتی کے بعد باقی API درخواستیں۔ |
quality_score، speech.ratio اور clipping.ratio مکمل عددی فیصد ہیں۔ noise.snr_db اور volume.rms_dbfs ڈیسیبل کی قدریں ہیں، فیصد نہیں۔
خرابی کی صورتیں
API key موجود نہیں
{ "error": "API key is required" }
غلط API key
{ "error": "Invalid API key" }
فائل موجود نہیں
{ "error": "No file uploaded" }
فائل بہت بڑی ہے
{ "error": "File too large" }
غیر متوقع فیلڈ
یہ جواب تب آتا ہے جب فائل file کے بجائے کسی اور فیلڈ نام سے اپ لوڈ ہو (مثلاً اضافی فائل بھیجنے پر):
{ "error": "Unexpected field" }
فائل کی قسم غلط ہے
{
"error": "Invalid file type. Allowed formats: WAV, MP3, FLAC, MP4, OGG, AIFF"
}
آڈیو کی تبدیلی ناکام ہوئی
یہ جواب تب آتا ہے جب فائل کی توسیع قابل قبول ہو لیکن ffmpeg اسے تبدیل نہ کر سکے (مثلاً فائل خراب ہو یا پڑھی نہ جا سکے):
{ "error": "Audio conversion failed: <details>" }
کوٹہ ختم ہو گیا
{
"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."
}
}
پراسیسنگ ناکام ہوئی
{ "error": "Audio quality assessment failed" }
نوٹس
- بیک اینڈ کئی عام آڈیو فارمیٹس قبول کرتا ہے، جیسے WAV، MP3، M4A، FLAC، OGG، WebM، AAC، Opus، WMA، AMR، 3GP، AIFF اور AU، اور تجزیے سے پہلے غیر WAV فائلوں کو تبدیل کرتا ہے۔
- آڈیو اپ لوڈ میں
fileفیلڈ استعمال کریں؛ فائل 10 MB یا اس سے کم ہونی چاہیے۔ - درخواست صرف معیار کا جائزہ کامیابی سے مکمل ہونے کے بعد منہا ہوتی ہے۔