跳转到主要内容
POST
/
multi_synthesis
Synthesize multiple speeches at once
curl --request POST \
  --url https://api.example.com/multi_synthesis \
  --header 'Content-Type: application/json' \
  --data '
[
  {
    "accent_phrases": [
      {
        "moras": [
          {
            "text": "<string>",
            "vowel": "<string>",
            "vowel_length": 123,
            "pitch": 123,
            "consonant": "<string>",
            "consonant_length": 123
          }
        ],
        "accent": 123,
        "is_interrogative": false
      }
    ],
    "speedScale": 123,
    "pitchScale": 123,
    "intonationScale": 123,
    "volumeScale": 123,
    "prePhonemeLength": 123,
    "postPhonemeLength": 123,
    "outputSamplingRate": 123,
    "outputStereo": true,
    "pauseLength": 123,
    "pauseLengthScale": 1,
    "kana": "<string>"
  }
]
'
import requests

url = "https://api.example.com/multi_synthesis"

payload = [
{
"accent_phrases": [
{
"moras": [
{
"text": "<string>",
"vowel": "<string>",
"vowel_length": 123,
"pitch": 123,
"consonant": "<string>",
"consonant_length": 123
}
],
"accent": 123,
"is_interrogative": False
}
],
"speedScale": 123,
"pitchScale": 123,
"intonationScale": 123,
"volumeScale": 123,
"prePhonemeLength": 123,
"postPhonemeLength": 123,
"outputSamplingRate": 123,
"outputStereo": True,
"pauseLength": 123,
"pauseLengthScale": 1,
"kana": "<string>"
}
]
headers = {"Content-Type": "application/json"}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify([
{
accent_phrases: [
{
moras: [
{
text: '<string>',
vowel: '<string>',
vowel_length: 123,
pitch: 123,
consonant: '<string>',
consonant_length: 123
}
],
accent: 123,
is_interrogative: false
}
],
speedScale: 123,
pitchScale: 123,
intonationScale: 123,
volumeScale: 123,
prePhonemeLength: 123,
postPhonemeLength: 123,
outputSamplingRate: 123,
outputStereo: true,
pauseLength: 123,
pauseLengthScale: 1,
kana: '<string>'
}
])
};

fetch('https://api.example.com/multi_synthesis', 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.example.com/multi_synthesis",
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([
[
'accent_phrases' => [
[
'moras' => [
[
'text' => '<string>',
'vowel' => '<string>',
'vowel_length' => 123,
'pitch' => 123,
'consonant' => '<string>',
'consonant_length' => 123
]
],
'accent' => 123,
'is_interrogative' => false
]
],
'speedScale' => 123,
'pitchScale' => 123,
'intonationScale' => 123,
'volumeScale' => 123,
'prePhonemeLength' => 123,
'postPhonemeLength' => 123,
'outputSamplingRate' => 123,
'outputStereo' => true,
'pauseLength' => 123,
'pauseLengthScale' => 1,
'kana' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"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.example.com/multi_synthesis"

payload := strings.NewReader("[\n {\n \"accent_phrases\": [\n {\n \"moras\": [\n {\n \"text\": \"<string>\",\n \"vowel\": \"<string>\",\n \"vowel_length\": 123,\n \"pitch\": 123,\n \"consonant\": \"<string>\",\n \"consonant_length\": 123\n }\n ],\n \"accent\": 123,\n \"is_interrogative\": false\n }\n ],\n \"speedScale\": 123,\n \"pitchScale\": 123,\n \"intonationScale\": 123,\n \"volumeScale\": 123,\n \"prePhonemeLength\": 123,\n \"postPhonemeLength\": 123,\n \"outputSamplingRate\": 123,\n \"outputStereo\": true,\n \"pauseLength\": 123,\n \"pauseLengthScale\": 1,\n \"kana\": \"<string>\"\n }\n]")

req, _ := http.NewRequest("POST", url, payload)

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.example.com/multi_synthesis")
.header("Content-Type", "application/json")
.body("[\n {\n \"accent_phrases\": [\n {\n \"moras\": [\n {\n \"text\": \"<string>\",\n \"vowel\": \"<string>\",\n \"vowel_length\": 123,\n \"pitch\": 123,\n \"consonant\": \"<string>\",\n \"consonant_length\": 123\n }\n ],\n \"accent\": 123,\n \"is_interrogative\": false\n }\n ],\n \"speedScale\": 123,\n \"pitchScale\": 123,\n \"intonationScale\": 123,\n \"volumeScale\": 123,\n \"prePhonemeLength\": 123,\n \"postPhonemeLength\": 123,\n \"outputSamplingRate\": 123,\n \"outputStereo\": true,\n \"pauseLength\": 123,\n \"pauseLengthScale\": 1,\n \"kana\": \"<string>\"\n }\n]")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.example.com/multi_synthesis")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "[\n {\n \"accent_phrases\": [\n {\n \"moras\": [\n {\n \"text\": \"<string>\",\n \"vowel\": \"<string>\",\n \"vowel_length\": 123,\n \"pitch\": 123,\n \"consonant\": \"<string>\",\n \"consonant_length\": 123\n }\n ],\n \"accent\": 123,\n \"is_interrogative\": false\n }\n ],\n \"speedScale\": 123,\n \"pitchScale\": 123,\n \"intonationScale\": 123,\n \"volumeScale\": 123,\n \"prePhonemeLength\": 123,\n \"postPhonemeLength\": 123,\n \"outputSamplingRate\": 123,\n \"outputStereo\": true,\n \"pauseLength\": 123,\n \"pauseLengthScale\": 1,\n \"kana\": \"<string>\"\n }\n]"

response = http.request(request)
puts response.read_body
"<string>"
{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}

查询参数

speaker
integer
必填
enable_interrogative_upspeak
boolean
默认值:true

Automatically adjust sentence-final intonation when the text is interrogative

core_version
string

请求体

application/json
accent_phrases
AccentPhrase · object[]
必填

List of accent phrases

speedScale
number
必填

Overall speech speed

pitchScale
number
必填

Overall pitch

intonationScale
number
必填

Overall intonation

volumeScale
number
必填

Overall volume

prePhonemeLength
number
必填

Silence duration before the audio

postPhonemeLength
number
必填

Silence duration after the audio

outputSamplingRate
integer
必填

Output sampling rate of the audio data

outputStereo
boolean
必填

Whether to output audio data in stereo

pauseLength
number | null

Silence duration for punctuation etc. Ignored when null. Default value is null.

pauseLengthScale
number
默认值:1

Silence duration for punctuation etc. (multiplier). Default value is 1.

kana
string

[Read-only] Text in AquesTalk-style notation. Ignored as a query for speech synthesis.

响应

Successful Response

The response is of type file.

最后修改于 2026年7月13日