Naturlig Google-stemme (TTS) med Google Services

Mange af os bruger flows, hvor vi gerne vil have Google Assistenten til at annoncere meddelelser i højtalerne. Det klares nemt med Google TTS appen – men det er ikke helt den samme stemme, som vi er vant til? Hun lyder mere kunstig, fornærmet og snerpet end ellers.

Personligt synes jeg at det er så galt, at jeg kun brugte den app kortvarig. Jeg blev lidt irriteret hver gang at “mokken”, fra et af de finere boligområder på internettet, snerrede meddelelser til mig. Så jeg har i længere tid i stedet indspillet mp3 filer, med den rigtige Google Assistents stemme, og afspillet dem via Chromecast appen.
Det har været lidt nørdet, taget langt tid og ikke været fleksibelt. Skal bare ét ord ændres, så er det helt forfra med at optage en ny mp3 fil og uploade den til en webserver.

Men nu er der kommet en ny app, som dynamisk kan generere en bedre og mere naturlig stemme. Den er lidt sværere at komme i gang med, men når først den indledende opsætning er lavet, så er den lige så nem at bruge som den gamle app.

Lyt til forskellen mellem den gamle Google TTS og Google TTS med Google services.

Den gamle Google TTS
Google TTS med Google Services

Det kræver at du har en højtaler, som kan tage imod en lyd URL. Det kan f.eks. Sonos, Google højtalere og Chromecast enheder. Der behøver ikke nødvendigvis at være en Google Assistent i enheden.

Følg denne guide og få erstattet den syntetiske stemme med en naturlig stemme.

Opret en Google Cloud Services konto

Denne del kræver at du har adgang til et kreditkort (eller Paypal) og en mobiltelefon, som kan modtage SMS.
Bare rolig det hele er gratis! Google skal kun bruge kreditkortet til at sikre sig, at du ikke er en robot… Robotter kan nemlig ikke have kreditkort. Og så håber de selvfølgelig på, at du vil købe et eller andet i deres butik, nu du er der.

  1. Gå til https://cloud.google.com og klik på Get startet for free knappen.
    Gennemfør oprettelsen af kontoen – du skal igennem 3 punkter og det er her du skal bruge kreditkort og SMS.
    Du bliver muligvis også mødt af et spørgeskema til sidst, hvor Google vil vide, hvad du har tænkt dig at bruge denne konto til.
  2. Gå nu til marketplace og søg efter Cloud Text-to-Speech api’et – eller brug den direkte adresse til det her: https://console.cloud.google.com/marketplace/product/google/texttospeech.googleapis.com
    Klik på ENABLE knappen.
  3. Nu skal vi have oprettet en Service Account. Det gør du i menuen IAM & ADMIN – Service Accounts, eller via dette direkte link: https://console.cloud.google.com/projectselector/iam-admin/serviceaccounts/create
    Klik på CREATE PROJECT knappen.
  4. Giv projektet et navn, så du kan kan genkende det.
    Jeg har kaldt mit Google TTS.
    Klik på CREATE knappen.
  5. Nu kommer der endnu en 3 punkts guide. Udfyld den som følger:
    1. Service Account name: Jeg har bare skrevet Google TTS igen
      Klik på CREATE AND CONTINUE knappen.
    2. Role: Owner
      Klik på CONTINUE knappen.
    3. Her skal der ikke udfyldes noget.
      Klik på DONE knappen.
  6. Klik nu på den e-mail-adresse som Google har lavet til projektet.
  7. Klik på KEYS fanebladet.
    Klik herefter på ADD KEY og Create new key
  8. Vælg at Key type skal være JSON.
    Klik på CREATE knappen.
  9. Der bliver nu downloadet en fil til din PC af typen JSON.
    Gem den et sted hvor du kan finde den igen. Vi skal bruge den igen om lidt.
  10. Du har sikkert lagt mærke til den opfordring, som spinger frem i toppen af skærmen, om at skifte fra prøve abonnement til et alm. abonnement. Det kan du roligt gøre! De første 1.000.000 teksttegn HVER MÅNED er gratis.
    Ud over det, så gemmer Google Service appen de seneste 100 beskeder i hukommelsen. Det giver både øget hastighed og mindsker forbruget af de 1.000.000 teksttegn.

    Hvis du ikke gør det, så får du problemer med en grænse på 300 teksttegn pr. minut.

Installer appen

Hvis du er nået hertil, så kan jeg glæde dig med, at det sværeste er overstået!

Nu skal du installere Google Services appen i Homey.
Se evt. GRUNDLÆGGENDE: INSTALLER EN APP artiklen for hjælp.

