ทำไมเสียง AI อ่านนิทานฟังแล้วแข็ง? ลองโคลนเสียงฟรีเทียบกับ TTS ตรง
oatitก่อน ผมนั่งอัดนิทานให้หลานฟังก่อนนอน เปิดโปรเจกต์ที่ค้างไว้ตั้งเดือน—จะทำเสียงตัวละคร 4 ตัว ทั้งกระต่าย เต่า หมาป่า และผู้เล่าเรื่อง พอฟังผลลัพธ์ครั้งแรก หลานบอกว่า "ลุง ฟังแล้วเหมือนหุ่นยนต์อ่านหนังสือ" ฉันก็หัวเราะ แต่ในใจคิดว่า มันควรจะดีกว่านี้สิ
เลยเริ่มทดลองจริงจัง ระหว่างเครื่องมือ โคลนเสียงฟรี กับ TTS ตรงจากหน้า เว็บหลัก แล้วผลที่ได้ทำให้เข้าใจอะไรหลายอย่าง
เริ่มจากที่ผิด: TTS ตรงกับเสียงแข็งกระด้าง
tอนแรกฉันใช้ text-to-speech ธรรมดา พิมพ์บทสนทนาทั้งหมดลงไป แล้วกดสังเคราะห์ เสียงออกมาชัดทุกคำ แต่มันเหมือนคนอ่านข่าว ไม่มีอารมณ์ ตัวละครทุกตัวพูดน้ำเสียงเดียวกันหมด แม้จะปรับความเร็วหรือระดับเสียงก็ยังฟังเป็น 'คนเดียว' อยู่ดี
ลองแยกเป็นไฟล์ย่อยๆ ทีละบรรทัด แล้วใส่เครื่องหมายวรรคตอนให้เยอะขึ้น—ปรากฏว่าดีขึ้นนิดหน่อย แต่พอรวมเรื่องยาวๆ เสียงเริ่มเพี้ยนจังหวะ โดยเฉพาะบทสนทนาที่ต้องมีน้ำเสียงต่างกัน เช่น หมาป่าต้องห้าว กระต่ายต้องใสๆ
จุดที่แย่ที่สุดคือคำลงท้ายแบบไทย 'จ้า' 'นะ' 'คะ' กลายเป็นเสียงเรียบๆ ไม่มีชีวิตชีวา เหมือนกับว่า AI ไม่เข้าใจบริบทของนิทานเด็ก
เปลี่ยนมาใช้โคลนเสียงฟรี: หลายเสียง หลายบุคลิก
จากนั้นลอง โคลนเสียงฟรี บน VoxClone โดยอัดเสียงตัวเองอ่านบทของกระต่าย 2-3 ประโยค แล้วให้ AI สร้างเสียงจำลอง จากนั้นก็อัดเสียงหมาป่าแยกอีกไฟล์ ผลคือได้เสียง 2 บุคลิกชัดเจน ไม่ต้องไปปรับแต่งอะไรเยอะ
ข้อดีคือเสียงที่ได้มีน้ำหนัก มีลูกเล่นตามต้นฉบับ เช่น ตอนกระต่ายตกใจ เสียงสูงขึ้นเล็กน้อย ตอนหมาป่าขู่ เสียงต่ำและช้าลง ตรงนี้ TTS ตรงทำไม่ได้ เพราะมันอ่านทุกประโยคด้วยน้ำเสียงเดียวกัน
แต่ก็มีข้อเสีย—การโคลนเสียงต้องใช้เวลาเตรียมไฟล์เสียงต้นทางให้สะอาด ถ้าบ้านมีเสียงรบกวน เสียงที่ออกมาจะมีอาร์ติแฟกต์ และถ้าต้องการหลายตัวละคร ต้องโคลนหลายรอบ ซึ่งใช้เวลาไม่น้อย
เทคนิคที่ทำให้เสียง AI ไม่แข็ง: แยกไฟล์ + ปรับพิทช์ + ใส่เสียงแวดล้อม
หลังลองผิดลองถูกหลายรอบ ฉันพบสูตรที่ใช้ได้จริง: 1) แยกบทของแต่ละตัวละครเป็นไฟล์เสียงแยกกัน 2) ปรับ pitch ในโปรแกรมตัดต่อเล็กน้อย (กระต่าย +3 เซมิโทน, หมาป่า -2) 3) ใส่เสียงพื้นหลังเบาๆ เช่น เสียงลมหรือใบไม้ไหว เพื่อกลบความแห้งของเสียงสังเคราะห์
อีกอย่างที่ช่วยได้มากคือการเว้นวรรคให้เป็นธรรมชาติ อย่าพิมพ์ทั้งย่อหน้ายาวๆ ให้ตัดเป็นประโยคสั้นๆ แล้วค่อยมารวมในโปรแกรมตัดต่อ วิธีนี้ทำให้เสียงไม่เร่งรีบเกินไป และฟังเหมือนคนเล่านิทานจริงๆ
สำหรับใครที่อยากได้เสียงเรียกเข้าตลกๆ ฉันก็ลอง โหลดเสียงเรียกเข้า ไอ โฟน ฟรี จากเว็บนี้มาใช้ ปรากฏว่ามีเสียง AI ให้เลือกเยอะ แต่ถ้าอยากได้เสียงตัวเองพูด ก็ต้องโคลนเอง—ซึ่งมันก็สนุกดี
เลือกเสียงต้นฉบับที่สะอาด: เคล็ดลับการอัดให้ได้ผลลัพธ์ดีที่สุด
ก่อนจะกดปุ่มโคลน ฉันมักหามุมเงียบในห้องนั่งเล่น ปิดพัดลม ปิดทีวี แล้ววางมือถือห่างจากปากประมาณ 15 เซนติเมตร อ่านบทตัวอย่างด้วยความเร็วปกติ ไม่เร็วเกินไป ไม่ช้าเกินไป—พอได้ไฟล์ 30-45 วินาทีที่ไม่มีเสียงรบกวนเลย โคลนออกมาก็สะอาด ไม่มีนอยซ์แปลกๆ
ถ้าบ้านคุณมีเสียงรถผ่าน หรือเด็กเล่นข้างเคียง ลองใช้หูฟังแบบมีไมโครโฟนกั้นเสียงรบกวน หรืออัดตอนกลางคืนที่เงียบที่สุด คุณภาพของเสียงต้นทางตัดสินคุณภาพของโมเดลที่ได้โดยตรง
ผิดพลาดที่หลายคนทำคืออัดเสียงขณะกำลังอ่านหนังสือเสียงดังๆ ทำให้ AI เรียนรู้ลักษณะ "การอ่าน" มากกว่า "การพูด" ทำให้เสียงโคลนฟังแข็งเท่าเดิม ให้ลองพูดเหมือนกำลังเล่าเรื่องกับหลานจริงๆ จะได้น้ำเสียงที่มีชีวิตชีวา
ผสมเสียงพื้นหลังและเอฟเฟกต์เล็กน้อย: ทำให้นิทานดูเป็นมืออาชีพ
หลังได้ไฟล์เสียงตัวละครแต่ละตัวแล้ว ฉันนำเข้าไปในโปรแกรมตัดต่อฟรีอย่าง Audacity แล้ววางทับเสียงพื้นหลัง—เสียงฝนตกเบาๆ เสียงลมพัดผ่านต้นไม้ หรือเสียงเตาผิงเงียบๆ ระดับ -18 dB ถึง -20 dB เพียงพอที่จะกลบความ "แห้ง" ของเสียงสังเคราะห์
อีกเทคนิคหนึ่งคือการใส่ reverb เล็กน้อย (room size ประมาณ 20%) ให้เสียงมีมิติ ไม่ใช่เสียงแห้งๆ ตรงหน้าหู แต่ต้องระวัง别过度—ถ้า reverb มากเกินไป จะฟังเหมือนอยู่ในถ้ำ
สุดท้าย ใส่ fade-in/fade-out ระหว่างการเปลี่ยนตัวละคร 0.3-0.5 วินาที ทำให้การสลับเสียงไม่กระตุกหูฟัง หลานของผมตอนนี้ฟังแล้วบอกว่า "ลุง เหมือนมีคนเล่าจริงๆ เลย" นั่นคือจุดที่เราพยายามถึง
คำถามที่พบบ่อย (FAQ)
ทำไมเสียง TTS ตรงถึงฟังแข็งกว่าเสียงโคลน?
เพราะ TTS ตรงใช้โมเดลเสียงสังเคราะห์ที่ออกแบบมาให้อ่านข้อความทั่วไป ไม่ได้เรียนรู้ลักษณะเฉพาะของเสียงเรา ส่วนโคลนเสียงจะเลียนแบบน้ำเสียง การขึ้นเสียงลงเสียง และการหายใจของต้นฉบับ ทำให้ฟังเป็นธรรมชาติกว่า
ต้องใช้เวลานานแค่ไหนในการโคลนเสียง 1 ตัวละคร?
ถ้าอัดเสียงตัวอย่าง 30-60 วินาที ก็ใช้เวลาไม่ถึง 5 นาทีบน VoxClone แต่ต้องแน่ใจว่าเสียงตัวอย่างชัด ไม่มีเสียงรบกวน ถ้าต้องการคุณภาพสูง แนะนำอัด 2-3 นาที จะได้เสียงที่เสถียรขึ้น
มีวิธีทำให้เสียง AI อ่านนิทานมีอารมณ์โดยไม่ต้องโคลนไหม?
มี—ลองใช้เครื่องหมายวรรคตอนพิเศษ เช่น '...' เพื่อให้เว้นจังหวะ หรือใช้คำแสดงอารมณ์ในข้อความ เช่น 'เขาพูดเสียงสั่น' แต่ผลจะสู้การโคลนไม่ได้ เพราะโมเดลไม่รู้บริบทจริง
สรุปในทางปฏิบัติ
ถ้าอยากได้นิทานเสียงที่ฟังแล้วไม่แข็ง ลองเริ่มจากโคลนเสียงตัวเอง 2-3 ตัวละคร แล้วค่อยๆ เพิ่มทีละตัว ใช้เวลากับการตัดต่อเล็กน้อย รับรองว่าหลานจะไม่บ่นว่าหุ่นยนต์อ่านหนังสืออีก
ลองเปิดหน้า โคลนเสียงฟรี แล้วอัดเสียงตัวอย่างแรกของคุณวันนี้เลย—แค่ 30 วินาทีก็พอเริ่มทดลองได้แล้ว