ถอดเสียงภาษาไทยเป็นคำบรรยายวิดีโอ
ทำคำบรรยายวิดีโอภาษาไทยจากเสียงในวิดีโอเอง เวลาระดับคำบอกจุดเริ่มและจบของแต่ละคิว ในตัวอักษรที่ไม่มีช่องว่างให้ตัด
บทถอดเสียงเขียนว่าอย่างไร
บทบรรยายเรื่องดอกเบี้ย
spokenถ้าฝากเงิน หนึ่งแสนบาท ที่ดอกเบี้ย สองจุดห้าเปอร์เซ็นต์ ต่อปี ครบปีได้ดอกเบี้ย สองพันห้าร้อยบาท
writtenถ้าฝากเงิน 100,000 บาท ที่ดอกเบี้ย 2.5% ต่อปี ครบปีได้ดอกเบี้ย 2,500 บาท
แบบเขียนทำให้ตัวเลขอยู่ในคำบรรยายบรรทัดเดียว แบบพูดตรงกับผู้บรรยายคำต่อคำ
คำตอบในบทสัมภาษณ์
spokenเราเริ่มจาก ทีมสามคน ตอนนี้มี สี่สิบคน แล้ว ส่วนใหญ่เป็น engineer ค่ะ
writtenเราเริ่มจาก ทีม 3 คน ตอนนี้มี 40 คน แล้ว ส่วนใหญ่เป็น engineer ค่ะ
คำอังกฤษยังคงเป็นอังกฤษในคำบรรยาย และมีเวลาเหมือนคำอื่นทุกคำ
วิดีโอสาธิตสินค้า
spokenกดปุ่มด้านล่างขวา แล้วเลือกแผน สามร้อยเก้าสิบเก้าบาท ต่อเดือน
writtenกดปุ่มด้านล่างขวา แล้วเลือกแผน 399 บาท ต่อเดือน
ราคาบนจอควรอ่านเป็นราคา แบบเขียนเขียนแบบนั้นให้โดยไม่ต้องแก้ทีหลัง
บทถอดทุกคู่บนหน้านี้เป็นตัวอย่างที่เขียนขึ้นเพื่อแสดงว่าตัวเลือกรูปแบบเปลี่ยนอะไร และตรวจกับผลลัพธ์จริงก่อนเผยแพร่ หน้า Speech-to-Text มีบทถอดจริงของโมเดลจากไฟล์เสียงจริง พร้อมวันที่บันทึก
เชื่อมกับงานวิดีโออย่างไร
คำบรรยายคือบทถอดที่ตัดเป็นคิว แต่ละคิวอยู่บนจอเท่ากับวินาทีที่พูดคำเหล่านั้น ภาษาอังกฤษตัดตรงระหว่างคำ ภาษาไทยเขียนโดยไม่เว้นวรรค เครื่องมือทำคำบรรยายจึงไม่มีจุดให้ตัดเว้นแต่จะรู้ว่าแต่ละคำเริ่มตรงไหน เวลาระดับคำคือความรู้นั้น ส่งแทร็กเสียงของบทบรรยาย บทสัมภาษณ์ หรือวิดีโอสินค้า แล้วทุกคำกลับมาพร้อมเวลาเริ่มและจบ จัดกลุ่มคำเป็นบรรทัดยาวพอดีอ่าน แล้วเวลาของคิวก็อยู่ตรงนั้นแล้ว แบบพูดทำให้คำบรรยายตรงกับเสียง แบบเขียนทำให้ตัวเลขอ่านง่ายบนจอโทรศัพท์
- แยกแทร็กเสียงคอนเทนเนอร์ใดที่โมเดลอ่านได้ก็ใช้ได้ ทั้ง M4A หรือ AAC จากวิดีโอ หรือไฟล์ WAV หรือ MP3 ที่ส่งออกมา ยาวได้ถึง 60 นาทีต่อคำขอ
- ถอดเสียงพร้อมเวลาระดับคำตั้ง timestamps เป็น word เลือกแบบพูดสำหรับคำบรรยายที่ตามเสียง และแบบเขียนสำหรับตัวเลขที่ผู้ชมอ่าน
- ตัดคิวแล้วเขียนไฟล์จัดกลุ่มช่วงเวลาเป็นบรรทัดตามสไตล์ของคุณ ปิดคิวเมื่อเจอช่วงหยุดยาว แล้วบันทึกเป็น SRT หรือ WebVTT
คำบรรยายถูกตัดอย่างไร
- 1 คำ
- หนึ่งช่วงเวลา
- ทุกคำมาพร้อมเวลาเริ่มและจบเป็นวินาที ในตัวอักษรที่ไม่มีช่องว่าง ช่วงเวลาเหล่านี้คือขอบเขตคำ
- ≈ 32
- ตัวอักษรต่อบรรทัด
- รวมคำต่อเนื่องจนบรรทัดเต็มหรือถึงช่วงหยุด คิวเริ่มที่เวลาเริ่มของคำแรกและจบที่เวลาจบของคำสุดท้าย
- ช่วงหยุด
- ช่องว่างระหว่างเวลาจบของคำหนึ่งกับเวลาเริ่มของคำถัดไปคือช่วงหยุด ช่วงหยุดยาวปิดคิวก่อนเวลา คำบรรยายจึงไม่ค้างบนความเงียบ
- รูปแบบไฟล์
- SRT และ WebVTT คือโค้ดไม่กี่บรรทัดบนรายการคิว บทถอดยังเป็นต้นฉบับเมื่อแก้คำบรรยายด้วยมือ
ความยาวบรรทัดคือสไตล์ของคุณ กำหนดในโค้ดของคุณ เวลาคือของโมเดล
หนึ่งเดือนของวิดีโอคิดเท่าไร
| ปริมาณงาน | เสียง | เครดิต |
|---|---|---|
| หนึ่งวิดีโอ 12 นาที | 12 นาที | 100 |
| หนึ่งบทบรรยาย 60 นาที | 60 นาที | 500 |
| หนึ่งเดือน 30 วิดีโอ | 3,000 เครดิต | |
8.33 เครดิตต่อเสียงหนึ่งนาที คิดถึงระดับมิลลิวินาที เวลาระดับคำไม่มีค่าใช้จ่ายเพิ่ม
วิดีโอสิบสองนาที ทีละคิว
เวลาที่แสดงเป็นตัวอย่าง ช่วงเวลาบนไฟล์จริงเป็นของโมเดล
สำหรับนักพัฒนา
ตัวอย่างโค้ดส่งไฟล์บันทึกหนึ่งไฟล์พร้อมเวลาระดับคำ แล้วอ่านบทถอด ช่วงเวลา และเครดิตที่คิดจากคำตอบ
AUDIO=$(base64 < meeting.m4a | tr -d '\n')
curl -X POST https://api.paxalabs.com/v1/stt \
--max-time 300 \
-H "Authorization: Bearer $PAXA_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"audio\": \"$AUDIO\", \"model\": \"paxa-stt-lite-v1-preview\", \"timestamps\": \"word\"}"import { readFile } from "node:fs/promises";
const audio = (await readFile("meeting.m4a")).toString("base64");
const response = await fetch("https://api.paxalabs.com/v1/stt", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.PAXA_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ audio, model: "paxa-stt-lite-v1-preview" }),
// A long recording can run for minutes; give it room.
signal: AbortSignal.timeout(300_000),
});
if (!response.ok) throw new Error(`Transcription failed: ${response.status}`);
const { text, usage } = await response.json();
console.log(text, `${usage.credits} credits`);import base64
import os
import requests
with open("meeting.m4a", "rb") as file:
audio = base64.b64encode(file.read()).decode()
response = requests.post(
"https://api.paxalabs.com/v1/stt",
headers={"Authorization": f"Bearer {os.environ['PAXA_API_KEY']}"},
json={"audio": audio, "model": "paxa-stt-lite-v1-preview"},
# A long recording can run for minutes; give it room.
timeout=300,
)
response.raise_for_status()
body = response.json()
print(body["text"], body["usage"]["credits"], "credits")โมเดลถูกสร้างมาให้ฟังอะไร
Paxa STT Lite ถอดเสียงภาษาไทยและอังกฤษ รวมประโยคที่สลับภาษากลางทาง ช่วงเวลาระดับคำคือการตัดคำของตัวอักษรที่ไม่มีช่องว่าง และจะไม่เผยแพร่ตัวเลขความแม่นยำจนกว่าจะเผยแพร่วิธีประเมินไว้ข้างกัน
คำถามที่พบบ่อย
- ส่งออกเป็น SRT หรือ WebVTT ได้ไหม
- ส่งออกบทถอดและช่วงเวลาระดับคำเป็น JSON การตัดคิวและเขียนไฟล์คำบรรยายคือโค้ดไม่กี่บรรทัดของคุณ และความยาวบรรทัดยังเป็นของคุณ
- ทำคำบรรยายวิดีโอภาษาอังกฤษได้ไหม
- ตั้งคำใบ้ภาษาเป็น en สำหรับไฟล์ภาษาอังกฤษ คำไทยข้างในยังถูกถอดตามที่พูด
- แปลคำบรรยายให้ไหม
- บทถอดอยู่ในภาษาที่พูด หากต้องการแทร็กคำบรรยายภาษาอังกฤษจากเสียงไทย ส่งบทถอดไปยัง API แปลภาษา
- บทบรรยายสองชั่วโมงทำอย่างไร
- ตัดเสียงตรงช่วงหยุดเป็นส่วนละไม่เกิน 60 นาที ส่งพร้อมกัน แล้วเลื่อนช่วงเวลาของแต่ละส่วนตามเวลาเริ่มของส่วนนั้น
เริ่มต้นด้วยเครดิตฟรี
เข้าสู่ระบบด้วย Google, GitHub หรือ Hugging Face แล้วใช้เครดิตฟรี 100 เครดิตกับข้อความของคุณเอง