יצירת אודיו מטקסט באמצעות שורת הפקודה
במאמר הזה מוסבר איך להגיש בקשה ל-Cloud Text-to-Speech באמצעות שורת הפקודה. כדי לקרוא מידע נוסף על מושגי היסוד ב-Cloud Text-to-Speech, אפשר לעיין במאמר Cloud Text-to-Speech Basics.
לפני שמתחילים
לפני ששולחים בקשה ל-Cloud Text-to-Speech API, צריך לבצע את הפעולות הבאות. פרטים נוספים מופיעים בדף לפני שמתחילים.
- הפעלת Cloud Text-to-Speech בפרויקט ב-GCP.
- מוודאים שהחיוב מופעל עבור Cloud Text-to-Speech.
-
התקינו את ה-CLI של Google Cloud. אחר כך, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud initאם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
סינתוז אודיו מטקסט
כדי להמיר טקסט לאודיו, שולחים בקשת HTTP POST לנקודת הקצה https://texttospeech.googleapis.com/v1/text:synthesize. בגוף של פקודת ה-POST, מציינים את סוג הקול לסינתזה בקטע voice configuration, מציינים את הטקסט לסינתזה בשדה text בקטע input, ומציינים את סוג האודיו ליצירה בקטע audioConfig.
מריצים את בקשת ה-REST שבהמשך בשורת הפקודה כדי לבצע סינתזה של אודיו מטקסט באמצעות Cloud TTS. הפקודה משתמשת בפקודה
gcloud auth application-default print-access-tokenכדי לאחזר טוקן הרשאה לבקשה.לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: המזהה האלפאנומרי של הפרויקט ב- Google Cloud .
ה-method של ה-HTTP וכתובת ה-URL:
POST https://texttospeech.googleapis.com/v1/text:synthesize
תוכן בקשת JSON:
{ "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" } }כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{ "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.." }פלט ה-JSON של פקודת ה-REST מכיל את האודיו המסונתז בפורמט קידוד base64. מעתיקים את התוכן של השדה
audioContentלקובץ חדש בשםsynthesize-output-base64.txt. הקובץ החדש ייראה בערך כך://NExAARqoIIAAhEuWAAAGNmBGMY4EBcxvABAXBPmPIAF//yAuh9Tn5CEap3/o ... VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
מפענחים את התוכן של הקובץ
synthesize-output-base64.txtלקובץ חדש בשםsynthesized-audio.mp3. מידע על פענוח של קידוד base64 זמין במאמר פענוח של תוכן אודיו בקידוד Base64.Linux
מעתיקים רק את התוכן בקידוד Base64 לקובץ טקסט.
מפענחים את קובץ הטקסט של המקור באמצעות הכלי base64 של שורת הפקודה עם הדגל
-d:
$ base64 SOURCE_BASE64_TEXT_FILE -d > DESTINATION_AUDIO_FILE
Mac OSX
מעתיקים רק את התוכן בקידוד Base64 לקובץ טקסט.
מפענחים את קובץ הטקסט של המקור באמצעות כלי שורת הפקודה base64:
$ base64 --decode SOURCE_BASE64_TEXT_FILE > DESTINATION_AUDIO_FILE
Windows
מעתיקים רק את התוכן בקידוד Base64 לקובץ טקסט.
מפענחים את קובץ הטקסט של המקור באמצעות הפקודה
certutil.
certutil -decode SOURCE_BASE64_TEXT_FILE DESTINATION_AUDIO_FILE
להפעיל את התוכן של
synthesized-audio.mp3באפליקציית אודיו או במכשיר אודיו. אפשר גם לפתוח אתsynthesized-audio.mp3בדפדפן Chrome כדי להפעיל את האודיו. לשם כך, צריך לנווט לתיקייה שמכילה את הקובץ, למשלfile://my_file_path/synthesized-audio.mp3
הסרת המשאבים
כדי להימנע מחיובים מיותרים ב-Google Cloud Platform, כדאי להשתמש בGoogle Cloud console כדי למחוק את הפרויקט אם הוא לא נחוץ לכם.
המאמרים הבאים
- מידע נוסף על Cloud Text-to-Speech זמין במאמר מושגי יסוד.
- אפשר לעיין ברשימה של הקולות הזמינים שאפשר להשתמש בהם לדיבור מסונתז.