تبدیل متن به صدا
با استفاده از این وب سرویس میتوانید متنهای خود را با هوش مصنوعی و کیفیت بالا به گفتار و فایل صوتی طبیعی تبدیل کنید.
مشخصات
| مشخصه | مقدار |
|---|---|
| دستهبندی | هوش مصنوعی |
| وضعیت | فعال |
| نسخه API | apis-1 |
| فرمت پاسخ | JSON |
| آدرس پایه | https://open.nestapi.ir |
| مسیر | /apis-1/text-to-speech |
| لینک کامل | https://open.nestapi.ir/apis-1/text-to-speech |
متدهای HTTP
| متد | مسیر | نوع ورودی |
|---|---|---|
GET | /apis-1/text-to-speech | Query String |
پارامترها
پارامترهای Query String
| نام | نوع | الزامی | پیشفرض | توضیحات |
|---|---|---|---|---|
text | string | بله | — | متن مورد نظر برای تبدیل به گفتار (حداکثر 5000 کاراکتر)؛ هنگام استفاده از action=voices یا baseurl لازم نیست |
voice | string | خیر | auto | شناسه گوینده، مانند fa-IR-DilaraNeural یا en-US-JennyNeural؛ auto برای تشخیص خودکار زبان متن |
action | string | خیر | synthesize | نوع عملیات: synthesize (تولید صوت)، voices (فهرست گویندگان) یا baseurl (آدرسهای ارتباطی سرور) |
stream | boolean | خیر | false | استریم مستقیم و باینری فایل صوتی |
download | boolean | خیر | false | تنظیم هدر دانلود مستقیم فایل در مرورگر |
rate | integer | خیر | 0 | سرعت گفتار (100- تا 100+) |
pitch | integer | خیر | 0 | زیر و بمی صدا (100- تا 200+) |
volume | integer | خیر | 0 | بلندی صدا (100- تا 100+) |
format | string | خیر | mp3 | فرمت خروجی فایل صوتی |
locale | string | خیر | — | فیلتر گویندگان بر اساس کد زبان یا منطقه، مثلاً fa یا en (هنگام استفاده از action=voices) |
lang | string | خیر | — | فیلتر گویندگان بر اساس کد زبان (جایگزین locale) |
gender | string | خیر | — | فیلتر جنسیت گویندگان: Male یا Female (هنگام استفاده از action=voices) |
نمونه درخواست
لینک مستقیم
GET https://open.nestapi.ir/apis-1/text-to-speech?text=%D8%B3%D9%84%D8%A7%D9%85%20%D8%AF%D9%86%DB%8C%D8%A7
نمونه کد
- cURL
- PHP
- Python
- JavaScript
curl -X GET "https://open.nestapi.ir/apis-1/text-to-speech?text=%D8%B3%D9%84%D8%A7%D9%85%20%D8%AF%D9%86%DB%8C%D8%A7"
<?php
// composer require nestapi/nestapi
require 'vendor/autoload.php';
use NestApi\NestApi;
use NestApi\Exception\ApiException;
use NestApi\Exception\TransportException;
$api = new NestApi();
try {
$response = $api->textToSpeech(text: 'سلام دنیا');
print_r($response->data);
} catch (ApiException $e) {
// Error reported by the API (validation, not found, rate limit, ...)
echo $e->getMessage();
} catch (TransportException $e) {
// Network error or unusable response; not a subclass of ApiException
echo 'Network error: ' . $e->getMessage();
}
# pip install nestapi-py
from nestapi import ApiError, NestApi, TransportError
with NestApi() as api:
try:
response = api.text_to_speech(text="سلام دنیا")
print(response.data)
except ApiError as e:
# Error reported by the API (validation, not found, rate limit, ...)
print(e.error_code, e)
except TransportError as e:
# Network error or unusable response; not a subclass of ApiError
print("Network error:", e)
// npm install @devh3n/nestapi
import { ApiError, NestApi, TransportError } from "@devh3n/nestapi";
const api = new NestApi();
try {
const response = await api.textToSpeech({ text: "سلام دنیا" });
console.log(response.data);
} catch (error) {
if (error instanceof ApiError) {
// Error reported by the API (validation, not found, rate limit, ...)
console.error(error.errorCode, error.message);
} else if (error instanceof TransportError) {
// Network error or unusable response; not a subclass of ApiError
console.error("Network error:", error.message);
}
}
کدهای خطا
| کد | وضعیت | علت |
|---|---|---|
NOT_FOUND | 404 | مسیر وجود ندارد، یا متد روی آن ثبت نشده |
PARAM_NOT_FOUND | 400 | پارامتر لازم ارسال نشده |
VALIDATION_ERROR | 422 | پارامتر آمده ولی نوع، قالب یا بازهاش نادرست است |
UNSUPPORTED_FORMAT | 400 | فرمت صوتی ارسالی پشتیبانی نمیشود |
VOICES_FETCH_FAILED | 502 | خطا در دریافت لیست گویندگان از سرویس مبدا |
BASEURL_FETCH_FAILED | 502 | خطا در دریافت آدرسهای ارتباطی از سرویس مبدا |
SYNTHESIS_FAILED | 502 | خطا در برقراری ارتباط وبسوکت یا تولید صوت توسط سرویس مبدا |