Paxa Labs

นิยายเสียงและนิยายรายตอนภาษาไทย

ทำนิยายเสียงภาษาไทยแบบรายตอน กำหนดเสียงจากแคตตาล็อกให้ตัวละครคนละเสียง คิดค่าบริการตามจำนวนตัวอักษรของตอนที่ลงในสัปดาห์นั้น

ไอเดียให้ลองเล่น

ผู้เล่าเปิดฉาก

ฝนตกตั้งแต่เช้า ถนนหน้าบ้านเงียบกว่าทุกวัน และเธอรู้ว่าเขาจะไม่มา

พระเอกพูด

ผมรออยู่ตรงนี้มาสามปีแล้ว คุณจะให้ผมรออีกนานแค่ไหน

อีกฝ่ายโต้กลับ

เธอไม่เคยถามฉันสักคำว่าฉันอยากได้อะไร แล้วตอนนี้จะมาถามทำไม

จบตอนแบบค้างไว้

ประตูเปิดออกช้า ๆ และคนที่ยืนอยู่ตรงนั้น คือคนที่ทุกคนเชื่อว่าตายไปแล้ว

ทุกการ์ดเล่นคลิปจริงที่สร้างจากสคริปต์นั้น ๆ ด้วยเสียงนมเย็น เปิดในหน้าเสียงพูดเพื่อให้พูดข้อความของคุณเองได้

หนึ่งตอนกลายเป็นเสียงได้อย่างไร

คุณเขียนตอนใหม่จบวันจันทร์ แล้วลงวันพฤหัส นั่นคือจังหวะของนิยายออนไลน์ไทย และธัญวลัย readAwrite กับ Fictionlog ต่างก็ขายกันแบบรายตอน คนอ่านถามหาเวอร์ชันเสียงมาเป็นปีแล้ว สาเหตุที่ยังไม่มีคือนักพากย์ต้องจองคิว และตารางแบบคุณรอใครไม่ได้ ขณะเดียวกันงานเขียนเองก็เป็นบทสนทนาเสียส่วนใหญ่ ตัวละครสองสามคนโต้กันไปมาตลอดทั้งหน้า ซึ่งเป็นเนื้อหาที่ตามยากที่สุดเมื่อให้เสียงเดียวอ่านทั้งหมด การเลือกเสียงจากแคตตาล็อกตอบได้ทั้งสองเรื่อง ตัวละครแต่ละคนมีรหัสเสียงประจำตัว หนึ่งตอนคือหนึ่งชุดงาน และชุดงานนั้นรันได้ในสัปดาห์เดียวกับที่คุณเขียนตอนนั้นเสร็จ คนอ่านที่เคยเก็บตอนใหม่ไว้อ่านตอนเย็น ตอนนี้ฟังระหว่างทางไปทำงานได้เลย

ที่มา:Tunwalai(เปิดในแท็บใหม่)readAwrite(เปิดในแท็บใหม่)Fictionlog(เปิดในแท็บใหม่)

  1. แยกตอนตามผู้พูด

    บทบรรยายและบทพูดของตัวละครแต่ละคนกลายเป็นช่วงแยกกัน ช่วงที่ยาวเกินเพดานของโมเดลจะถูกแบ่งอีกครั้งตรงรอยต่อประโยค

  2. เรนเดอร์ทุกช่วงเป็นชุดงาน

    หนึ่งช่วงคือหนึ่งคำขอที่พารหัสเสียงของตัวละครนั้นไปด้วย ผลลัพธ์กลับมาเป็น MP3 แล้วต่อกันตามลำดับเป็นแทร็กของตอนนั้น ช่วงที่ยาวไม่เกิน 5,000 ตัวอักษรใช้คำขอเดียว

  3. ลงตอน แล้วค่อยแก้ทีหลังได้

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

นิยายรายตอน คิดราคาเป็นตอน

นิยายรายตอน คิดราคาเป็นตอน
ปริมาณงานตัวอักษรเครดิตค่าใช้จ่าย
หนึ่งตอน ยาว 12 นาที7,27272.72$0.07
หนึ่งซีซัน 20 ตอน145,4401,454.4$1.45
นิยายหนึ่งเรื่อง 120 ตอน ทำเสียงครบทั้งเรื่องประมาณ $8.73

คำนวณที่ 606 ตัวอักษรต่อหนึ่งนาทีของเสียงพูด ในอัตราเดียวตลอด การมีนักแสดงหลายเสียงเปลี่ยนแค่ว่าใครอ่านบรรทัดไหน ไม่ได้เปลี่ยนราคาของบรรทัดนั้น

หนึ่งสัปดาห์ของนิยายรายตอน

จ.

เขียนตอนใหม่เสร็จ

ผู้เขียนปิดตอนและระบุว่าใครพูดบรรทัดไหน การระบุผู้พูดคือโครงสร้างเดียวที่ไปป์ไลน์ต้องการ

อ.

ใส่เสียงตามผัง

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

พ.

เรนเดอร์ทั้งตอน

หนึ่งคำขอต่อหนึ่งช่วงคำพูด รันเป็นชุดงาน ตอนยาวสิบสองนาทีคือคำขอไม่กี่ร้อยครั้งและรันจบเองโดยไม่ต้องเฝ้า

พฤ.

