เปลี่ยนข้อความเป็นเสียงพูดด้วย Python

วิธีการใช้ภาษา Python เพื่อแปลงข้อความเป็นเสียงพูดคือการใช้งานไลบรารี Text-to-Speech (TTS) ที่มีให้ใช้งานหลากหลาย เช่น pyttsx3, gTTS และ SpeechRecognition ซึ่งเป็นเพียงตัวอย่างเพื่อความสะดวกในการเริ่มต้น ในที่นี้เราจะใช้ pyttsx3 ซึ่งเป็นไลบรารีที่ง่ายและมีความสามารถมากพอในการแปลงข้อความเป็นเสียงพูด

ก่อนอื่นให้ตรวจสอบให้แน่ใจว่าไลบรารี pyttsx3 ได้ถูกติดตั้งและพร้อมใช้งานในเครื่องคอมพิวเตอร์ของคุณแล้ว หากยังไม่ได้ติดตั้งจะสามารถติดตั้งได้โดยใช้คำสั่ง pip install pyttsx3 ใน Command Prompt หรือ Terminal

เมื่อได้ pyttsx3 แล้ว เราสามารถเริ่มใช้งานได้โดยการ import และสร้างอ็อบเจกต์ใหม่ของ Engine ดังนี้

import pyttsx3

engine = pyttsx3.init()

หลังจากนั้น เราสามารถกำหนดค่าต่างๆ ให้กับ Engine ได้ เช่น ภาษาที่ใช้ในการแสดงผลเสียงพูด ระดับความเร็ว อัตราตัวอักษร และอื่นๆ ที่จะสอดคล้องกับความต้องการของคุณ

engine.setProperty('rate', 150)  # อัตราความเร็ว 150 words per minute
engine.setProperty('volume', 0.7)  # ระดับเสียง 0.7

# สำหรับเลือกภาษา สามารถไปตรวจสอบรายละเอียดเพิ่มเติมในโค้ดจากเอกสาร API ของ pyttsx3

# engine.setProperty('voice', 'th')  # ตัวอย่างใช้เสียงไทย

# ในกรณีที่ต้องการให้เสียงพูดผ่านลำโพงหรือหูฟัง สามารถเลือก Audio Output Device ได้เช่นกัน

# engine.setProperty('audioDevice', 'Microsoft Sound Mapper - Output')

เมื่อได้กำหนดค่า Engine ต่างๆ เรียบร้อย ก็สามารถทำการแปลงข้อความเป็นเสียงพูดได้ โดยใช้เมธอด say() หรือ sayAndWait() ของ Engine

text = "สวัสดีชาวโลก"
engine.say(text)
engine.runAndWait()

ตอนนี้คุณสามารถรันโค้ดข้างต้นได้แล้ว และคุณจะได้ยินเสียงพูดที่ระบุในตัวแปล text ซึ่งในที่นี้คือ “สวัสดีชาวโลก”

นอกจากนี้ คุณยังสามารถแปลงข้อความที่ยาวกว่าหรือซับซ้อนกว่านี้ได้ เพียงแค่รวมเป็นฟังก์ชันหรือใช้การวนลูปเพื่อพูดทีละส่วน แล้วอัปเดต Engine เพื่อให้สามารถพูดต่อในครั้งถัดไป

อืม…สุดท้ายนี้ อย่าลืมในบางกรณีที่เราใช้งาน API หรือการเรียก External Service เช่น gTTS หรือ SpeechRecognition เราอาจจำเป็นต้องติดตั้ง Library เสริมเพิ่มเติม ซึ่งอาจจะต้องลงในรูปแบบ Python Package ก่อน ดังนั้นให้แน่ใจว่าคุณลงไลบรารีที่จำเป็นก่อนการใช้งาน

ตัวอย่างโค๊ตสำหรับบันทึกไฟล์ลงคอมพิวเตอร์

import pyttsx3

# สร้างวัตถุ TTS
engine = pyttsx3.init()

# กำหนดคุณสมบัติเสียง
engine.setProperty('rate', 150)  # ความเร็วของเสียง (default=200)
engine.setProperty('volume', 1.0)  # ระดับเสียง (0.0 - 1.0)

# ใส่ข้อความที่คุณต้องการให้เป็นเสียง
text = "Hello"

# เริ่มเล่นเสียง
engine.save_to_file(text, '/content/sample_data/test.mp3')
engine.runAndWait()

Read more

สวีเดน พบ ตูนิเซีย: ศึกเปิดสนามฟุตบอลโลก 2026 กลุ่ม F – ใครจะเหนือกว่ากัน?

สวีเดน พบ ตูนิเซีย: ศึกเปิดสนามฟุตบอลโลก 2026 กลุ่ม F – ใครจะเหนือกว่ากัน?

วิเคราะห์เจาะลึกแมตช์เดือด สวีเดน พบ ตูนิเซีย ฟุตบอลโลก 2026 กลุ่ม F พร้อมรายชื่อนักเตะ การวิเคราะห์เกมรุก-รับ และช่องทางดูบอลสด

By ทีมงาน devdog
ลือสะเทือนวงการ! HUAWEI Mate 90 series เตรียมเขย่าตลาดด้วย 5 รุ่นรวด พร้อม "Fan Edition" ทรงพลัง

ลือสะเทือนวงการ! HUAWEI Mate 90 series เตรียมเขย่าตลาดด้วย 5 รุ่นรวด พร้อม "Fan Edition" ทรงพลัง

เตรียมพบกับ HUAWEI Mate 90 series ที่ลือว่าจะเปิดตัว 5 รุ่นรวด รวมถึง Fan Edition พร้อมเทคโนโลยีระบายความร้อน 3D Liquid-Cooling สุดล้ำ คาดการณ์กันยายนนี้!

By ทีมงาน devdog
อัปเดตล่าสุด: ราคาน้ำมันเบนซิน แก๊สโซฮอล์ และดีเซลวันนี้ (15 มิ.ย. 69) พร้อมแนวโน้มตลาด

อัปเดตล่าสุด: ราคาน้ำมันเบนซิน แก๊สโซฮอล์ และดีเซลวันนี้ (15 มิ.ย. 69) พร้อมแนวโน้มตลาด

เช็กราคาน้ำมันเบนซิน แก๊สโซฮอล์ และดีเซลล่าสุด 15 มิ.ย. 69 จาก ปตท. บางจาก เชลล์ และปั๊มอื่น ๆ พร้อมข้อมูลการปรับลดราคา วางแผนการเดินทางได้เลย!

By ทีมงาน devdog
เจาะลึก! iOS 27 กับ 3 ฟีเจอร์ลับที่ Apple ยังไม่เปิดตัว คาดเตรียมเซอร์ไพรส์กันยายนนี้

เจาะลึก! iOS 27 กับ 3 ฟีเจอร์ลับที่ Apple ยังไม่เปิดตัว คาดเตรียมเซอร์ไพรส์กันยายนนี้

Mark Gurman เผย iOS 27 มี 3 ฟีเจอร์ลับ Siri AI เชื่อมต่อภายนอก, กล้องปรับแต่งได้, หน้าปัด Apple Watch Ultra ใหม่ คาดเปิดตัวพร้อม iPhone 18 เดือน ก.ย. นี้

By ทีมงาน devdog