音效生成
curl --request POST \
--url https://api.senseaudio.cn/v1/sound-effects/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"text": "雨夜里木门被轻轻敲响三次",
"model": "senseaudio-sfx-1.0-260626",
"variants_count": 2,
"smart_duration": true,
"prompt_influence": 0.7,
"output_format": "mp3"
}
'import requests
url = "https://api.senseaudio.cn/v1/sound-effects/generations"
payload = {
"text": "雨夜里木门被轻轻敲响三次",
"model": "senseaudio-sfx-1.0-260626",
"variants_count": 2,
"smart_duration": True,
"prompt_influence": 0.7,
"output_format": "mp3"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
text: '雨夜里木门被轻轻敲响三次',
model: 'senseaudio-sfx-1.0-260626',
variants_count: 2,
smart_duration: true,
prompt_influence: 0.7,
output_format: 'mp3'
})
};
fetch('https://api.senseaudio.cn/v1/sound-effects/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.senseaudio.cn/v1/sound-effects/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'text' => '雨夜里木门被轻轻敲响三次',
'model' => 'senseaudio-sfx-1.0-260626',
'variants_count' => 2,
'smart_duration' => true,
'prompt_influence' => 0.7,
'output_format' => 'mp3'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.senseaudio.cn/v1/sound-effects/generations"
payload := strings.NewReader("{\n \"text\": \"雨夜里木门被轻轻敲响三次\",\n \"model\": \"senseaudio-sfx-1.0-260626\",\n \"variants_count\": 2,\n \"smart_duration\": true,\n \"prompt_influence\": 0.7,\n \"output_format\": \"mp3\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.senseaudio.cn/v1/sound-effects/generations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"text\": \"雨夜里木门被轻轻敲响三次\",\n \"model\": \"senseaudio-sfx-1.0-260626\",\n \"variants_count\": 2,\n \"smart_duration\": true,\n \"prompt_influence\": 0.7,\n \"output_format\": \"mp3\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.senseaudio.cn/v1/sound-effects/generations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"text\": \"雨夜里木门被轻轻敲响三次\",\n \"model\": \"senseaudio-sfx-1.0-260626\",\n \"variants_count\": 2,\n \"smart_duration\": true,\n \"prompt_influence\": 0.7,\n \"output_format\": \"mp3\"\n}"
response = http.request(request)
puts response.read_body{
"generation_id": "02a2148ae11335c557441493bcdd8bcd-62a13d9385596b4c",
"status": "completed",
"items": [
{
"id": "ae45b988-ab0a-4e72-ab55-24e966014f9d",
"name": "雨夜里木门被轻轻敲响三次 · 变体1",
"variant_index": 0,
"status": "completed",
"audio_file_id": "file-X7oNJQEki5CazZKQ76Uku6",
"audio_url": "https://example.com/sfx-1.mp3",
"duration_seconds": 3,
"output_format": "mp3",
"fail_reason": ""
}
]
}音效生成
音效生成
根据文本描述同步生成 1-4 个音效变体
POST
/
v1
/
sound-effects
/
generations
音效生成
curl --request POST \
--url https://api.senseaudio.cn/v1/sound-effects/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"text": "雨夜里木门被轻轻敲响三次",
"model": "senseaudio-sfx-1.0-260626",
"variants_count": 2,
"smart_duration": true,
"prompt_influence": 0.7,
"output_format": "mp3"
}
'import requests
url = "https://api.senseaudio.cn/v1/sound-effects/generations"
payload = {
"text": "雨夜里木门被轻轻敲响三次",
"model": "senseaudio-sfx-1.0-260626",
"variants_count": 2,
"smart_duration": True,
"prompt_influence": 0.7,
"output_format": "mp3"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
text: '雨夜里木门被轻轻敲响三次',
model: 'senseaudio-sfx-1.0-260626',
variants_count: 2,
smart_duration: true,
prompt_influence: 0.7,
output_format: 'mp3'
})
};
fetch('https://api.senseaudio.cn/v1/sound-effects/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.senseaudio.cn/v1/sound-effects/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'text' => '雨夜里木门被轻轻敲响三次',
'model' => 'senseaudio-sfx-1.0-260626',
'variants_count' => 2,
'smart_duration' => true,
'prompt_influence' => 0.7,
'output_format' => 'mp3'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.senseaudio.cn/v1/sound-effects/generations"
payload := strings.NewReader("{\n \"text\": \"雨夜里木门被轻轻敲响三次\",\n \"model\": \"senseaudio-sfx-1.0-260626\",\n \"variants_count\": 2,\n \"smart_duration\": true,\n \"prompt_influence\": 0.7,\n \"output_format\": \"mp3\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.senseaudio.cn/v1/sound-effects/generations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"text\": \"雨夜里木门被轻轻敲响三次\",\n \"model\": \"senseaudio-sfx-1.0-260626\",\n \"variants_count\": 2,\n \"smart_duration\": true,\n \"prompt_influence\": 0.7,\n \"output_format\": \"mp3\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.senseaudio.cn/v1/sound-effects/generations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"text\": \"雨夜里木门被轻轻敲响三次\",\n \"model\": \"senseaudio-sfx-1.0-260626\",\n \"variants_count\": 2,\n \"smart_duration\": true,\n \"prompt_influence\": 0.7,\n \"output_format\": \"mp3\"\n}"
response = http.request(request)
puts response.read_body{
"generation_id": "02a2148ae11335c557441493bcdd8bcd-62a13d9385596b4c",
"status": "completed",
"items": [
{
"id": "ae45b988-ab0a-4e72-ab55-24e966014f9d",
"name": "雨夜里木门被轻轻敲响三次 · 变体1",
"variant_index": 0,
"status": "completed",
"audio_file_id": "file-X7oNJQEki5CazZKQ76Uku6",
"audio_url": "https://example.com/sfx-1.mp3",
"duration_seconds": 3,
"output_format": "mp3",
"fail_reason": ""
}
]
}说明
根据文本描述同步生成 1-4 个音效变体,默认模型为senseaudio-sfx-1.0-260626,完成媒体校验、文件上传和实际成功数量结算后返回结果。备注:单条消耗 100 积分,单次最多生成 4 条,合计消耗 400 积分。
至少一个变体成功时返回 HTTP 200,
status 为 completed 或 partial_success;仅对成功变体计费。全部失败时返回业务错误并全额退款。传入
duration_seconds 时会强制关闭 smart_duration,即使请求中 smart_duration=true。授权
格式:Bearer <API_KEY>
请求体
application/json
音效描述文本,去除首尾空白后不可为空。
Maximum string length:
2000已启用的音效模型 label。
示例:
"senseaudio-sfx-1.0-260626"
生成变体数量。备注:单条消耗 100 积分,单次最多生成 4 条,合计消耗 400 积分。
必填范围:
1 <= x <= 4固定生成时长,单位秒;优先于 smart_duration。
必填范围:
1 <= x <= 10由模型根据提示词自动决定时长。
提示词影响权重;不传时使用模型默认值。
必填范围:
0 <= x <= 1输出音频格式。
可用选项:
mp3, wav ⌘I