Text-to-speech


Saya lanjutkan catatan dari training AI102, kali ini tentang text-to-speech. Text-to-speech ini untuk menggenerate suara dari teks. Seperti API Speech-to-text, Speech service memiliki 2 REST APIs:

  • API Text-to-speech, untuk menggenerate suara dari teks
  • API Text-to-speech Long Audio, untuk mengkonversi teks yang banyak ke audio, contohnya generate audio-book dari teks.

Dokumentasi tentang API ini bisa dilihat disini:  Azure Text-to-speech REST APIs. Seperti speech-to-text, aplikasi yang menggunakan speech-enabled applications menggunakan Speech service melalui (programming) language-specific SDK. Langkah untuk implementasi speech synthesis mirip seperti pada pengenalan suara (speech recognition):

  1. Menggunakan obyek SpeechConfig untuk melakukan enkapsulasi informasi yang dibutuhkan untuk menghubungkan ke Speech resource. Khususnya location dan key.
  2. Selain itu ada AudioConfig untuk mendefinisikan perangkat output yang akan menghasilkan suara, umumnya menggunakan speaker sistem, tapi bisa juga outputnya berupa file audio. Selain itu bisa juga berupa audio stream object
  3. Menggunakan SpeechConfig dan AudioConfig untuk membuat opyek SpeechSynthesizer. Obyek ini adalah sebuah proxy client untuk API Text-to-speech
  4. Dengan metode obyek SpeechSynthesizer untuk memanggil fungsi API. Contohnya, metoda SpeakTextAsync() menggunakan Speech service untuk mengkonversi text menjadi audio.
  5. Memproses respon dari Speech service. Pada metode SpeakTextAsync, hasilnya adalah obyek SpeechSynthesisResult yang mengandung parameter berikut: AudioData, Properties, Reason, ResultId

Bila speech berhasil dibuat, parameter Reason dibuat untuk melakukan enumerasi  SynthesizingAudioComplete dan parameter AudioData menghasilkan audio stream. Sampai disini dulu semoga bermanfaat!


Silahkan tuliskan tanggapan, kritik maupun saran