Frame Synthesis
curl --request POST \
--url https://api.example.com/frame_synthesis \
--header 'Content-Type: application/json' \
--data '
{
"f0": [
123
],
"volume": [
123
],
"phonemes": [
{
"phoneme": "<string>",
"frame_length": 123,
"note_id": "<string>"
}
],
"volumeScale": 123,
"outputSamplingRate": 123,
"outputStereo": true
}
'import requests
url = "https://api.example.com/frame_synthesis"
payload = {
"f0": [123],
"volume": [123],
"phonemes": [
{
"phoneme": "<string>",
"frame_length": 123,
"note_id": "<string>"
}
],
"volumeScale": 123,
"outputSamplingRate": 123,
"outputStereo": True
}
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({
f0: [123],
volume: [123],
phonemes: [{phoneme: '<string>', frame_length: 123, note_id: '<string>'}],
volumeScale: 123,
outputSamplingRate: 123,
outputStereo: true
})
};
fetch('https://api.example.com/frame_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/frame_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([
'f0' => [
123
],
'volume' => [
123
],
'phonemes' => [
[
'phoneme' => '<string>',
'frame_length' => 123,
'note_id' => '<string>'
]
],
'volumeScale' => 123,
'outputSamplingRate' => 123,
'outputStereo' => true
]),
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/frame_synthesis"
payload := strings.NewReader("{\n \"f0\": [\n 123\n ],\n \"volume\": [\n 123\n ],\n \"phonemes\": [\n {\n \"phoneme\": \"<string>\",\n \"frame_length\": 123,\n \"note_id\": \"<string>\"\n }\n ],\n \"volumeScale\": 123,\n \"outputSamplingRate\": 123,\n \"outputStereo\": true\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/frame_synthesis")
.header("Content-Type", "application/json")
.body("{\n \"f0\": [\n 123\n ],\n \"volume\": [\n 123\n ],\n \"phonemes\": [\n {\n \"phoneme\": \"<string>\",\n \"frame_length\": 123,\n \"note_id\": \"<string>\"\n }\n ],\n \"volumeScale\": 123,\n \"outputSamplingRate\": 123,\n \"outputStereo\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/frame_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 \"f0\": [\n 123\n ],\n \"volume\": [\n 123\n ],\n \"phonemes\": [\n {\n \"phoneme\": \"<string>\",\n \"frame_length\": 123,\n \"note_id\": \"<string>\"\n }\n ],\n \"volumeScale\": 123,\n \"outputSamplingRate\": 123,\n \"outputStereo\": true\n}"
response = http.request(request)
puts response.read_body"<string>"{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Perform singing voice synthesis.
Laravel Implementation Status: ✅ Fully supported by Core (fallback implemented)
POST
/
frame_synthesis
Frame Synthesis
curl --request POST \
--url https://api.example.com/frame_synthesis \
--header 'Content-Type: application/json' \
--data '
{
"f0": [
123
],
"volume": [
123
],
"phonemes": [
{
"phoneme": "<string>",
"frame_length": 123,
"note_id": "<string>"
}
],
"volumeScale": 123,
"outputSamplingRate": 123,
"outputStereo": true
}
'import requests
url = "https://api.example.com/frame_synthesis"
payload = {
"f0": [123],
"volume": [123],
"phonemes": [
{
"phoneme": "<string>",
"frame_length": 123,
"note_id": "<string>"
}
],
"volumeScale": 123,
"outputSamplingRate": 123,
"outputStereo": True
}
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({
f0: [123],
volume: [123],
phonemes: [{phoneme: '<string>', frame_length: 123, note_id: '<string>'}],
volumeScale: 123,
outputSamplingRate: 123,
outputStereo: true
})
};
fetch('https://api.example.com/frame_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/frame_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([
'f0' => [
123
],
'volume' => [
123
],
'phonemes' => [
[
'phoneme' => '<string>',
'frame_length' => 123,
'note_id' => '<string>'
]
],
'volumeScale' => 123,
'outputSamplingRate' => 123,
'outputStereo' => true
]),
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/frame_synthesis"
payload := strings.NewReader("{\n \"f0\": [\n 123\n ],\n \"volume\": [\n 123\n ],\n \"phonemes\": [\n {\n \"phoneme\": \"<string>\",\n \"frame_length\": 123,\n \"note_id\": \"<string>\"\n }\n ],\n \"volumeScale\": 123,\n \"outputSamplingRate\": 123,\n \"outputStereo\": true\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/frame_synthesis")
.header("Content-Type", "application/json")
.body("{\n \"f0\": [\n 123\n ],\n \"volume\": [\n 123\n ],\n \"phonemes\": [\n {\n \"phoneme\": \"<string>\",\n \"frame_length\": 123,\n \"note_id\": \"<string>\"\n }\n ],\n \"volumeScale\": 123,\n \"outputSamplingRate\": 123,\n \"outputStereo\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/frame_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 \"f0\": [\n 123\n ],\n \"volume\": [\n 123\n ],\n \"phonemes\": [\n {\n \"phoneme\": \"<string>\",\n \"frame_length\": 123,\n \"note_id\": \"<string>\"\n }\n ],\n \"volumeScale\": 123,\n \"outputSamplingRate\": 123,\n \"outputStereo\": true\n}"
response = http.request(request)
puts response.read_body"<string>"{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Cuerpo
application/json
Frame-by-frame query for speech synthesis.
Frame-by-frame fundamental frequency
Frame-by-frame volume
List of phonemes
Show child attributes
Show child attributes
Overall volume
Output sampling rate of the audio data
Whether to output audio data in stereo
Respuesta
Successful Response
The response is of type file.
Última modificación el 13 de julio de 2026
Temas relacionados
Guía de desarrollo de apps con integración de la Engine API - VOICEVOX for LaravelModo Engine API: Song (síntesis de voz cantada) - VOICEVOX for LaravelModo Engine API: Talk (síntesis de voz desde texto) - VOICEVOX for LaravelModo cliente: Song (síntesis de voz cantada) - VOICEVOX for LaravelEspecificación del archivo .vvproj - VOICEVOX for Laravel¿Esta página le ayudó?
Synthesize multiple speeches at once
Anterior
Check if morphing is possible for specified style
Siguiente
⌘I