Skip to main content

🗣️ Thai Text-to-Speech V3 (เสียงน้องไข่ต้ม)

⚠️ ALPHA VERSION

⚠️ หมายเหตุเวอร์ชัน Alpha: API นี้อยู่ในช่วงทดสอบ Alpha บริการอาจไม่เสถียร สำหรับงาน Production กรุณาใช้ TTS V2 (เสถียร) แทน V3 ใช้ฟรีถึงวันที่ 31 พฤษภาคม 2569 (2026) ในช่วงทดสอบ Alpha

ฟรี(Alpha — ไม่คิดเครดิตถึง 31 พฤษภาคม 2569)
v3.0⚠️ ALPHA🎙️ Speech

ยินดีต้อนรับสู่ Thai Text-to-Speech API V3 พร้อมด้วย เสียงน้องไข่ต้ม (Kaitom Voice เวอร์ชั่น 3) รุ่นใหม่ล่าสุด เวอร์ชั่นนี้มอบความเป็นธรรมชาติของเสียงที่ดีขึ้นอย่างมาก พร้อมการปรับข้อความอัจฉริยะ การโคลนเสียงภาษาไทย และการจัดการภาษาไทย-อังกฤษอัตโนมัติ

iApp Text to Speech API V3 - น้องไข่ต้ม

มีอะไรใหม่ใน V3

  • การปรับข้อความอัจฉริยะ - จัดการตัวเลข วันที่ สกุลเงิน และอักขระพิเศษโดยอัตโนมัติ
  • ตรวจจับภาษาอัตโนมัติ - ไม่ต้องระบุโหมดภาษา V3 จัดการข้อความผสมไทย-อังกฤษโดยอัตโนมัติ
  • รองรับข้อความยาวขึ้น - รองรับสูงสุด 10,000 ตัวอักษรต่อคำขอ
  • JSON API ที่เรียบง่าย - ใช้ JSON request body แทน form data
  • เสียงคุณภาพสูง - WAV 24 kHz สำหรับงานระดับมืออาชีพ

ลองใช้ Demo — เสียงเริ่มต้น (น้องไข่ต้ม)

ทดลองใช้ AI Demo

เข้าสู่ระบบหรือสร้างบัญชีฟรีเพื่อใช้งาน AI Demo และสำรวจ API ที่ทรงพลังของเรา

รับ 50 เครดิตฟรี (IC) เมื่อสมัครสมาชิก!

โปรโมชันหมดเขต 31 ธันวาคม 2568

V3 automatically handles Thai-English mixed text. No language mode selection needed.

0.5x1.0x1.5x

Natural range: 0.8 – 1.2. Default 1.0.

ลองใช้ Demo — โคลนเสียง (Voice Cloning) ภาษาไทย

🎁 ฟรีถึง 31 พฤษภาคม 2569 ⚠️ ALPHA

อัดเสียงตัวอย่างภาษาไทย 8–10 วินาที พร้อมพิมพ์ข้อความที่พูดให้ตรงทุกคำ จากนั้นพิมพ์ข้อความใหม่ที่ต้องการให้พูดด้วยเสียงนั้น (รองรับเฉพาะภาษาไทย)

ทดลองใช้ AI Demo

เข้าสู่ระบบหรือสร้างบัญชีฟรีเพื่อใช้งาน AI Demo และสำรวจ API ที่ทรงพลังของเรา

⚠️ Voice Cloning Demo (Thai-only, Alpha): Clone any Thai voice from a short reference clip. FREE to use until 31 May 2026.

📋 How to use this demo

  1. Step 1: Record yourself (max 10 seconds) speaking any short Thai sentence — OR upload an existing Thai audio clip.
  2. Step 2: Type the exact Thai words you spoke into the "Reference Transcript" box. (Word-for-word — not a description.)
  3. Step 3: Type the new Thai text you want the cloned voice to say.
  4. Step 4: Click Generate Cloned Voice.
00 / 10s

💡 Speak a natural Thai sentence such as: "สวัสดีครับ ผมชื่อไข่ต้ม วันนี้อากาศดีมาก". Recording will stop automatically at 10 seconds.

— or upload a file —

