Doel
De.vvproj van de VOICEVOX-editor direct benutten, zodat je talk en song in Laravel opnieuw kunt genereren.
Structuur op het hoogste niveau
Een.vvproj is UTF-8 JSON. Talk en song worden in hetzelfde bestand opgeslagen.
De talk-sectie
talk.audioKeys is een geordende array, talk.audioItems is een record met ID’s als sleutel.
TalkAudioItem
Als er al een
query in de .vvproj is opgeslagen, kun je direct doorgaan naar de synthese zonder /audio_query opnieuw uit te voeren.
accentPhrases
De song-sectie
Track
Note
Conversie tussen ticks, seconden en frames
Bij een enkel tempo converteer je zo:tempos per segment, gesorteerd oplopend op position.
Note::len()-helper ticks naar framelengtes converteert, zie Score en Note in detail.
Flow van song-audiogeneratie
Aandachtspunten bij direct bewerken
- Houd de sleutels van
tracksentrackOrderaltijd in overeenstemming - Synchroniseer op dezelfde manier
talk.audioKeysentalk.audioItems - Houd
position >= 0,duration >= 1ennoteNumberbinnen0..127 tempos[0].positionis normaal0,timeSignatures[0].measureNumberis normaal1- Behoud onbekende sleutels waar mogelijk bij het opnieuw opslaan, zodat de compatibiliteit met toekomstige versies niet breekt
Laravel-codevoorbeeld
Een minimaal voorbeeld dat een.vvproj inleest en talk en song genereert.