แก้ทีละบรรทัด

บรรทัดที่แก้ไขเรนเดอร์ใหม่ได้เดี่ยว ๆ ด้วยเสียงเดิม และคิดเงินเฉพาะตัวอักษรที่เปลี่ยนไป

กำหนดเวลาคือหัวใจของเรื่องนี้ นักพากย์ที่ต้องจองคิวรักษาตารางลงตอนรายสัปดาห์ไม่ไหว แต่รหัสเสียงทำได้

ไฟล์ผังเสียงประจำเรื่อง

series.json
{
  "title": "เงาในสายฝน",
  "narrator": "foithong",
  "cast": {
    "ณิชา":   "nomyen",
    "ธาวิน":  "massaman",
    "คุณยาย": "miangkham",
    "เด็กชาย": "lukchup"
  },
  "format": "mp3",
  "model": "paxa-tts-flash-v2"
}

รหัสเสียงห้าตัวกับโมเดลหนึ่งตัว เก็บไว้ข้างต้นฉบับ ไม่มีอะไรในนี้หมดอายุ ตอนที่ 120 จึงใช้ผังเสียงเดียวกับตอนที่ 1

สำหรับนักพัฒนา

ตัวอย่าง Python และ TypeScript ส่งหนึ่งช่วงและเขียนไฟล์ MP3 ที่ชุดงานเก็บรวบรวมไว้ ส่วนตัวอย่างออปชันแสดงฟิลด์เสียง โมเดล และรูปแบบไฟล์ที่แต่ละเรื่องตั้งไว้ในไฟล์ผังเสียงของตัวเอง

เอกสารอ้างอิง API ฉบับเต็ม
import os
import requests

response = requests.post(
    "https://api.paxalabs.com/v1/tts",
    headers={"Authorization": f"Bearer {os.environ['PAXA_API_KEY']}"},
    json={"text": "สวัสดีครับ ยินดีต้อนรับสู่ Paxa Labs", "voice": "khanomkrok", "model": "paxa-tts-flash-v2"},
)
response.raise_for_status()

with open("speech.mp3", "wb") as f:
    f.write(response.content)

ฟังเสียงจริง

เสียงบางส่วนจากทั้งหมด 50 เสียง สร้างจาก API ด้วยรหัสเสียงที่เปิดให้ใช้งานจริง ฟังครบทุกเสียงได้ที่หน้า Text-to-Speech

  • ฝอยทองv1 + v2เปิดในหน้าเสียงพูด
  • เอสเพรสโซv1 + v2นักอ่านเรื่องยาว
  • เต้าฮวยv1 + v2นางเอกละคร
  • อู่หลงv1 + v2นิยายเสียง

บทสนทนาคือส่วนที่ยากที่สุดของนิยายไทย

ร้อยแก้วภาษาไทยเขียนติดกันโดยไม่มีช่องว่างระหว่างคำ และบทสนทนาในนิยายอาศัยคำลงท้ายกับคำสรรพนามในการบอกว่าใครพูดและสองคนนั้นอยู่ในความสัมพันธ์แบบไหน Paxa TTS Flash v2 อ่านวรรณยุกต์จากตัวสะกดแบบเดียวกับที่คนอ่านหนังสือออกทำ และรักษาลักษณะการอ่านให้คงที่ตลอดทั้งเรื่อง นี่คือสิ่งที่ทำให้ผังเสียงยังจำได้ตั้งแต่ตอนแรกจนตอนสุดท้าย

คำถามที่พบบ่อย

นิยายหนึ่งเรื่องใช้ได้กี่เสียง

ใช้ได้ทั้ง 50 เสียงในแคตตาล็อก มากเท่าที่เรื่องต้องการ ผังเสียงคือการจับคู่ชื่อผู้พูดกับรหัสเสียง การเพิ่มตัวละครในตอนที่ 40 จึงเป็นการเพิ่มหนึ่งบรรทัดในไฟล์นั้น

ตัวละครจะเสียงเดิมตลอดทั้งซีซันไหม

เสียงเดิม รหัสเสียงเป็นค่าคงที่ และรหัสเดิมให้เสียงเดิมทั้งตอนสุดท้ายและตอนแรก ไม่มีอะไรเพี้ยนไประหว่างการรันแต่ละรอบ

หนึ่งตอนมีค่าใช้จ่ายเท่าไร

ประมาณ $0.07 สำหรับเสียงที่เสร็จแล้ว 12 นาที คิดตามจำนวนตัวอักษรในตอนนั้น บรรทัดที่แก้ทีหลังก็คิดแบบเดียวกัน ตามตัวอักษรที่เปลี่ยนไป

อ่านตอนที่มีไทยปนอังกฤษได้ไหม

ได้ และอ่านด้วยเสียงเดียว ชื่อหรือวลีภาษาอังกฤษที่แทรกอยู่ในประโยคไทยยังอยู่ในลักษณะการอ่านของผู้พูดคนเดิม

เอาไฟล์เสียงไปเผยแพร่และขายได้ไหม

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

เริ่มต้นด้วยเครดิตฟรี

เข้าสู่ระบบด้วย Google, GitHub หรือ Hugging Face แล้วใช้เครดิตฟรี 100 เครดิตกับข้อความของคุณเอง

บทความที่เกี่ยวข้อง