API TTS/ASR tiếng Việt chuẩn production — clone giọng 1 lần dùng mãi, streaming realtime, lồng tiếng video, đọc sách dài. Thanh toán trả trước, bảo mật C2PA chống deepfake.
1. Lấy API key (sk-vs-*) từ Dashboard → API Keys
2. Gọi TTS:
curl -X POST https://studio.skynet.ai.vn/v1/audio/speech \
-H "Authorization: Bearer sk-vs-XXXX" \
-H "Content-Type: application/json" \
-d '{
"input": "Xin chào, tôi là giọng nói AI.",
"voice": "🎤 Nữ trẻ - Nhẹ nhàng",
"response_format": "wav"
}' --output speech.wav
3. Nhận dạng giọng nói (ASR):
curl -X POST https://studio.skynet.ai.vn/v1/audio/transcriptions \ -H "Authorization: Bearer sk-vs-XXXX" \ -F "file=@speech.wav" \ -F "language=🌐 Tự động phát hiện"
https://studio.skynet.ai.vnAuthorization: Bearer sk-vs-... (API key) hoặc JWT (web){"detail": "..."}pip install staraivoice
from staraivoice import StarAIVoice
client = StarAIVoice(api_key="sk-vs-XXX",
base_url="https://studio.skynet.ai.vn")
# TTS đồng bộ
audio = client.tts("Xin chào!", voice="🎤 Nữ trẻ - Nhẹ nhàng")
# Streaming từng câu
for chunk in client.stream("Câu một. Câu hai."):
player.write(chunk)
# TTS bất đồng bộ
job = client.tts_async("Văn bản dài...")
result = client.wait_job(job["job_id"])
npm install staraivoice
import { StarAIVoice } from 'staraivoice';
const client = new StarAIVoice({ apiKey: 'sk-vs-XXX' });
const audio = await client.tts({
input: 'Xin chào!',
voice: '🎤 Nữ trẻ - Nhẹ nhàng',
});
audio.play();
// Streaming WebSocket
const ws = new WebSocket(
'wss://studio.skynet.ai.vn/v1/audio/stream?token=sk-vs-XXX');
ws.send(JSON.stringify({ type:'start', input:'Chào bạn!' }));
📖 Xem toàn bộ 195 paths (103 API /v1, 70 admin, trợ lý, usage...) tại Swagger UI /docs — tự động cập nhật theo code. Dưới đây là các endpoint CHÍNH + mới nhất:
/v1/voicesDanh sách giọng — ưu tiên giọng Việt Nam 🎤 lên đầu (10 giọng Việt Lõi TTS 1 + 30 giọng quốc tế). Kèm sample_url nghe thử.
/v1/usageMức dùng của bạn — số token, chi phí, credit còn lại, theo ngày/endpoint.
/v1/assistant/guest-ssoGuest mode — dùng Trợ lý chat thử không cần đăng nhập (không gọi API trả phí).
/v1/assistant/configCấu hình giọng nói Trợ lý (voice/rate/volume) — admin có thể chỉnh.
/admin/tts-engine/config[Admin] Lõi TTS — chọn Lõi TTS 1 / Lõi TTS 2 / Auto (đổi lúc chạy, có test + rollback).
/admin/project-brief[Admin] Hồ sơ dự án — nhân sự/công cụ/model/hạ tầng. Chỉ super_admin hoặc admin được gắn quyền project_brief.
/v1/audio/speechTTS đồng bộ — trả file audio (wav). Hỗ trợ giọng thường + giọng clone (voice_id clone_<id>). Thêm "streaming": true → trả NDJSON từng câu, phát ngay khi nhận (TTFB ~1.6s).
/v1/audio/speech/asyncTTS bất đồng bộ — trả job_id, poll /v1/jobs/{id} hoặc webhook.
/v1/audio/transcriptionsASR — nhận dạng giọng nói → text (30+ ngôn ngữ, auto-detect).
/v1/tts/long-formLong-form — text dài tới 200K ký tự → audiobook/podcast (wav/mp3).
/v1/voice-changerVoice Changer — đổi giọng audio (giữ nguyên timing), hỗ trợ giọng clone.
/v1/dubbingDubbing — lồng tiếng video bằng AI (mp4/mov/mkv, tối đa 200MB).
/v1/demo/ttsDemo công khai — 5 lần/phút/IP, không cần key (dùng cho Playground).
/v1/voicesUpload giọng mẫu (3-30s) → lưu → nhận voice_id dùng mãi mãi.
/v1/voices/mineDanh sách giọng đã lưu của tài khoản.
/v1/voices/{voice_id}Xóa giọng đã lưu.
/v1/audio/cloneClone ngay lập tức (không lưu) — trả audio.
/v1/audio/stream?token=Streaming TTS — phát từng câu ngay khi model đọc xong (WebSocket).
/v1/jobs · /v1/jobs/{id} · /v1/jobs/{id}/downloadQuản lý job async: danh sách, trạng thái, tải kết quả.
/v1/webhooksĐăng ký webhook — nhận thông báo khi job hoàn tất.
/v1/auth/register · /v1/auth/login · /v1/auth/meTài khoản — đăng ký, đăng nhập (JWT), thông tin hiện tại.
/v1/billing/topupNạp tiền — VNPay / MoMo / VietQR (chọn Vietcombank hoặc MB Bank).
/v1/billing/banks · /v1/billing/invoicesDanh sách ngân hàng VietQR · lịch sử hóa đơn.
/v1/keys · /v1/models · /v1/usageAPI keys · danh sách model/giọng · thống kê sử dụng.
Star AI Voice · HNM VIETNAM DEVELOPMENT INVESTMENT., JSC