⚠️ This must match your recording word-for-word. Do not write a description like "เสียงผู้ชายพูดทักทาย" — write the actual sentence you spoke. The clone quality depends on this matching the audio exactly.

0.5x1.0x1.5x

Natural range: 0.8 – 1.2. Default 1.0.

เริ่มต้นใช้งาน

  1. สิ่งที่ต้องมี

    • API key จาก บริษัท ไอแอพพ์เทคโนโลยี จำกัด
    • ข้อความอินพุตเป็นภาษาไทยและ/หรือภาษาอังกฤษ
    • ความยาวข้อความสูงสุด: 10,000 ตัวอักษร
    • รูปแบบเอาต์พุตที่รองรับ: WAV (24 kHz)
  2. เริ่มต้นใช้งานอย่างรวดเร็ว

    • ประมวลผลรวดเร็วพร้อมคุณภาพสูง
    • สร้างเสียงพูดที่เป็นธรรมชาติยิ่งขึ้น
    • รองรับข้อความผสมไทย-อังกฤษอัตโนมัติ
    • ไม่ต้องเลือกโหมดภาษา
  3. ฟีเจอร์หลัก

    • เครื่องมือสังเคราะห์เสียงรุ่นใหม่
    • การปรับข้อความอัจฉริยะ (ตัวเลข, วันที่, สกุลเงิน)
    • การจัดการภาษาไทย-อังกฤษอัตโนมัติ
    • รองรับ Emoji และอักขระพิเศษ
    • รองรับสูงสุด 10,000 ตัวอักษร
  4. ความปลอดภัยและการปฏิบัติตามข้อกำหนด

    • เป็นไปตาม GDPR และ PDPA
    • ไม่มีการเก็บรักษาข้อมูลหลังจากประมวลผล
จะรับ API Key ได้อย่างไร?

กรุณาเยี่ยมชมหน้า การจัดการ API Key เพื่อดู API key ที่มีอยู่ของคุณ หรือขอ API key ใหม่

เวอร์ชันก่อนหน้า
  • V2: ต้องการ API แบบ POST ที่มีการเลือกโหมดภาษา? ดู Text-to-Speech V2
  • V1: ต้องการ API แบบ GET แบบเดิมพร้อมเสียงน้องไข่ต้ม V1 หรือเสียงซี? ดู Text-to-Speech V1

API Endpoints

EndpointMethodContent-Typeคำอธิบายราคา (Alpha)
/v3/store/audio/ttsPOSTapplication/jsonเสียงเริ่มต้น น้องไข่ต้ม — รองรับไทย/อังกฤษฟรี ถึง 31 พฤษภาคม 2569
/v3/store/audio/tts/clonePOSTmultipart/form-dataโคลนเสียง — สังเคราะห์ข้อความไทยด้วยเสียงที่กำหนดเองฟรี ถึง 31 พฤษภาคม 2569

ตัวอย่างรวดเร็ว

เสียงเริ่มต้น — คำขอตัวอย่าง

curl -X POST 'https://api.iapp.co.th/v3/store/audio/tts' \
--header 'apikey: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{"text": "สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3", "speed": 1.0}' \
--output 'output.pcm'

โคลนเสียง — คำขอตัวอย่าง

curl -X POST 'https://api.iapp.co.th/v3/store/audio/tts/clone' \
--header 'apikey: YOUR_API_KEY' \
--form 'text=สวัสดีครับ วันนี้ทดสอบการโคลนเสียง' \
--form 'speed=1.0' \
--form 'ref_text=ฮัลโหล สวัสดีครับ ผมชื่อไข่ต้ม' \
--form 'ref_audio=@reference.wav' \
--output 'output.pcm'

การตอบกลับตัวอย่าง

ตอบกลับเป็น raw PCM 16-bit little-endian, mono, 24 kHz (ส่งแบบสตรีม) — ห่อหุ้มด้วย WAV header เพื่อเล่น/บันทึกเป็น .wav:

ffmpeg -f s16le -ar 24000 -ac 1 -i output.pcm output.wav

เอกสารอ้างอิง API

1. Endpoint เสียงเริ่มต้น (น้องไข่ต้ม)

  • Endpoint: POST https://api.iapp.co.th/v3/store/audio/tts
  • Content-Type: application/json
  • Headers: apikey (จำเป็น)

