Jumat, 26 Maret 2010

Speech Synthetizer


Dari dulu sampai sekarang, para ahli berusaha mengimplementasikan kecerdasan manusia pada komputer. Berbagai aplikasi artificial intelligence (AI) disematkan ke dalam komputer, agar mesin ini mampu berkomunikasi dengan manusia atau paling tidak memahami manusia. Salah satu AI yang terus dikembangkan sampai saat ini adalah speech synthesizer yang memungkinkan komputer berbicara dalam bahasa manusia.
Di televisi, Anda mungkin pernah menyaksikan Stephen Hawking berbicara di depan para mahasiswanya. Fisikawan yang terkenal dengan teori black holes-nya ini sudah tidak mampu lagi mengeluarkan suara dari lisannya, namun berkat teknologi speech synthetizer, dia masih bisa bercakap-cakap.
Mesin speeh synthetizer Hwking memang cukup kompleks. Alat ini tidak hanya memproduksi suara, tetapi juga menangkap input dari gerakan mata sang doktor. Demikian pula, misalnya, dengan aplikasi voice command yang banyak tertanam di smartphone mutakhir yang memadukan speech recognizer dengan speech synthetizer.
Aplikasi speech synthetizer yang paling sederhana sebenarnya ada pada setiap PC ber-OS Windows. Bila Anda menekan tuts WinKey+u di keyboard, Windows akan mengaktifkan Utility Manager, yang didalamnya terdapat aplikasi Microsoft Narrator. Aplikasi ini akan membaca setiap jendela yang Anda aktifkan, termasuk tombol-tombol di dalamnya.
Atau, mungkin Anda pernah mengintal aplikasi Microsoft Reader di PC. Aplikasi yang diperuntukkan bagi file .LIT ini pun dilengkapi dengan kemampuan menerjemahkan teks menjadi suara (text-to-speech) yang merupakan contoh teknologi speech synthetizer.


Alur Kerja
Seperti halnya speech recognition, desain aplikasi speech synthetizer tidak hanya dikerjakan oleh ahli-ahli informatika, melainkan juga melibatkan ahli-ahli linguistik. Untuk memahami cara kerja speech synthetizer, kita mulai dari nama lainnya: text-to-speech, yang artinya mengubah teks menjadi suara.
Sekarang kita sudah mendapatkan dua elemen dalam speech synthetizer, yakni teks sebagai elemen input, dan suara sebagai elemen output. Nah, apa yang terjadi di antara input dan output inilah yang disebut sebagai proses atau manipulasi. Dalam speech synthetizer, proses dibagi menjadi dua bagian besar : front-end dan back-end.
Bagian front-end memiliki dua tugas utama. Pertama adalah mengonversi teks mentah yang berisi simbol-simbol seperti angka dan singkatan ke dalam huruf-huruf yang terbaca. Sebagai contoh, tugas pertama bagian front-end mengonversi teks 1 menjadi one, btw menjadi by the way, dan lain-lain. Proses ini sering disebut sebagai text normlization, pre-processing, atau tokenization.
Bagian front-end ini kemudian memberikan transkripsi fonetis pada setiap kata, memisahkannya, dan menandai teks ke dalam unit-unit prosodik (irama, tekanan, dan intonasi), seperti frase (sekelompok kata yang berfungsi sebagai satu unit sintaksis), klausa (anak kalimat), dan kalimat. Proses penyematan transkripsi fonetis pada kata-kata ini dikenal dengan istilah text-to-phone-me atau grapheme-to-phoneme.
Transkripsi fonetis dan informasi prosodi tersebut digabung dan membentuk representasi linguistik simbolis yang merupakan output dari front-end. Bagian back-end, yang sering disebut sebagai synthetizer itu sendiri, kemudian mengonversi representasi linguistik simbolis ini menjadi suara. Demikianlah gambaran alur kerja sebuah aplikasi speech synthetizer atau text-to speech.
Teknologi Synthesizer
Kualitas terpenting dari sebuah aplikasi speech synthetizer adalah seberapa "alami", dan "inteligibel" output yang dihasilkannya. Alami artinya seberapa dekat suara yang dihasilkan aplikasi speech synthesizer dengan suara manusia. Sedangkan inteligibel adalah seberapa mudah output tersebut dipahami oleh manusia. Semua aplikasi speech synthetizer berusaha untuk menghasilkan output yang alami dan inteligibel sekaligus.
Sampai saat ini, ada banyak teknologi untuk meng-generate gelombang suara sintetis ini. Dua teknologi yang paling banyak digunakan adalah concatenative synthesis dan formant synthesis. Keduanya memiliki keunggulan dan kekurangan sendiri-sendiri.
Teknologi pertama, concatenative synthesis, berbasis pada rangkaian (atau merangkai bersama) segmen-segmen dari suara yang direkam. Umumny, teknologi ini menghasilkan suara sintesis yang terdengar paling alami.
Namun, perbedaan antara suara alami yang direkam dengan segmentasi gelombang bunyi kadang menghasilkan suara yang mengganggu. Mirip seperti suara pemberitahuan nomor antrean di bank atau suara call center operator ponsel yang menyebutkan sisa pulsa dan masa berlaku kartu ponsel Anda.
Teknologi kedua, format synthesizer, tidak menggunakan sampel suara manusia, melainkan membuat suara sintesis menggunakan model akustik. Parameter-parameter seperti frekuensi dasar, alunan suara, dan tingkat kebisingan bervariasi dari waktu ke waktu untuk menciptakan gelombang suara buatan.
Kebanyakan aplikasi berbasis teknologi ini menghasilkan suara buatan (tidak alami) seperti suara robot. Melihat keterbatasan kedua teknologi ini dalam menghasilkan suara buatan, sepertinya kita harus sabar menunggu pengembangannya lebih lanjut dalam beberapa tahun atau dekade ke depan.

Sumber : PC Mild Edisi 04/2010

0 comments: