Text-to-Speech memungkinkan Anda mengonversi kata dan kalimat menjadi data audio berenkode base64 berupa ucapan manusia yang terdengar alami. Kemudian, Anda dapat mengonversi data audio menjadi file audio yang dapat diputar seperti MP3 dengan mendekode data base64. Text-to-Speech API menerima input sebagai teks mentah atau Speech Synthesis Markup Language (SSML).
Dokumen ini menjelaskan cara membuat file audio dari input teks atau SSML menggunakan Text-to-Speech. Anda juga dapat meninjau artikel Dasar-Dasar Text-to-Speech jika belum memahami konsep seperti sintesis ucapan atau SSML.
Pastikan Anda sudah menginstal dan menginisialisasi Google Cloud CLI agar dapat menggunakan contoh ini. Untuk mengetahui informasi tentang cara menyiapkan gcloud CLI, lihat Mengautentikasi ke TTS.
Mengonversi teks ke audio suara sintetis
Contoh kode berikut menunjukkan cara mengonversi string menjadi data audio.
Anda dapat mengonfigurasi output sintesis ucapan dengan berbagai cara, termasuk memilih suara yang unik atau memodulasi output dari segi tinggi nada, volume, kecepatan bicara, dan frekuensi sampel.
Protokol
Lihat endpoint API text:synthesize untuk mengetahui detail selengkapnya.
Untuk menyintesis audio dari teks, buat permintaan POST HTTP ke
endpoint text:synthesize. Dalam isi permintaan POST,
tentukan jenis suara yang akan disintesis di bagian konfigurasi voice,
tentukan teks yang akan disintesis di kolom text dari bagian input, lalu
tentukan jenis audio yang akan dibuat di bagian audioConfig.
Cuplikan kode berikut mengirimkan permintaan sintesis ke
endpoint text:synthesize dan menyimpan hasilnya ke file
bernama synthesize-text.txt. Ganti PROJECT_ID dengan
project ID Anda.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: <var>PROJECT_ID</var>" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'input':{ 'text':'Android is a mobile operating system developed by Google, based on the Linux kernel and designed primarily for touchscreen mobile devices such as smartphones and tablets.' }, 'voice':{ 'languageCode':'en-gb', 'name':'en-GB-Standard-A', 'ssmlGender':'FEMALE' }, 'audioConfig':{ 'audioEncoding':'MP3' } }" "https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-text.txt
Text-to-Speech API menampilkan audio yang disintesis sebagai data berenkode base64 yang terdapat
dalam output JSON. Output JSON dalam file synthesize-text.txt terlihat
mirip dengan cuplikan kode berikut.
{
"audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.."
}
Untuk mendekode hasil dari Text-to-Speech API sebagai file audio MP3, jalankan
perintah berikut dari direktori yang sama dengan file synthesize-text.txt.
cat synthesize-text.txt | grep 'audioContent' | \ sed 's|audioContent| |' | tr -d '\n ":{},' > tmp.txt && \ base64 tmp.txt --decode > synthesize-text-audio.mp3 && \ rm tmp.txt
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Text-to-Speech, lihat Library klien Text-to-Speech. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Text-to-Speech API untuk Go.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Text-to-Speech, lihat Library klien Text-to-Speech. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Text-to-Speech API untuk Java.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Text-to-Speech, lihat Library klien Text-to-Speech. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Text-to-Speech API untuk Node.js.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Text-to-Speech, lihat Library klien Text-to-Speech. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Text-to-Speech API untuk Python.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Bahasa tambahan
C#: Ikuti petunjuk penyiapan C# di halaman library klien, lalu lihat dokumentasi referensi Text-to-Speech untuk .NET.
PHP: Ikuti petunjuk penyiapan PHP di halaman library klien, lalu lihat dokumentasi referensi Text-to-Speech untuk PHP.
Ruby: Ikuti petunjuk penyiapan Ruby di halaman library klien, lalu lihat dokumentasi referensi Text-to-Speech untuk Ruby.
Mengonversi SSML ke audio suara sintetis
Menggunakan SSML dalam permintaan sintesis audio dapat menghasilkan audio yang lebih mirip dengan ucapan manusia yang terdengar alami. Secara khusus, SSML memberi Anda kontrol yang lebih mendetail terkait cara output audio merepresentasikan jeda dalam ucapan atau cara audio melafalkan tanggal, waktu, akronim, dan singkatan.
Untuk mengetahui detail selengkapnya tentang elemen SSML yang didukung oleh Text-to-Speech API, lihat referensi SSML.
Protokol
Lihat endpoint API text:synthesize untuk mengetahui detail selengkapnya.
Untuk menyintesis sintesis audio dari teks, buat permintaan POST HTTP ke
endpoint text:synthesize. Dalam
isi permintaan POST, tentukan jenis suara yang akan disintesis
di bagian konfigurasi voice, tentukan SSML yang akan disintesis di
kolom ssml dari bagian input, lalu tentukan jenis audio yang akan dibuat
di bagian audioConfig.
Cuplikan kode berikut mengirimkan permintaan sintesis ke
endpoint text:synthesize dan menyimpan hasilnya ke file
bernama synthesize-ssml.txt. Ganti PROJECT_ID dengan
project ID Anda.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: <var>PROJECT_ID</var>" \ -H "Content-Type: application/json; charset=utf-8" --data "{ 'input':{ 'ssml':'<speak>The <say-as interpret-as=\"characters\">SSML</say-as> standard is defined by the <sub alias=\"World Wide Web Consortium\">W3C</sub>.</speak>' }, 'voice':{ 'languageCode':'en-us', 'name':'en-US-Standard-B', 'ssmlGender':'MALE' }, 'audioConfig':{ 'audioEncoding':'MP3' } }" "https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-ssml.txt
Text-to-Speech API menampilkan audio yang disintesis sebagai data berenkode base64 yang terdapat
dalam output JSON. Output JSON dalam file synthesize-ssml.txt terlihat
mirip dengan cuplikan kode berikut.
{
"audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.."
}
Untuk mendekode hasil dari Text-to-Speech API sebagai file audio MP3, jalankan
perintah berikut dari direktori yang sama dengan file synthesize-ssml.txt.
cat synthesize-ssml.txt | grep 'audioContent' | \ sed 's|audioContent| |' | tr -d '\n ":{},' > tmp.txt && \ base64 tmp.txt --decode > synthesize-ssml-audio.mp3 && \ rm tmp.txt
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Text-to-Speech, lihat Library klien Text-to-Speech. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Text-to-Speech API untuk Go.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Text-to-Speech, lihat Library klien Text-to-Speech. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Text-to-Speech API untuk Java.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Text-to-Speech, lihat Library klien Text-to-Speech. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Text-to-Speech API untuk Node.js.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Text-to-Speech, lihat Library klien Text-to-Speech. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Text-to-Speech API untuk Python.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Bahasa tambahan
C#: Ikuti petunjuk penyiapan C# di halaman library klien, lalu lihat dokumentasi referensi Text-to-Speech untuk .NET.
PHP: Ikuti petunjuk penyiapan PHP di halaman library klien, lalu lihat dokumentasi referensi Text-to-Speech untuk PHP.
Ruby: Ikuti petunjuk penyiapan Ruby di halaman library klien, lalu lihat dokumentasi referensi Text-to-Speech untuk Ruby.
Coba sendiri
Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa Text-to-Speech dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
Coba Text-to-Speech gratis