Text-to-Speech memungkinkan Anda mengonversi kata dan kalimat menjadi data audio berenkode base64 dari ucapan alami manusia. 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 Bahasa Markup Sintesis Ucapan (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 tidak memahami konsep seperti sintesis ucapan atau SSML.
Contoh ini mengharuskan Anda menginstal dan melakukan inisialisasi Google Cloud CLI. Untuk mengetahui informasi tentang cara menyiapkan gcloud CLI, lihat Melakukan autentikasi ke TTS.
Mengonversi teks ke audio suara sintetis
Contoh kode berikut menunjukkan cara mengonversi string menjadi data audio.
Anda dapat mengonfigurasi output sintesis ucapan dalam berbagai cara, termasuk memilih suara yang unik atau memodulasi output dalam nada, volume, kecepatan ucapan, dan frekuensi sampel.
Protocol
Lihat endpoint text:synthesize
API untuk detail selengkapnya.
Untuk melakukan 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 teks yang akan disintesis dalam kolom text
pada bagian input
, dan
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 Go API.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca 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 Java API.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca 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 Node.js API.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca 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 Python API.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Bahasa tambahan
C#: Ikuti Petunjuk penyiapan C# di halaman library klien, lalu kunjungi dokumentasi referensi Text-to-Speech untuk .NET.
PHP: Ikuti Petunjuk penyiapan PHP di halaman library klien, lalu kunjungi dokumentasi referensi Text-to-Speech untuk PHP.
Ruby: Ikuti Petunjuk penyiapan Ruby di halaman library klien, lalu kunjungi 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 alami manusia. 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.
Protocol
Lihat endpoint text:synthesize
API untuk detail selengkapnya.
Untuk melakukan sintesis audio dari SSML, 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 Go API.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca 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 Java API.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca 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 Node.js API.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca 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 Python API.
Untuk mengautentikasi ke Text-to-Speech, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Bahasa tambahan
C#: Ikuti Petunjuk penyiapan C# di halaman library klien, lalu kunjungi dokumentasi referensi Text-to-Speech untuk .NET.
PHP: Ikuti Petunjuk penyiapan PHP di halaman library klien, lalu kunjungi dokumentasi referensi Text-to-Speech untuk PHP.
Ruby: Ikuti Petunjuk penyiapan Ruby di halaman library klien, lalu kunjungi dokumentasi referensi Text-to-Speech untuk Ruby.