วิธีทำให้คอมพิวเตอร์ของคุณคุย / พูดในสิ่งที่คุณพิมพ์
มีคุณสมบัติเจ๋ง ๆ ใน Windows ที่ให้คุณพูดคุยกับคอมพิวเตอร์หรือพูดในสิ่งที่คุณบอกได้! วิธีนี้ใช้ประโยชน์จาก API ในตัวที่ติดตั้งบน Windows XP, Vista, 7, 8 และ 10 ที่เรียกว่า SAPI (Speech Application Programming Interface).
Microsoft Speech API เป็นสิ่งที่ใช้สำหรับคุณลักษณะการเข้าถึงข้อความเป็นคำพูดที่อยู่ใน Windows คุณยังสามารถเขียนโปรแกรมที่เรียกใช้ API ซึ่งจะช่วยให้คุณสามารถให้แอปพลิเคชันของคุณพูดได้ แต่สำหรับนักพัฒนาซอฟต์แวร์.
แค่ทำให้คอมพิวเตอร์ของคุณพูดในสิ่งที่คุณต้องการมันง่ายจริงๆ! ในบทความนี้ฉันจะแสดงวิธีสร้างสคริปต์ VBS ที่จะป้อนข้อความจากผู้ใช้แล้วพูด ฉันจะพูดถึงวิธีเขียนข้อความที่คุณต้องการพูดอย่างหนักและกำหนดเวลาสคริปต์นั้นให้ทำงานในเหตุการณ์เฉพาะเช่นเริ่ม Windows หรือออกจากระบบ.
ข้อความอินพุต, พูดข้อความ
มาเริ่มด้วยสคริปต์ง่ายๆที่จะป็อปอัพกล่องโต้ตอบที่คุณสามารถพิมพ์สิ่งที่คุณต้องการให้ Windows พูด ก่อนอื่นให้เปิดแผ่นจดบันทึกก่อน.
ขั้นตอนที่ 1: วางข้อความต่อไปนี้ลงในเอกสารใหม่:
ข้อความติ่ม, sapi
message = InputBox (“ ป้อนข้อความที่คุณต้องการพูด”,” พูดสิ่งนี้”)
Set sapi = CreateObject (“ sapi.spvoice”)
ข้อความ sapi.Speak
โปรดทราบว่าเมื่อคุณคัดลอกข้อความจากเว็บเบราว์เซอร์ของคุณและวางลงใน Notepad คำพูดจะทำให้เกิดปัญหา ก่อนที่คุณจะบันทึกไฟล์คุณจะต้องผ่านและลบเครื่องหมายอัญประกาศแต่ละรายการ (“) และพิมพ์ใบเสนอราคาอีกครั้ง ในตัวอย่างด้านล่างมีคำพูดหกคำ มันควรมีลักษณะคล้ายกับภาพด้านล่าง.
ตอนนี้เมื่อคุณไปบันทึกไฟล์ตั้งชื่อใด ๆ แต่ให้แน่ใจว่าคุณพิมพ์ .VBS หลังจากชื่อ ถัดไปสำหรับ บันทึกเป็นประเภท ให้เลือก เอกสารทั้งหมด แทนเอกสารข้อความเริ่มต้น.
ตอนนี้ดับเบิลคลิกที่ไฟล์ VBS และคุณจะเห็นกล่องอินพุตที่คุณสามารถพิมพ์ข้อความที่คุณต้องการพูดได้! พิมพ์บางอย่างและคลิกตกลง.
หากคุณทำทุกอย่างถูกต้องคุณควรได้ยินเสียงพูดของคุณ หากคุณได้รับข้อความแสดงข้อผิดพลาดใด ๆ ตรวจสอบให้แน่ใจว่าได้คัดลอกและวางข้อความอีกครั้งและแทนที่เครื่องหมายคำพูดเหล่านั้น.
กำหนดการตั้งค่า SAPI Voice
นี่คือความสนุก แต่เราสามารถกำหนดค่าคอมพิวเตอร์พูดคุยเล็ก ๆ ของเราด้วยการตั้งค่าที่แตกต่างกัน เราสามารถเปลี่ยนระดับเสียงพูดได้เร็วหรือช้าอย่างไรและเปลี่ยนเพศระหว่างชายกับหญิง นี่คือตัวอย่างรหัสที่ฉันเพิ่มสองบรรทัดพิเศษ.
ข้อความติ่ม, sapi
message = InputBox (“ ป้อนข้อความที่คุณต้องการพูด”,” พูดสิ่งนี้”)
Set sapi = CreateObject (“ sapi.spvoice”)
ตั้งค่า sapi.Voice = sapi.GetVoices.Item (1)
sapi.Rate = 0
sapi.volume = 100
ข้อความ sapi.Speak
อัตราเริ่มต้นคือ 0 และช่วงคือ -10 ถึง 10 -10 จะมีเสียงพูดช้าลงและ 10 จะพูดเร็วมาก ปริมาณเริ่มต้นที่ 100 และช่วงคือ 0 ถึง 100 บรรทัดที่ขึ้นต้นด้วย ตั้งค่า sapi.Voice จะอนุญาตให้คุณเปลี่ยนเป็นเสียงอื่นหากติดตั้งในระบบของคุณ.
โปรดทราบว่าจำนวนเสียงที่คุณสามารถเลือกได้ขึ้นอยู่กับระบบปฏิบัติการ ใน Windows 7 มี Microsoft Anna เพียงเสียงเดียวเท่านั้น.
ใน Windows 10 มีสองเสียง: Microsoft David และ Microsoft Zira ดังที่แสดงด้านล่าง.
หากมีเพียงเสียงเดียวที่ติดตั้งในระบบของคุณคุณต้องเปลี่ยนเสียงพูด sapi.GetVoices.Item (1) ไปยัง sapi.GetVoices.Item (0), มิฉะนั้นคุณจะได้รับข้อความแสดงข้อผิดพลาดเมื่อคุณพยายามเรียกใช้สคริปต์ นอกจากนี้คุณยังสามารถสร้างเอกสารแผ่นจดบันทึกอื่นและวางรหัสด้านล่างซึ่งจะบอกคุณว่ามีการติดตั้งเสียงใดบ้าง บันทึกเป็นไฟล์. VBS เหมือนที่แสดงด้านบนและเรียกใช้.
ตั้งค่า VObj = CreateObject (“ SAPI.SpVoice”)
สำหรับแต่ละเสียงใน VObj.getvoices
I = I + 1
msgbox“” & (I - 1) &” -” & Voice.GetDescription
ต่อไป
จนถึงตอนนี้เราได้ใช้กล่องโต้ตอบแบบผุดขึ้นนี้เพื่อป้อนข้อความ แต่คุณสามารถพิมพ์ข้อความของคุณลงในไฟล์สคริปต์ได้ สิ่งนี้จะมีประโยชน์หากคุณต้องการกำหนดเวลาให้สคริปต์รันโดยอัตโนมัติ เห็นได้ชัดว่าสิ่งนี้สามารถใช้เพื่อเล่นตลกเพื่อนและครอบครัวของคุณและใช้งานได้ดีจริงๆ.
แค่คิดว่ามีคนเปิดคอมพิวเตอร์และได้ยินเสียงคอมพิวเตอร์บอกพวกเขาว่า“ สวัสดีจอห์นฉันง่วงมากโปรดอย่ามารบกวนฉันในวันนี้!” เมื่อมันบูทขึ้น! ฉันสัญญากับคุณได้จากประสบการณ์มันช่างตีโพยตีพายและคุณควรจะลอง.
ในการ hardcode ข้อความเพียงแค่เปลี่ยนบรรทัดสุดท้ายเป็นดังนี้:
sapi.Speak“ สวัสดีจอห์นวันนี้ฉันเหนื่อยมาก!”
กำหนดการสคริปต์ไฟล์
ตอนนี้คุณได้ hardcoded ข้อความของคุณสำหรับเป้าหมายที่คุณต้องการคุณก็ต้องเรียกใช้เมื่อคุณต้องการ หากคุณมีความชำนาญด้านเทคโนโลยีคุณสามารถใช้โปรแกรมเช่น AutoIt ซึ่งจะช่วยให้คุณทำสิ่งต่างๆอย่างเช่นเรียกใช้ไฟล์สคริปต์ของคุณเมื่อโปรแกรมบางโปรแกรมเปิดขึ้น.
ฉันไม่มีเวลาที่จะเข้าไปในโพสต์นี้ แต่โชคดีที่ Microsoft มีคุณสมบัติในตัวที่เรียกว่า Task Scheduler ที่ให้คุณทำสิ่งที่ซับซ้อนกับสคริปต์ได้อย่างง่ายดาย.
โพสต์ก่อนหน้าของฉันไปในเชิงลึกเกี่ยวกับวิธีกำหนดเวลาไฟล์สคริปต์ให้ทำงานเมื่อมีเหตุการณ์บางอย่างเกิดขึ้นใน Windows หากคุณมีปัญหาในการทำให้สคริปต์ทำงานโปรดโพสต์ความคิดเห็นและฉันจะพยายามช่วย สนุก!