Text to Speech API
Tổng quan
Giới thiệu
API cung cấp các chức năng Text-to-Speech (TTS) để chuyển đổi văn bản thành âm thanh, hỗ trợ nhiều loại giọng nói (voices) và ngôn ngữ. Người dùng có thể tải lên văn bản, chọn giọng nói mong muốn, nhận tệp âm thanh đầu ra và nhận thông báo khi hoàn thành công việc qua callback_url
.
Quick Start
- Đăng ký và lấy API Key từ hệ thống.
- Gửi các yêu cầu API qua HTTP với API Key trong header.
- Sử dụng các endpoint để thực hiện Text-to-Speech, quản lý và lấy thông tin về audio.
Xác thực
API yêu cầu cung cấp API Key qua header X-API-Key
. API Key phải được bảo mật và không chia sẻ công khai.
Base URL
https://api.ausynclab.org/api/v1/speech
Playground
https://api.ausynclab.org/docs (opens in a new tab)
Chi tiết Endpoints
1. Text to Speech
URL: https://api.ausynclab.org/api/v1/speech/text-to-speech
Phương thức: POST
Mô tả: Chuyển đổi văn bản thành audio dựa trên các thông số đầu vào.
Tham số Request Body:
audio_name
(bắt buộc): Tên của đoạn audio.text
(bắt buộc): Văn bản cần chuyển đổi.voice_id
(bắt buộc): ID của giọng nói mong muốn. Xem trang Voice Library để lấy ID giọng nói.speed
(tùy chọn): Tốc độ nói (từ 0.75 đến 1.25).callback_url
(bắt buộc): URL sẽ được gọi khi Text-to-speech job hoàn thành. Xem mục Callback Payload để tìm hiểu thêm.
CURL:
curl -X 'POST' \
'https://api.ausynclab.org/api/v1/speech/text-to-speech' \
-H 'accept: application/json' \
-H 'X-API-Key: your_api_key' \
-H 'Content-Type: application/json' \
-d '{
"audio_name": "Demo Audio",
"text": "Xin chào, đây là Text-to-Speech API",
"voice_id": 1,
"speed": 1.0,
"callback_url": "https://your-callback-url.com"
}'
Phản hồi:
- 200 OK
{
"status": 200,
"result": {
"audio_id": 123
}
}
2. Lấy danh sách audio
URL: https://api.ausynclab.org/api/v1/speech
Phương thức: GET
Mô tả: Lấy danh sách các audio đã tạo.
CURL:
curl -X 'GET' \
'https://api.ausynclab.org/api/v1/speech/' \
-H 'accept: application/json' \
-H 'X-API-Key: your_api_key'
Phản hồi:
- 200 OK
{
"status": null,
"result": [
{
"id": 123,
"name": "Demo Audio",
"voice_id": 1,
"voice_name": "Demo Voice",
"speed": 1,
"created_at": "2025-01-04T07:05:24.040000",
"audio_url": "https://cdn-ausync-endpoint.azureedge.net/audio/sample_audio.wav",
"audio_url_stream": "https://cdn-ausync-endpoint.azureedge.net/audio/sample_audio.m3u8",
"state": "SUCCEED"
},
...
]
}
3. Lấy thông tin chi tiết audio
URL: https://api.ausynclab.org/api/v1/speech/{audio_id}
Phương thức: GET
Mô tả: Lấy thông tin chi tiết của một audio đã tạo.
Tham số:
audio_id
(bắt buộc): ID của audio (kiểu integer).
CURL:
curl -X 'GET' \
'https://api.ausynclab.org/api/v1/speech/123' \
-H 'accept: application/json' \
-H 'X-API-Key: your_api_key'
Phản hồi:
- 200 OK
{
"status": 200,
"result": {
"id": 123,
"name": "Demo Audio",
"voice_id": 1,
"voice_name": "Demo Voice",
"speed": 1,
"created_at": "2025-01-04T07:05:24.040000",
"audio_url": "https://cdn-ausync-endpoint.azureedge.net/audio/sample_audio.wav",
"audio_url_stream": "https://cdn-ausync-endpoint.azureedge.net/audio/sample_audio.m3u8",
"state": "SUCCEED"
}
}
- 404 Not Found: Không tìm thấy audio.
4. Xóa audio
URL: https://api.ausynclab.org/api/v1/speech/{id}
Phương thức: DELETE
Mô tả: Xóa một audio khỏi hệ thống.
Tham số:
id
(bắt buộc): ID của audio cần xóa (kiểu integer).
CURL:
curl -X 'DELETE' \
'https://api.ausynclab.org/api/v1/speech/123' \
-H 'accept: application/json' \
-H 'X-API-Key: your_api_key'
Phản hồi:
- 200 OK
{
"status": 200,
"result": {
"id": 123
}
}
- 404 Not Found: Không tìm thấy audio.
Callback Payload
Khi Text-to-speech job hoàn thành, API sẽ gửi thông báo đến callback_url
với payload:
Nội dung Payload:
audio_id
: ID của audio được tạo.credits_used
: Số lượng tín dụng đã sử dụng để tạo âm thanh.voice_id
: ID của giọng nói đã sử dụng.speed
: Tốc độ nói của âm thanh.sample_rate
: Tần số mẫu của âm thanh.created_at
: Thời gian tạo âm thanh (ISO 8601).status
: Trạng thái của request ("SUCCEED", "FAILED").audio_url
: URL để tải xuống tệp âm thanh đã tạo.message
: Thông báo về kết quả xử lý (ví dụ: "Your audio is generated successfully.").
Ví dụ
{
"audio_id": 12345,
"credits_used": 10,
"voice_id": 1,
"speed": 1.0,
"sample_rate": 24000,
"created_at": "2024-12-30T10:00:00Z",
"status": "SUCCEEDED",
"audio_url": "https://cdn-ausync-endpoint.azureedge.net/audio/sample_audio.wav",
"message": "Your audio is generated successfully."
}
Lưu ý: Người dùng cần triển khai endpoint để nhận và xử lý payload này.