Kullanım Kılavuzu API Başvuru Kılavuzu

Metinden Konuşmaya (TTS)

Metni doğal tonda konuşmaya dönüştürün

GÖNDERİ /api/v1/tts/generate/

Yapay zeka ses sentezi kullanarak metni konuşmaya dönüştürün. Bir MP3 ses dosyası döndürür.

Kimlik Doğrulama

API anahtarınızı Authorization başlığına ekleyin.

İstek Gövdesi

Parametre Gerekli Tür Açıklama
text gerekli ip Dönüştürülecek metin (maks. 1500 karakter)
output_format isteğe bağlı ip İstenen ses çıkış formatı. codec_sampleRate_bitrate (ör. mp3_22050_32) şeklinde belirtilir. Varsayılan değer mp3_44100_128’dir. Tam liste için aşağıdaki Çıkış Formatları bölümüne bakın.
voice_id gerekli tam sayı ...-dan gelen ses kimliği ses listesi.
prerecording isteğe bağlı tam sayı 1 (Temel İyileştirme) veya 2 (Yapay Zeka Destekli İyileştirme)
voice_settings isteğe bağlı dizge (JSON) Ses özelleştirme seçenekleri

Desteklenen Çıktı Formatları

output_format parametresi, aşağıdaki değerlerden herhangi biri olabilir:

  • MP3: mp3_22050_32, mp3_24000_48, mp3_44100_32, mp3_44100_64, mp3_44100_96, mp3_44100_128, mp3_44100_192
  • PCM: pcm_8000, pcm_16000, pcm_22050, pcm_24000, pcm_32000, pcm_44100, pcm_48000
  • Eser: opus_48000_32, opus_48000_64, opus_48000_96, opus_48000_128, opus_48000_192

Bu bölüm bir başvuru kaynağı işlevi görür; böylece kullanıcılar, ana talep tablosunu karmaşıklaştırmadan uygun formatı seçebilirler.

Ses Ayarları Nesnesi

Parametre Tür Menzil Varsayılan Açıklama
temperature tam sayı 0 – 100 25 Konuşma değişkenliğini ve ifade gücünü kontrol eder. Düşük değerler daha istikrarlı ve öngörülebilir bir konuşma sağlarken, yüksek değerler çeşitliliği, doğaçlamayı ve yaratıcı ifade biçimlerini artırır.
voice_similarity tam sayı 0 – 100 100 Üretilen konuşmanın seçilen ses profiliyle ne ölçüde örtüştüğünü belirler. Daha yüksek değerler orijinal ses kimliğini korurken, daha düşük değerler ton ve artikülasyonda daha fazla sapmaya olanak tanır.
speed yüzmek 0.7 – 1.2 1.0 Konuşma hızını ayarlar. 1,0’ın altındaki değerler anlaşılırlığı artırmak için konuşmayı yavaşlatırken, 1,0’ın üzerindeki değerler konuşma hızını artırır.
enable_emotions mantıksal false / true false Duygusal açıdan etkileyici konuşma üretimini mümkün kılar. Bu özellik etkinleştirildiğinde model; konuşma hızını, tonlamayı ve vurguyu duygusal bağlama göre dinamik olarak kontrol eder.
fast_mode tam sayı 0, 1, or 2 0 Ses kalitesinden ödün vererek sentez gecikmesini azaltır.
  • 0: Devre dışı (en yüksek kalite, normal gecikme)
  • 1: Orta düzey gecikme süresi azaltımı
  • 2: Maksimum gecikme azaltma (en düşük kalite)

Ses Ayarları Kuralları ve Kısıtlamaları

  • enable_emotions true olarak ayarlandığında, voice_settings içinde aşağıdaki alanlar yer almamalıdır:
    • voice_similarity
    • speed
    • fast_mode
  • Duygular (emotions) etkin durumdayken bu alanlardan herhangi birini içeren istekler, 400 INVALID_REQUEST hatasıyla reddedilecektir.

Örnek

curl -X POST "https://moknah.io/api/v1/tts/generate/" \
  -H "Authorization: "Bearer your_api_key"
  -d '{
    "text": "مرحبا بك في منصة مكنة",
    "voice_id": 1,
    "prerecording": 1,
    "voice_settings": {
        "speed": 1.0,
        "temperature": 25
    }
  }' \
  --output speech.mp3
import requests

response = requests.post(
    "https://moknah.io/api/v1/tts/generate/",
    headers={
        "Authorization": "Bearer your_api_key",
        "Content-Type": "application/json"
    },
    json={
        "text": "مرحبا بك في منصة مكنة",
        "voice_id": 1,
        "prerecording": 1,
        "voice_settings": {
            "speed": 1.0,
            "temperature": 25
        }
    }
)

with open("speech.mp3", "wb") as f:
    f.write(response.content)
const response = await fetch(
    'https://moknah.io/api/v1/tts/generate/',
    {
        method: 'POST',
        headers: {
            'Authorization': 'Bearer your_api_key',
            'Content-Type': 'application/json'
        },
        body: JSON.stringify({
            text: 'مرحبا بك في منصة مكنة',
            voice_id: 1,
            prerecording: 1,
            voice_settings: {
                speed: 1.0,
                temperature: 25
            }
        })
    }
);

const blob = await response.blob();
// Save or play the audio

Yanıt

Şu başlıklara sahip ikili MP3 ses verisi döndürür:

Üst Bilgi Açıklama
Content-Type audio/mpeg

Hatalar

Durum Kod Açıklama
400 INVALID_REQUEST Geçersiz parametreler
401 UNAUTHORIZED Geçersiz API anahtarı
402 INSUFFICIENT_CREDITS Yeterli kredi yok
429 RATE_LIMIT_EXCEEDED Çok fazla istek
API Desteği

API ile ilgili soru veya sorunlarınız için bizimle şu adresten iletişime geçin: api@moknah.io.