Request Body

ฟิลด์ประเภทจำเป็นค่าเริ่มต้นหมายเหตุ
textstringใช่สูงสุด ~1,000 ตัวอักษรไทยต่อคำขอ ข้อความยาวกว่านั้นระบบจะแบ่งให้อัตโนมัติ
speedfloatไม่1.0ช่วงธรรมชาติ 0.81.2
{
"text": "สวัสดีครับ ยินดีต้อนรับสู่ iApp",
"speed": 1.0
}

2. Endpoint โคลนเสียง (ภาษาไทยเท่านั้น)

  • Endpoint: POST https://api.iapp.co.th/v3/store/audio/tts/clone
  • Content-Type: multipart/form-data
  • Headers: apikey (จำเป็น)

Form Fields

ฟิลด์ประเภทจำเป็นค่าเริ่มต้นหมายเหตุ
textstringใช่ข้อความภาษาไทยที่ต้องการสังเคราะห์
speedfloatไม่1.0ความเร็วเสียง
ref_textstringใช่คำพูดที่ปรากฏใน ref_audio แบบคำต่อคำ (ไม่ใช่คำอธิบาย)
ref_audiofileใช่WAV หรือ MP3, 8–12 วินาที, mono, เสียงพูดสะอาด ภาษาไทย

ข้อจำกัด:

  1. ไฟล์อ้างอิงต้อง ≤ 15 วินาที หากยาวกว่านี้ระบบจะตัดทิ้งโดยไม่แจ้งเตือน
  2. ref_text ต้องตรงกับเสียงในไฟล์ทุกคำ
  3. คำขอโคลนเสียงประมวลผลเรียงคิวต่อกัน อาจมี latency เพิ่มเมื่อใช้พร้อมกันหลายคน
  4. โคลนเสียงรองรับภาษาไทยเท่านั้น

Response (ทั้งสอง Endpoint)

  • Content-Type: application/octet-stream
  • Body: raw PCM 16-bit little-endian, mono, 24 kHz (สตรีมตามที่ผลิตได้)
  • คำนวณความยาวเสียง: ความยาว_วินาที = byte_length / 48000
  • เพื่อบันทึกเป็นไฟล์เล่นได้ ให้ห่อหุ้มด้วย WAV header หรือใช้ ffmpeg -f s16le -ar 24000 -ac 1 -i out.pcm out.wav

ตัวอย่างโค้ด

Python

import requests
import json

url = "https://api.iapp.co.th/v3/store/audio/tts"
headers = {
"apikey": "YOUR_API_KEY",
"Content-Type": "application/json"
}
data = {
"text": "สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3 มาพร้อมเสียงที่เป็นธรรมชาติมากขึ้น"
}

response = requests.post(url, headers=headers, json=data)
with open("output.wav", "wb") as f:
f.write(response.content)
print("บันทึกเสียงที่ output.wav")

JavaScript (Node.js)

const axios = require("axios")
const fs = require("fs")

const url = "https://api.iapp.co.th/v3/store/audio/tts"
const config = {
headers: {
"apikey": "YOUR_API_KEY",
"Content-Type": "application/json"
},
responseType: "arraybuffer"
}
const data = {
text: "สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3 มาพร้อมเสียงที่เป็นธรรมชาติมากขึ้น"
}

axios.post(url, data, config)
.then((response) => {
fs.writeFileSync("output.wav", response.data)
console.log("บันทึกเสียงที่ output.wav")
})
.catch((error) => console.error(error))

JavaScript (Fetch API)

const response = await fetch("https://api.iapp.co.th/v3/store/audio/tts", {
method: "POST",
headers: {
"apikey": "YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
text: "สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3"
})
});

const blob = await response.blob();
// ใช้ blob สำหรับเล่นหรือดาวน์โหลดเสียง

PHP

<?php
$curl = curl_init();

$data = json_encode([
"text" => "สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3 มาพร้อมเสียงที่เป็นธรรมชาติมากขึ้น"
]);

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.iapp.co.th/v3/store/audio/tts',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => $data,
CURLOPT_HTTPHEADER => array(
'apikey: YOUR_API_KEY',
'Content-Type: application/json'
),
));

