curl --request POST \
--url https://api.example.com/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/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/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/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/synthesis"
payload := strings.NewReader("{\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}")
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/synthesis")
.header("Content-Type", "application/json")
.body("{\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}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/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 \"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}"
response = http.request(request)
puts response.read_body"<string>"{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Perform speech synthesis
Laravel Implementation Status: ✅ Fully supported by Core (fallback implemented)
curl --request POST \
--url https://api.example.com/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/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/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/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/synthesis"
payload := strings.NewReader("{\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}")
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/synthesis")
.header("Content-Type", "application/json")
.body("{\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}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/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 \"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}"
response = http.request(request)
puts response.read_body"<string>"{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Parametri della query
Automatically adjust sentence-final intonation when the text is interrogative
Corpo
Query for speech synthesis.
List of accent phrases
Show child attributes
Show child attributes
Overall speech speed
Overall pitch
Overall intonation
Overall volume
Silence duration before the audio
Silence duration after the audio
Output sampling rate of the audio data
Whether to output audio data in stereo
Silence duration for punctuation etc. Ignored when null. Default value is null.
Silence duration for punctuation etc. (multiplier). Default value is 1.
[Read-only] Text in AquesTalk-style notation. Ignored as a query for speech synthesis.
Risposta
Successful Response
The response is of type file.
Argomenti correlati
Perform speech synthesis (cancellable)Create query for speech synthesisCreate query for speech synthesis using presetFrame SynthesisSynthesize multiple speeches at onceQuesta pagina è stata utile?