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": {}
}
]
}Frame Synthesis
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": {}
}
]
}본문
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
응답
Successful Response
The response is of type file.
마지막 수정일 2026년 7월 13일
관련 항목
엔진 API 모드: 송 (노래 음성 합성) - VOICEVOX for Laravel엔진 API 연동 앱 개발 가이드 - VOICEVOX for Laravel엔진 API 모드: 토크 (텍스트 음성 합성) - VOICEVOX for Laravel클라이언트 모드: 송 (노래 음성 합성) - VOICEVOX for Laravel.vvproj 파일 사양 - VOICEVOX for Laravel이 페이지가 도움이 되었나요?
⌘I