Indsæt JSON data i appen

  1. Åbn den downloadet JSON fil i en tekst editor. Det kan f.eks. være i Notesblok.
  2. Marker og kopier alt indholdet.
  3. Gå til konfiguration af Google Services appen.
    Det kan enten gøres fra smartphone eller hvis du udfører denne guide fra en PC, så kan du benytte denne side: https://tools.developer.homey.app/tools/app-settings
  4. Indsæt det kopieret JSON indhold og klik på SAVE knappen.
    Du bør nu kunne vælge hvilken Google Cloud Default Voice, som der skal benyttes. Jeg synes at da-DK-Wavenet-E (FEMALE) lyder mest, som den Google Assistent stemme vi kender. Men enhver hvor der står Wavenet ved, vil være en naturlig stemme. Tryk på SAVE knappen igen, når du har valgt stemme.

    Hvis du ikke kan vælge en stemme, så prøv at genstarte appen.

Tilføj en Google Services enhed

Tilføj nu en Google Services enhed. Det skal være af typen Text-To-Speech.

Der skal ikke gøres nogle valg undervejs. Enheden skal bruges i næste del af guiden.

Se evt. GRUNDLÆGGENDE: TILFØJ EN SMART-ENHED I HOMEY artiklen.

Flow tid!

Flowet til venstre er faktisk det sidste punkt, som mangler for at den indledende opsætning er fuldført.

Det er her, at du skal vælge hvilken højtaler, som meddelelserne skal afspilles på. For at du kan lave flowet, så skal du have tilføjet en højtaler på forhånd i Homey.

Jeg bruger en enkelt højtaler, som understøtter Chromecast. Men du kan også vælge en Chromecast gruppe, eller ligge flere kort efter hinanden med hver enkelt højtaler i hvert kort. Hvis du bruger flere enkelt kort, så skal du være opmærksom på, at meddelelserne ikke afspilles synkront.

Det er muligt at have flere TTS devices, med forskellige højtalere liggende under THEN delen af flowet.

Flowet til højre er et eksempel på, hvordan du fremover annoncerer meddelelser i dine højtalere i en meget mere naturlig kvalitet!

Flowcard_not_registred fejlfinding

Hvis du får den fejl (det gjorde jeg), så start med at kigge på tidslinjen, som ligger på forreste side i Homey appen (det gjorde jeg IKKE). Her står der måske præcist hvad problemet er (ja det gjorde der – jeg havde glemt at aktivere Cloud Text-to-Speech api’et, efter jeg havde taget et screenshot til denne guide).

Hvis der ikke er hjælp at hente der, så er her en liste med ting, som det gæve folk på internettet foreslår, at du skal kontrollere:

  • Genstart Google Services appen i Homey
  • Kontroller at du har husket at tilføje URL-tag’et som vist på Google TTS handler flow billedet.
    Flowet skal se ud som på billedet, med et grønt tag hvor der står URL i, når det er færdigt.
  • Kontroller at der er en billing account tilknyttet projektet på Google Cloud platformen:
  • Nogle mener også, at det kan være fordi du stadigvæk er på prøve abonnement, som nævnt i punkt 10.
    Og at der kan gå lidt tid, fra du opgraderer fra prøve til alm. abonnement, før det fungerer.

11 thoughts on “Naturlig Google-stemme (TTS) med Google Services

    • Hej Poul

      Hvad mener du? Er det ikke samme link, som jeg har skrevet oppe i Opret en Google Cloud Services konto – Punkt 2? 🙂

      • Nej, punkt 2 linket peger på Speech-to-Text API’et 😉

        I øvrigt tak for en god guide. Det er den eneste jeg har kunnet finde.
        Det er desværre ikke lykkedes mig at få noget retur fra Text-to-Speech API endnu.
        Jeg har tjekket alle de muligheder for fejl du nævner, men alt ser rigtigt ud.

        Mvh Poul Anker

  • Hej Brian

    Så fik jeg endelig hul igennem 🙂
    Det var selvfølgelig en fejl 40. Jeg havde overset at jeg skulle indsætte tag’et (URL) i “Cast a Audio URL”. Simpelt når først man opdager det 😉
    Måske en god idé at at nævne i guiden, at man skal huske at vælge et tag 🙂

  • Hej Brian.

    Fed guide IGEN!!!!
    Lille kommentar, jeg gennemgik den hele vejen igennem for til sidst at finde ud af at det ikke kan lade sig gøre på mine Ikea Symfoniske højtalere.

    Øv øv

  • Hej Brian.

    Jeg er ved og følge denne guide, men ved punkt 2. møder jeg under pris, flere muligheder, hvor der ved to af mulighederne er nævnt de 1 mil gratis tegn som du nævner i den guide og de andre punkter står der intet om gratis tegn, men en pris man skal betale. Så hvilken skal man vælge?

    • Hej Christian
      Jeg har ikke set det der før. Men jeg tror ikke at du skal vælge noget. Jeg har prøvet at vælge og så reloade siden, og så er valget væk. Det ligner bare pris informationer. Det er “Count of characters for using Wavenet voices” at vi ryger ind under.
      Inde i Homey app’en vælger vi, at det er Wavenet voice at vi bruger og så afregner den efter det. Jeg får stadigvæk kun 0 kr. faktura hver måned.

Skriv en kommentar

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *