นิยายเสียงและนิยายรายตอนภาษาไทย
ทำนิยายเสียงภาษาไทยแบบรายตอน กำหนดเสียงจากแคตตาล็อกให้ตัวละครคนละเสียง คิดค่าบริการตามจำนวนตัวอักษรของตอนที่ลงในสัปดาห์นั้น
ไอเดียให้ลองเล่น
ทุกการ์ดเล่นคลิปจริงที่สร้างจากสคริปต์นั้น ๆ ด้วยเสียงนมเย็น เปิดใน Playground เพื่อให้พูดข้อความของคุณเองได้
หนึ่งตอนกลายเป็นเสียงได้อย่างไร
คุณเขียนตอนใหม่จบวันจันทร์ แล้วลงวันพฤหัส นั่นคือจังหวะของนิยายออนไลน์ไทย และธัญวลัย readAwrite กับ Fictionlog ต่างก็ขายกันแบบรายตอน คนอ่านถามหาเวอร์ชันเสียงมาเป็นปีแล้ว เหตุผลที่ยังไม่มีไม่ใช่เพราะคุณไม่เคยคิดถึงมัน แต่เพราะนักพากย์ต้องจองคิว และตารางแบบคุณรอใครไม่ได้ ขณะเดียวกันงานเขียนเองก็เป็นบทสนทนาเสียส่วนใหญ่ ตัวละครสองสามคนโต้กันไปมาตลอดทั้งหน้า ซึ่งเป็นเนื้อหาที่ตามยากที่สุดเมื่อให้เสียงเดียวอ่านทั้งหมด การเลือกเสียงจากแคตตาล็อกตอบได้ทั้งสองเรื่อง ตัวละครแต่ละคนมีรหัสเสียงประจำตัว หนึ่งตอนคือหนึ่งชุดงาน และชุดงานนั้นรันได้ในสัปดาห์เดียวกับที่คุณเขียนตอนนั้นเสร็จ คนอ่านที่เคยเก็บตอนใหม่ไว้อ่านตอนเย็น ตอนนี้ฟังระหว่างทางไปทำงานได้เลย
ที่มา:Tunwalai(opens in a new tab)readAwrite(opens in a new tab)Fictionlog(opens in a new tab)
- แยกตอนตามผู้พูดบทบรรยายและบทพูดของตัวละครแต่ละคนกลายเป็นช่วงแยกกัน ช่วงที่ยาวเกินเพดานของโมเดลจะถูกแบ่งอีกครั้งตรงรอยต่อประโยค
- เรนเดอร์ทุกช่วงเป็นชุดงานหนึ่งช่วงคือหนึ่งคำขอที่พารหัสเสียงของตัวละครนั้นไปด้วย ผลลัพธ์กลับมาเป็น MP3 แล้วต่อกันตามลำดับเป็นแทร็กของตอนนั้น ช่วงที่ยาวไม่เกิน 5,000 ตัวอักษรใช้คำขอเดียว
- ลงตอน แล้วค่อยแก้ทีหลังได้บรรทัดที่แก้ไขเรนเดอร์ใหม่เดี่ยว ๆ แล้วสลับเข้าไปในแทร็ก ส่วนที่เหลือของตอนไม่ถูกแตะ และซีซันที่เหลือก็เช่นกัน
นิยายรายตอน คิดราคาเป็นตอน
| ปริมาณงาน | ตัวอักษร | เครดิต | ค่าใช้จ่าย |
|---|---|---|---|
| หนึ่งตอน ยาว 12 นาที | 7,290 | 109.35 | $0.11 |
| หนึ่งซีซัน 20 ตอน | 145,800 | 2,187 | $2.19 |
| นิยายหนึ่งเรื่อง 120 ตอน ทำเสียงครบทั้งเรื่อง | ประมาณ $13.12 | ||
คำนวณที่ 608 ตัวอักษรต่อหนึ่งนาทีของเสียงพูด ในอัตราเดียวตลอด การมีนักแสดงหลายเสียงเปลี่ยนแค่ว่าใครอ่านบรรทัดไหน ไม่ได้เปลี่ยนราคาของบรรทัดนั้น
หนึ่งสัปดาห์ของนิยายรายตอน
กำหนดเวลาคือหัวใจของเรื่องนี้ นักพากย์ที่ต้องจองคิวรักษาตารางลงตอนรายสัปดาห์ไม่ไหว แต่รหัสเสียงทำได้
ไฟล์ผังเสียงประจำเรื่อง
{
"title": "เงาในสายฝน",
"narrator": "foithong",
"cast": {
"ณิชา": "nomyen",
"ธาวิน": "massaman",
"คุณยาย": "tako",
"เด็กชาย": "lukchup"
},
"format": "mp3",
"model": "paxa-tts-flash-v1"
}รหัสเสียงห้าตัวกับโมเดลหนึ่งตัว เก็บไว้ข้างต้นฉบับ ไม่มีอะไรในนี้หมดอายุ ตอนที่ 120 จึงใช้ผังเสียงเดียวกับตอนที่ 1
สำหรับนักพัฒนา
ตัวอย่าง Python และ TypeScript ส่งหนึ่งช่วงและเขียนไฟล์ MP3 ที่ชุดงานเก็บรวบรวมไว้ ส่วนตัวอย่างออปชันแสดงฟิลด์เสียง โมเดล และรูปแบบไฟล์ที่แต่ละเรื่องตั้งไว้ในไฟล์ผังเสียงของตัวเอง
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-v1"},
)
response.raise_for_status()
with open("speech.mp3", "wb") as f:
f.write(response.content)import { writeFile } from "node:fs/promises";
const response = await fetch("https://api.paxalabs.com/v1/tts", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.PAXA_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
text: "สวัสดีครับ ยินดีต้อนรับสู่ Paxa Labs",
voice: "khanomkrok",
model: "paxa-tts-flash-v1",
}),
});
if (!response.ok) throw new Error(`TTS failed: ${response.status}`);
await writeFile("speech.mp3", Buffer.from(await response.arrayBuffer()));curl -X POST https://api.paxalabs.com/v1/tts \
-H "Authorization: Bearer $PAXA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "สวัสดีครับ ยินดีต้อนรับสู่ Paxa Labs",
"voice": "khanomkrok",
"model": "paxa-tts-flash-v1",
"format": "mp3",
"stream": false
}' \
--output speech.mp3ฟังเสียงจริง
ฝอยทองหญิง0:05
เสียงเล่าเรื่องชัดใส น่าติดตาม เหมาะกับบทอ่านยาวและคลิปอธิบาย
เรื่องราวทุกเรื่องมีจุดเริ่มต้น และวันนี้ ฉันจะเล่าให้คุณฟังตั้งแต่ต้นจนจบค่ะ
ขนมครกชาย0:03
เสียงผู้ใหญ่ใจเย็น ไม่เร่งรีบ เสียงชายหลักของทั้งชุด เหมาะกับสารคดี เรื่องเล่าย้อนวัน และงานบรรยาย
สมัยผมยังหนุ่ม แถวนี้ยังเป็นทุ่งนา เดินไปตลาดทีหนึ่งก็ค่อนวันแล้วครับ
นมเย็นหญิง0:06
เสียงสดใสมีพลัง เสียงหญิงหลักของทั้งชุด เหมาะกับโปรโมต คลิปโซเชียล และเสียงพูดในผลิตภัณฑ์ทั่วไป
ยินดีต้อนรับสู่ Paxa Labs ค่ะ เสียงภาษาไทยที่สลับเป็น English ได้กลางประโยค อย่างเป็นธรรมชาติ
ตะโก้หญิง0:05
เสียงสาวเป็นกันเอง เหมาะกับหนังสือเสียง สรุปข่าว และคลิปอธิบาย
ยามเช้าในกรุงเทพฯ แสงแดดอ่อน ๆ ทาบลงบนถนนที่เริ่มคึกคัก
เสียงบางส่วนจากทั้งหมด 26 เสียง สร้างจาก API ด้วยรหัสเสียงที่เปิดให้ใช้งานจริง ฟังครบทุกเสียงได้ที่หน้า Text-to-Speech
บทสนทนาคือส่วนที่ยากที่สุดของนิยายไทย
ร้อยแก้วภาษาไทยเขียนติดกันโดยไม่มีช่องว่างระหว่างคำ และบทสนทนาในนิยายอาศัยคำลงท้ายกับคำสรรพนามในการบอกว่าใครพูดและสองคนนั้นอยู่ในความสัมพันธ์แบบไหน Paxa TTS Flash อ่านวรรณยุกต์จากตัวสะกดแบบเดียวกับที่คนอ่านหนังสือออกทำ และรักษาลักษณะการอ่านให้คงที่ตลอดทั้งเรื่อง นี่คือสิ่งที่ทำให้ผังเสียงยังจำได้ตั้งแต่ตอนแรกจนตอนสุดท้าย
คำถามที่พบบ่อย
- นิยายหนึ่งเรื่องใช้ได้กี่เสียง
- ใช้ได้ทั้ง 26 เสียงในแคตตาล็อก มากเท่าที่เรื่องต้องการ ผังเสียงคือการจับคู่ชื่อผู้พูดกับรหัสเสียง การเพิ่มตัวละครในตอนที่ 40 จึงเป็นการเพิ่มหนึ่งบรรทัดในไฟล์นั้น
- ตัวละครจะเสียงเดิมตลอดทั้งซีซันไหม
- เสียงเดิม รหัสเสียงเป็นค่าคงที่ และรหัสเดิมให้เสียงเดิมทั้งตอนสุดท้ายและตอนแรก ไม่มีอะไรเพี้ยนไประหว่างการรันแต่ละรอบ
- หนึ่งตอนมีค่าใช้จ่ายเท่าไร
- ประมาณ $0.11 สำหรับเสียงที่เสร็จแล้ว 12 นาที คิดตามจำนวนตัวอักษรในตอนนั้น บรรทัดที่แก้ทีหลังก็คิดแบบเดียวกัน ตามตัวอักษรที่เปลี่ยนไป
- อ่านตอนที่มีไทยปนอังกฤษได้ไหม
- ได้ และอ่านด้วยเสียงเดียว ชื่อหรือวลีภาษาอังกฤษที่แทรกอยู่ในประโยคไทยยังอยู่ในลักษณะการอ่านของผู้พูดคนเดิม
- เอาไฟล์เสียงไปเผยแพร่และขายได้ไหม
- ผลลัพธ์ที่สร้างด้วยเครดิตฟรีใช้เพื่อการส่วนตัวและการทดลองใช้เท่านั้น เมื่อซื้อแพ็กเกจหรือเครดิตแล้ว ผลลัพธ์ที่สร้างขึ้นเป็นของคุณและใช้ได้ทุกวัตถุประสงค์ รวมถึงการเผยแพร่เชิงพาณิชย์ และครอบคลุมถึงผลลัพธ์ที่สร้างไว้ก่อนการซื้อด้วย ส่วนลิขสิทธิ์ในตัวเนื้อเรื่องยังเป็นเรื่องที่คุณต้องจัดการเอง
เริ่มต้นด้วยเครดิตฟรี
เข้าสู่ระบบด้วย Google, GitHub หรือ Hugging Face แล้วใช้เครดิตฟรี 100 เครดิตกับข้อความของคุณเอง
ตัวอย่างการใช้งานอื่น