Voice Changer API
Tổng Quan
Giới thiệu Voice Changer (Audio Conversion) API của AusyncLab cho phép chuyển đổi giọng nói trong một đoạn audio sang giọng nói của một audio tham chiếu khác. Hệ thống sử dụng công nghệ AI tiên tiến để biến đổi giọng nói một cách tự nhiên và chính xác.
Tính Năng Chính
- Chuyển đổi giọng nói sang giọng nói tham chiếu
- Hỗ trợ đa ngôn ngữ
- Cắt đoạn audio theo thời gian (start_time, end_time)
- Callback URL để theo dõi tiến trình xử lý
- Hỗ trợ streaming với định dạng HLS (m3u8)
Quick Start
- Đăng ký và lấy API Key từ hệ thống.
- Chuẩn bị audio gốc (raw audio) và audio tham chiếu (reference audio).
- Gửi yêu cầu chuyển đổi giọng nói với các URL audio.
- Nhận thông báo qua callback_url khi hoàn thành.
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.io/api/v1/audio-conversionPlayground
Thử nghiệm API tại: https://api.ausynclab.io/docs (opens in a new tab)
Chi Tiết Endpoints
1. Chuyển Đổi Giọng Nói
Endpoint: POST /convert
Mô tả: Chuyển đổi giọng nói trong audio gốc sang giọng nói của audio tham chiếu.
Tham số Request Body:
raw_audio_url(bắt buộc): URL của audio gốc cần chuyển đổi giọng.reference_audio_url(bắt buộc): URL của audio tham chiếu chứa giọng nói mục tiêu.reference_language(bắt buộc): Ngôn ngữ của audio tham chiếu. Các ngôn ngữ được hỗ trợ:en: Tiếng Anh (English)vi: Tiếng Việt (Vietnamese)de: Tiếng Đức (German)fr: Tiếng Pháp (French)ko: Tiếng Hàn (Korean)ja: Tiếng Nhật (Japanese)zh: Tiếng Trung (Chinese)it: Tiếng Ý (Italian)pt: Tiếng Bồ Đào Nha (Portuguese)pl: Tiếng Ba Lan (Polish)es: Tiếng Tây Ban Nha (Spanish)nl: Tiếng Hà Lan (Dutch)th: Tiếng Thái (Thai)ms: Tiếng Mã Lai (Malay)hi: Tiếng Hindi (Hindi)ar: Tiếng Ả Rập (Arabic)he: Tiếng Do Thái (Hebrew)
name(tùy chọn): Tên của đoạn audio chuyển đổi.raw_language(tùy chọn): Ngôn ngữ của audio gốc.start_time(tùy chọn): Thời gian bắt đầu cắt audio gốc (tính bằng giây).end_time(tùy chọn): Thời gian kết thúc cắt audio gốc (tính bằng giây).callback_url(tùy chọn): URL sẽ được gọi khi quá trình chuyển đổi hoàn thành. Xem mục Callback Payload để tìm hiểu thêm.
CURL:
curl -X 'POST' \
'https://api.ausynclab.io/api/v1/audio-conversion/convert' \
-H 'accept: application/json' \
-H 'X-API-Key: your_api_key' \
-H 'Content-Type: application/json' \
-d '{
"name": "Demo Voice Changer",
"raw_audio_url": "https://example.com/raw_audio.wav",
"reference_audio_url": "https://example.com/reference_audio.wav",
"reference_language": "vi",
"raw_language": "vi",
"callback_url": "https://your-callback-url.com"
}'Phản hồi:
- 200 OK
{
"status": 200,
"result": {
"audio_id": 123,
"message": "Your request to convert the audio is processing"
}
}2. Lấy Danh Sách Audio Đã Chuyển Đổi
URL: https://api.ausynclab.io/api/v1/audio-conversion/
Phương thức: GET
Mô tả: Lấy danh sách tất cả các audio đã chuyển đổi.
CURL:
curl -X 'GET' \
'https://api.ausynclab.io/api/v1/audio-conversion/' \
-H 'accept: application/json' \
-H 'X-API-Key: your_api_key'Phản hồi:
- 200 OK
{
"status": 200,
"result": [
{
"id": 123,
"state": "SUCCEED",
"name": "Demo Voice Changer",
"raw_language": "vi",
"reference_language": "vi",
"raw_audio_url": "https://example.com/raw_audio.wav",
"reference_audio_url": "https://example.com/reference_audio.wav",
"converted_audio_url": "https://example.com/converted_audio.wav",
"converted_audio_url_stream": "https://example.com/converted_audio.m3u8",
"created_at": "2026-01-04T07:05:24.040000"
},
...
]
}3. Lấy Thông Tin Chi Tiết Audio
URL: https://api.ausynclab.io/api/v1/audio-conversion/{audio_id}
Phương thức: GET
Mô tả: Lấy thông tin chi tiết của một audio đã chuyển đổi.
Tham số:
audio_id(bắt buộc): ID của audio (kiểu integer).
CURL:
curl -X 'GET' \
'https://api.ausynclab.io/api/v1/audio-conversion/123' \
-H 'accept: application/json' \
-H 'X-API-Key: your_api_key'Phản hồi:
- 200 OK
{
"status": 200,
"result": {
"id": 123,
"state": "SUCCEED",
"name": "Demo Voice Changer",
"raw_language": "vi",
"reference_language": "vi",
"raw_audio_url": "https://example.com/raw_audio.wav",
"reference_audio_url": "https://example.com/reference_audio.wav",
"converted_audio_url": "https://example.com/converted_audio.wav",
"converted_audio_url_stream": "https://example.com/converted_audio.m3u8",
"created_at": "2026-01-04T07:05:24.040000"
},
"message": null
}- 404 Not Found: Không tìm thấy audio.
4. Xóa Audio
URL: https://api.ausynclab.io/api/v1/audio-conversion/{id}
Phương thức: DELETE
Mô tả: Xóa một audio đã chuyển đổi 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.io/api/v1/audio-conversion/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 quá trình chuyển đổi giọng nói 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.status: Trạng thái của request (SUCCEED,FAILED).converted_audio_url: URL để tải xuống tệp audio đã chuyển đổi.converted_audio_url_stream: URL streaming (HLS) của audio đã chuyển đổi.message: Thông báo về kết quả xử lý.
Ví dụ
{
"audio_id": 123,
"status": "SUCCEED",
"converted_audio_url": "https://example.com/converted_audio.wav",
"converted_audio_url_stream": "https://example.com/converted_audio.m3u8",
"message": "Your audio conversion is completed successfully."
}Lưu ý: Người dùng cần triển khai endpoint để nhận và xử lý payload này.