Python ile Text-to-Speech Programı: Metni Sese Çevirme

"Python ile Text-to-Speech Programı: Metni Sese Çevirme"

Günümüzde, metinleri sesli bir şekilde duymak veya belirli metinleri seslendirmek için kullanılan Text-to-Speech (TTS) teknolojisi oldukça popüler hale gelmiştir. Bu teknologi günümüzde bir çoğu youtube ve ya twitch yayıncıları için çok önemli olduğunu belirtmek isterim. Yanlız kullanmak istediğimiz text to speech eklentileri, programları ve ya websiteleri üzerinden kullanılan bu programlar bize sadece belirli bir kelime sayı ve ya gün olarak ücretsiz deneme sunuyorlar. Tabii ki bundan sonrası ücretli olarak kullanıla biliniyor. Açık konuşmak gerekirse bu programı siz yapmış olsaydınız, sunucu, domain ve çalışan maaşlarını göz önünde bulundurarak bu programı ücretsiz paylaşırmıydnız? Bence cevabınız hayır olacaktır. Bu gibi şirketlerde kendileri yaptığı program sayesinde söylediğim masrafları karşılıyor ve gelir elde ediyolar. Ama doğrusu bazıları çok fazla pahalı. Peki bu programı ücretsiz ve limitsiz olarak kendiniz yapmayı düşündünüzmü hiç? Muhtemelen düşündüğünüz için buradasınız) Python ile bu teknolojiyi kullanarak aşağıda verdiğim kodlarla basit bir metin-ses programı oluşturabilirsiniz.

Text-to-Speech Nedir?

Text-to-Speech (TTS), bilgisayar programları aracılığıyla yazılı metinlerin konuşma sesine dönüştürülmesini sağlayan bir teknolojidir. Bu teknoloji, özellikle erişilebilirlik ve dil öğrenimi gibi birçok alanda kullanılmaktadır.

Python ile Text-to-Speech Programı Nasıl Yapılır?

Python, bu tür bir program geliştirmek için kullanılabilecek zengin bir dil ve bir dizi kütüphane sunmaktadır. İşte Python kullanarak metni sese çevirmek için basit bir program ve bu programı oluşturan kodlar:

import os
import pygame
from gtts import gTTS

def text_to_speech(text, language='en'):
    # Google Text-to-Speech API kullanarak metni sese çevir
    tts = gTTS(text=text, lang=language, slow=False)

    # Ses dosyasını geçici bir dosyaya kaydet
    tts.save("text_to_speech.mp3")

    # Ses dosyasını çal
    pygame.mixer.init()
    pygame.mixer.music.load("text_to_speech.mp3")
    pygame.mixer.music.play()

    # Ses dosyasının çalması bitene kadar bekleyin
    while pygame.mixer.music.get_busy():
        pygame.time.Clock().tick(10)

    # Geçici dosyayı sil
    os.remove("text_to_speech.mp3")

if __name__ == "__main__":
    # Seslendirmek istediğiniz metni girin
    metin = input("Seslendirmek istediğiniz metni yazın: ")

    # Dönüştürme işlemini başlat
    text_to_speech(metin)

Bu program, gtts kütüphanesini kullanarak Google'ın Text-to-Speech API'sini entegre eder. Aynı zamanda ses dosyasını çalmak için pygame kütüphanesini kullanır.

Programın Çalışma Mantığı

  1. Kullanıcıdan seslendirmek istediği metni alır.
  2. Google Text-to-Speech API'yi kullanarak metni ses dosyasına dönüştürür.
  3. Ses dosyasını geçici bir dosyaya kaydeder.
  4. Ses dosyasını çalar.
  5. Ses dosyasının çalması bitene kadar bekler.
  6. Geçici dosyayı siler.

Bu program, metni sese çevirme işlemi için temel bir örnek sunar ve ihtiyaca göre geliştirilebilir. Örneğin, farklı dil seçenekleri ekleyebilir veya seslendirilen metni bir dosyaya kaydedebilirsiniz.

Aykhan Gasimzade Aykhan Gasimzade verified icon
Full Stack Developer

Merhaba! Ben Aykhan, 1999 doğumlu bir Azerbaycanlıyım ve 2017 yılından bu yana programlamayla ilgileniyorum. Teknolojinin büyülü dünyası beni her zaman etkilemiştir ve bu merakımı kendi blogumda paylaşarak daha geniş bir kitleyle buluşturmayı amaçlıyorum.