Sådan får du din computer til at tale/tale, hvad du skriver

Der er en fed funktion i Windows , der giver dig mulighed for at få din computer til at tale eller tale, hvad end du fortæller den! Denne metode drager fordel af en indbygget API installeret på Windows XP , Vista , 7, 8 og 10 kaldet SAPI ( Speech Application Programming Interface ).

Microsoft Speech API er det , der bruges til tekst-til-tale tilgængelighedsfunktionen indbygget i Windows . Du kan også skrive programmer, der kalder API'en(API) , hvilket vil give dig mulighed for at lade dine applikationer tale, men det er for udviklere.

Bare at få din computer til at sige, hvad du vil, er faktisk ret nemt! I denne artikel viser jeg dig, hvordan du opretter et VBS -script, der tager et tekstinput fra en bruger og derefter oplæser det. Jeg vil også nævne, hvordan du hårdkoder den tekst, du vil have oplæst, og derefter planlægger det script til at køre på specifikke begivenheder som at starte Windows eller logge af.

Indtast tekst, oplæs besked

Lad os starte med et simpelt script, der åbner en dialogboks, hvor du kan skrive det, du vil have, at Windows skal tale. Først(First) skal du gå videre og åbne Notesblok(Notepad) .

Trin 1:(Step 1:)  Indsæt følgende tekst i et nyt dokument:

Dim message, sapi
message=InputBox(“Enter the text you want spoken”,”Speak This”)
Set sapi=CreateObject(“sapi.spvoice”)
sapi.Speak message

Bemærk, at når du kopierer tekst fra din webbrowser og indsætter den i Notesblok(Notepad) , vil citaterne give problemer. Før du gemmer filen, skal du gennemgå og slette hvert citat (") og skrive citatet igen. I eksemplet nedenfor er der seks citater. Det skal ligne billedet nedenfor.

få computeren til at tale

Når du nu går for at gemme filen, giv den et hvilket som helst navn, men sørg for at du også skriver .VBS efter navnet. Vælg derefter Alle filer( All files) i feltet Gem som type i ( Save as type)stedet(Text Documents) for standardtekstdokumenter .

få computeren til at tale

Dobbeltklik nu på VBS -filen, og du skulle se en indtastningsboks, hvor du kan indtaste den tekst, du vil have talt op! Skriv noget, og klik på OK.

tal dialogboksen

Hvis du gjorde alt rigtigt, skulle du høre enten en mandlig eller kvindelig stemme sige din sætning. Hvis du får nogen form for fejlmeddelelse, skal du sørge for at kopiere og indsætte teksten igen og erstatte disse citater.

Konfigurer SAPI Voice-indstillinger

Det er sjovt, men vi kan også konfigurere vores lille talende computer med forskellige indstillinger. Vi kan ændre lydstyrken, hvor hurtigt eller langsomt stemmen taler og ændre køn mellem mand og kvinde. Her er et eksempel på kode, hvor jeg tilføjede et par ekstra linjer.

Dim message, sapi
message=InputBox(“Enter the text you want spoken”,”Speak This”)
Set sapi=CreateObject(“sapi.spvoice”)
Set sapi.Voice = sapi.GetVoices.Item(1)
sapi.Rate = 0
sapi.volume = 100
sapi.Speak message

Standardhastigheden er 0, og området er -10 til 10. -10 vil få stemmen til at tale super langsomt, og 10 vil tale superhurtigt. Lydstyrken er som standard sat til 100, og området er 0 til 100. Linjen, der starter med Set sapi.Voice , giver dig mulighed for at skifte til en anden stemme, hvis den er installeret på dit system.

Bemærk, at antallet af stemmer, du kan vælge imellem, afhænger af operativsystemet. I Windows 7 er der kun én stemme, Microsoft Anna .

installerede stemmer

I Windows 10 er der to stemmer: Microsoft David og Microsoft Zira som vist nedenfor.

microsoft davis stemme

microsoft zira stemme

Hvis der kun er én stemme installeret på dit system, skal du ændre, der siger sapi.GetVoices.Item(1) til sapi.GetVoices.Item(0) , ellers vil du få en fejlmeddelelse, når du forsøger at køre scriptet. Du kan også oprette et andet Notesblok(Notepad) -dokument og indsætte koden nedenfor, som fortæller dig, hvilke stemmer der er installeret. Gem den som en .VBS-fil som vist ovenfor, og kør den.

Set VObj = CreateObject(“SAPI.SpVoice”)
For Each Voice In VObj.getvoices
I = I + 1
msgbox “” & (I – 1) & ” – ” & Voice.GetDescription
Next

Indtil nu har vi brugt denne popup-dialog til at indtaste tekst, men du kan også bare skrive din besked i script-filen. Dette ville være nyttigt, hvis du derefter vil planlægge scriptet til at køre automatisk. Dette kan naturligvis bruges til at pranke dine venner og familie, og det fungerer rigtig godt.

Forestil dig bare, at nogen tænder for deres computer og hører computeren fortælle dem " Hej John(Hello John) , jeg er meget søvnig, vær venlig ikke at genere mig i dag!" når den starter op! Jeg kan love dig af erfaring, det er hysterisk, og du skal bestemt prøve det.

For at hardkode meddelelsen skal du blot ændre den sidste linje til noget som dette:

sapi.Speak “Hello John, I am very tired today!”

Planlæg scriptfil

Nu hvor du har hardkodet din besked til dit tilsigtede mål, skal du blot køre den, når du vil. Hvis du er teknisk kyndig, kan du bruge et program som AutoIt , som giver dig mulighed for at lave ekstreme ting som at køre din script-fil, når et bestemt program åbnes, eller når et vindue er maksimeret eller minimeret.

Jeg har ikke tid til at komme ind på alt det i dette indlæg, men heldigvis har Microsoft en indbygget funktion kaldet Task Scheduler , der lader dig gøre nogle ret komplicerede ting med scripts nemt.

Mit tidligere indlæg går i dybden med, hvordan man planlægger en scriptfil til at køre(how to schedule a script file to run) , når visse hændelser opstår i Windows . Hvis du har problemer med at få dit script til at virke, er du velkommen til at skrive en kommentar, så skal jeg prøve at hjælpe. God fornøjelse!



About the author

Jeg er datamatiker med over 10 års erfaring i at udvikle og vedligeholde software til smartphones og Windows 11/10. Jeg har også været involveret i Google Chrome siden begyndelsen af ​​2014 som ledende ingeniør. I den rolle var jeg med til at skabe nogle af de mest populære browsere på platformen. Derudover har jeg arbejdet på spilmotorer i et par år nu, og jeg er i øjeblikket en kandidatstuderende, der arbejder på et projekt, der i sidste ende kunne bringe virtual reality til dit skrivebord.



Related posts