2.7.2 Konversi Teks ke Suara
Sistem Text to Speech pada prinsipnya terdiri dari dua sub sistem, yaitu :
1 Bagian Konverter Teks ke Fonem Text to Phoneme
Bagian Konverter Teks ke Fonem berfungsi untuk mengubah kalimat masukan dalam suatu bahasa tertentu yang berbentuk teks menjadi rangkaian kode-kode
bunyi yang biasanya direpresentasikan dengan kode fonem, durasi serta pitch-nya. Bagian ini bersifat sangat language dependant. Untuk suatu bahasa baru, bagian
ini harus dikembangkansecara lengkap khusus untuk bahasa tersebut.
2 Bagian Konverter Fonem to Ucapan Phoneme to Speech
Bagian Konverter Fonem ke Ucapan akan menerima masukan berupa kode- kode fonem serta pitch dan durasi yang dihasilkan oleh bagian sebelumnya.
Berdasarkan kode-kode tersebut, bagian Konverter Fonem ke Ucapan akan menghasilkan bunyi atau sinyal ucapan yang sesuai dengan kalimat yang ingin
diucapkan. Ada beberapa alternatif teknik yang dapat digunakan untuk implementasi bagian ini. Dua teknik yang banyak digunakan adalah formant
synthesizer,serta diphone concatenation. Konverter fonem ke ucapan berfungsi untuk membangkitkan sinyal ucapan berdasarkan kode-kode fonem yang
dihasilkan dari proses sebelumnya. Sub sistem ini harus memiliki pustaka setiap unit ucapan dari suatu bahasa. Pada sistem yang menggunakan teknik diphone
concatenation, sistem harus didukung oleh suatu diphone database yang berisi rekaman segmen-segmen ucapan yang berupa diphone. Ucapan dalam suatu
bahasa dibentuk dari satu set bunyi yang mungkin berbeda untuk setiap bahasa,
oleh karena itu setiap bahasa harus dilengkapi dengan diphone database yang berbeda.
Input Output
Text To Phoneme Phoneme to Speech Text
Speech
Gambar 2.4 Skema Text To Speech
Ucapan dalam suatu bahasa dibentuk dari satu set bunyi yang mungkin berbeda untuk setiap bahasa, oleh karena itu setiap bahasa harus dilengkapi
dengan diphone database yang berbeda [11]. Tahapan-tahapan utama konversi dari teks menjadi ucapan dapat dinyatakan pada Gambar 2.5.
Gambar 2.5 Proses Konversi dari Teks ke Ucapan
dimodifikasi dari Pelton, 1992
2.8 Google Text To Speech API
Google telah memperkenalkan upgrade ke layanan menerjemahkan dengan menambahkan ketentuan berbicara dengan suara ke teks atau sebaliknya yang
diterjemahkan. Saat ini memang tidak ada API resmi untuk layanan text-to- speech. Pada dasarnya, Google adalah mengambil HTTP GET biasa REST
berbasis permintaan dan mengembalikan audio dalam format MP3, Permintaan URL dari :
http:translate.google.comtranslate_tts?tl=enq=some+text
Pada API ini hanya menaruh beberapa teks berbasis REST di URL di atas, dan mendapatkan kembali file berbentuk MP3 [11]. Google menggunakan diphone
database espeak speech synthesizer dan juga Mbrola. Google API ini juga menyediakan engine dalam mobile, windows dan website dengan menggunakan
berbagai macam bahasa pemograman. Google Translate kini sudah memiliki lebih dari 60 bahasa selain
digunakan dalam menerjemahkan kata atau kalimat, Google Translate juga berfungsi untuk mengkonversi tulisan menjadi suara. Dalam penggunaan URL
diatas untuk mendapatkan suara dengan bahasa yang berbeda, hanya mengganti en
menjadi kode bahasa yang diinginkan. Misalnya pada ar untuk bahasa Arab atau ja untuk bahasa Jepang.
Keterangan dari
penggunaan GET
url diatas
adalah :
q : query string untuk mengkonversi tulisan menjadi suara .mp3
tl
: untuk menerjemahkan bahasa, misalnya,
ar
untuk bahasa Arab , atau
en-us
untuk Bahasa Inggris.
Adapun alur dari Google TTS API adalah : 1. Script membagi input teks untuk potongan paling banyak 100 karakter.
Setiap potongan kemudian dikirim ke TTS Google Api. 2. Lalu Google TTS API membaca atau menerjemahkan tulisan yang
dikirimkan melalui url tersebut. 3. Setelah itu Google TTS akan mengirimkan output berapa suara berformat
mp3. 4. Menginputkan teks di Google TTS ini harus memperhatikan tanda baca
dan juga jumlah karaketnya. Titik dan juga koma mempengaruhi artikulasi dan pemotongan pada kalimat.
5. Setelah titik . waktu jeda akan lebih lama karena titik merupakan akhir dari sebuah kalimat.
6. Tanda baca ?., juga menunjukkan akhir potongan pada kalimat yang mengandung unsur seru dan juga tanya, namun waktu jeda tidak terlalu
lama. 7. jika kalimat terlalu panjang tanpa tanda baca, maka suara terdengar tidak
begitu jelas terutama dalam Bahasa Indonesia. 8. Untuk menghasilkan suara yang baik, lebih baik memodifikasi susunan
kalimat yang dimiliki sesuai dengan kebutuhan.