$response = curl_exec($curl);
curl_close($curl);

file_put_contents("output.wav", $response);
echo "บันทึกเสียงที่ output.wav";
?>

Swift

import Foundation

let url = URL(string: "https://api.iapp.co.th/v3/store/audio/tts")!
var request = URLRequest(url: url, timeoutInterval: Double.infinity)
request.addValue("YOUR_API_KEY", forHTTPHeaderField: "apikey")
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpMethod = "POST"

let body: [String: Any] = [
"text": "สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3"
]
request.httpBody = try? JSONSerialization.data(withJSONObject: body)

let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else {
print(String(describing: error))
return
}
// บันทึกหรือเล่นข้อมูลเสียง
try? data.write(to: URL(fileURLWithPath: "output.wav"))
print("บันทึกเสียงที่ output.wav")
}
task.resume()

Kotlin

val client = OkHttpClient()
val mediaType = "application/json".toMediaType()
val body = """{"text": "สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3"}""".toRequestBody(mediaType)

val request = Request.Builder()
.url("https://api.iapp.co.th/v3/store/audio/tts")
.post(body)
.addHeader("apikey", "YOUR_API_KEY")
.addHeader("Content-Type", "application/json")
.build()

val response = client.newCall(request).execute()
// จัดการการตอบกลับเสียง

Java

OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType,
"{\"text\": \"สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3\"}");

Request request = new Request.Builder()
.url("https://api.iapp.co.th/v3/store/audio/tts")
.method("POST", body)
.addHeader("apikey", "YOUR_API_KEY")
.addHeader("Content-Type", "application/json")
.build();

Response response = client.newCall(request).execute();
// จัดการการตอบกลับเสียง

Dart

import 'dart:convert';
import 'package:http/http.dart' as http;
import 'dart:io';

void main() async {
var url = Uri.parse('https://api.iapp.co.th/v3/store/audio/tts');
var headers = {
'apikey': 'YOUR_API_KEY',
'Content-Type': 'application/json'
};
var body = jsonEncode({
'text': 'สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3'
});

var response = await http.post(url, headers: headers, body: body);

if (response.statusCode == 200) {
File('output.wav').writeAsBytesSync(response.bodyBytes);
print('บันทึกเสียงที่ output.wav');
} else {
print('Error: ${response.statusCode}');
}
}

Go

package main

import (
"bytes"
"encoding/json"
"io"
"net/http"
"os"
)

func main() {
url := "https://api.iapp.co.th/v3/store/audio/tts"

data := map[string]string{
"text": "สวัสดีครับ น้องไข่ต้ม เวอร์ชั่น 3",
}
jsonData, _ := json.Marshal(data)

req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("apikey", "YOUR_API_KEY")
req.Header.Set("Content-Type", "application/json")

client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()

audioData, _ := io.ReadAll(resp.Body)
os.WriteFile("output.wav", audioData, 0644)
}

ฟีเจอร์และความสามารถ

การปรับข้อความอัจฉริยะ

V3 ปรับองค์ประกอบข้อความต่างๆ โดยอัตโนมัติ:

ประเภทอินพุตเอาต์พุต (ที่พูด)
ตัวเลข1,234.56"หนึ่งพันสองร้อยสามสิบสี่จุดห้าหก"
วันที่27/01/2569"วันที่ยี่สิบเจ็ดมกราคมสองพันห้าร้อยหกสิบเก้า"
สกุลเงิน฿1,500"หนึ่งพันห้าร้อยบาท"
เวลา14:30"สิบสี่นาฬิกาสามสิบนาที"
เปอร์เซ็นต์25%"ยี่สิบห้าเปอร์เซ็นต์"

การจัดการภาษาอัตโนมัติ

V3 ตรวจจับและจัดการข้อความผสมไทย-อังกฤษโดยอัตโนมัติโดยไม่ต้องเลือกโหมดภาษา:

Hello and Welcome! ยินดีต้อนรับสู่ iApp Technology

รหัสข้อผิดพลาด

รหัสสถานะคำอธิบายวิธีแก้ไข
400Bad Request - รูปแบบ JSON ไม่ถูกต้องตรวจสอบ syntax ของ JSON
402เครดิตไม่เพียงพอเติมเครดิต
413Payload ใหญ่เกินไปข้อความเกิน 10,000 ตัวอักษร
429เกินขีดจำกัดอัตราตรวจสอบ ขีดจำกัด API key
503บริการไม่พร้อมใช้งานปัญหาชั่วคราว ลองใหม่ภายหลัง

คู่มือการย้ายข้อมูล

จาก V2 ไปยัง V3

ด้านV2V3
Content-Typemultipart/form-dataapplication/json
Request BodyForm dataJSON body
Language Modeต้องระบุ (TH / TH_MIX_EN)ตรวจจับอัตโนมัติ
ตัวอักษรสูงสุดไม่จำกัด10,000
คุณภาพเสียงWAV มาตรฐานWAV 24 kHz
Endpoint/v3/store/speech/text-to-speech/kaitom/v3/store/audio/tts

คำขอ V2 (เดิม):

curl -X POST 'https://api.iapp.co.th/v3/store/speech/text-to-speech/kaitom' \
--header 'apikey: YOUR_API_KEY' \
--form 'text="สวัสดีครับ"' \
--form 'language="TH"'

คำขอ V3 (ใหม่):

curl -X POST 'https://api.iapp.co.th/v3/store/audio/tts' \
--header 'apikey: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{"text": "สวัสดีครับ"}'

จาก V1 ไปยัง V3

ด้านV1V3
MethodGETPOST
RequestQuery parametersJSON body
ตัวเลือกเสียงน้องไข่ต้ม V1, ซีน้องไข่ต้ม V3
รูปแบบเอาต์พุตMP3/WAVWAV (24 kHz)
Endpoint/v3/store/speech/text-to-speech/kaitom/v1/v3/store/audio/tts

ข้อจำกัด

  • รองรับภาษาไทยและอังกฤษ (เสียงเริ่มต้น); โคลนเสียงรองรับเฉพาะภาษาไทย
  • เสียงเริ่มต้น: น้องไข่ต้ม V3 (ชาย); ใช้โคลนเสียงเพื่อกำหนดเสียงเอง
  • ความยาวข้อความที่แนะนำต่อคำขอ: ~1,000 ตัวอักษรไทย
  • เอาต์พุต: raw PCM 16-bit mono @ 24 kHz (ห่อด้วย WAV ที่ฝั่ง client)
  • ไฟล์อ้างอิงสำหรับโคลน: ≤ 15 วินาที แนะนำ 8–12 วินาที mono เสียงสะอาด
  • จำกัดอัตรา: 100 requests/วินาที ต่อ API key

แนวทางปฏิบัติที่ดีที่สุด

  1. ใช้เครื่องหมายวรรคตอนที่เหมาะสม เพื่อการหยุดและน้ำเสียงที่เป็นธรรมชาติ
  2. รักษาประโยคให้เป็นธรรมชาติ เพื่อเอาต์พุตที่เป็นธรรมชาติที่สุด
  3. ทดสอบกับข้อความส่วนเล็กๆ ก่อน ก่อนประมวลผลข้อความยาว
  4. ทับศัพท์ชื่อแบรนด์หรือคำเฉพาะเป็นภาษาไทย เมื่อต้องการการออกเสียงที่แน่นอน (เช่น ส่ง ไอแอป แทน iApp)
  5. ตรวจสอบจำนวนตัวอักษร เพื่อให้อยู่ในขีดจำกัด 10,000 ตัวอักษร

ราคา

ชื่อบริการ AI APIEndpointราคา (Alpha)On-Premise
Thai TTS V3 (เสียงน้องไข่ต้ม)/v3/store/audio/ttsฟรี ถึง 31 พฤษภาคม 2569ติดต่อเรา
Thai Voice Cloning V3/v3/store/audio/tts/cloneฟรี ถึง 31 พฤษภาคม 2569ติดต่อเรา

ดูเพิ่มเติม

  • Text-to-Speech V2 - เวอร์ชันก่อนหน้าพร้อมการเลือกโหมดภาษา
  • Text-to-Speech V1 - API แบบ GET แบบเก่าพร้อมเสียงน้องไข่ต้ม V1 และเสียงซี
  • Speech-to-Text - แปลงเสียงพูดเป็นข้อความ