Skip to content

Struct FTryllVoiceProfileData

ClassList > FTryllVoiceProfileData

More...

  • #include <TryllVoiceProfile.h>

Public Attributes

Type Name
FString DefaultDeliveryMode
TArray< FTryllDeliveryMode > DeliveryModes
float Expressiveness = 0.5f
FString Lang
ETryllVoicePreparation Prepare = ETryllVoicePreparation::Eager
FTryllStoragePath ReferenceVoice
int32 SpeakerId = 0
float Speed = 1.f
FTryllModelName TtsModelName
FString VoiceDescription
bool bEmitVisemes = false

Public Static Attributes

Type Name
const TCHAR * NeutralMode

Public Functions

Type Name
TArray< FString > GetModeNames () const
bool HasMode (const FString & Name) const
void ToWire (::Tryll::VoiceProfileT & Out) const
void Validate (const FString & Context, TArray< FTryllWorkflowIssue > & OutIssues, bool bCheckFilesExist=true) const
void ValidateAgainst (const FTryllTtsCapabilities & Caps, const FString & Context, TArray< FTryllWorkflowIssue > & OutIssues) const

Public Static Functions

Type Name
bool IsValidModeName (const FString & Name)

Detailed Description

The voice of one agent (protocol v27): the TTS model, the base identity, the speech-pipeline settings and the named delivery modes. Every speaking node of the agent (Speak, Generate And Speak) uses it. Hand-mirrors VoiceProfile in voice.fbs; ToWire converts it for CreateAgent / SetAgentVoice.

Public Attributes Documentation

variable DefaultDeliveryMode

FString FTryllVoiceProfileData::DefaultDeliveryMode;

Mode active after the voice is set. Empty = "neutral".


variable DeliveryModes

TArray<FTryllDeliveryMode> FTryllVoiceProfileData::DeliveryModes;

Named delivery modes. Game code switches between them with Set Delivery Mode.


variable Expressiveness

float FTryllVoiceProfileData::Expressiveness;

Chatterbox exaggeration used by "neutral" and by modes that do not set their own, 0.0-2.0. Ignored by other families.


variable Lang

FString FTryllVoiceProfileData::Lang;

Language for multilingual models that pick it per call. Empty = session locale, then the model default. Rejected on models with a fixed language.


variable Prepare

ETryllVoicePreparation FTryllVoiceProfileData::Prepare;

When the server prepares the reference clips.


variable ReferenceVoice

FTryllStoragePath FTryllVoiceProfileData::ReferenceVoice;

Clone families (Pocket TTS, Chatterbox, Qwen3-TTS Base): reference clip relative to the storage root; locale-aware (voices/loc/<locale>/). Empty = the model's default voice (Qwen3-TTS Base requires a clip).


variable SpeakerId

int32 FTryllVoiceProfileData::SpeakerId;

Speaker or style index for multi-speaker models (Supertonic 3: 0-9; Orpheus and Maya1: preset index). Must be below the model's speaker count.


variable Speed

float FTryllVoiceProfileData::Speed;

Speech-rate multiplier, 1.0 = native. Must stay 1.0 on models without speed control (Orpheus, Maya1, Qwen3-TTS).


variable TtsModelName

FTryllModelName FTryllVoiceProfileData::TtsModelName;

TTS model catalog name. Required: there is no default model.


variable VoiceDescription

FString FTryllVoiceProfileData::VoiceDescription;

Maya1: natural-language identity of the voice. Overrides Speaker Id.


variable bEmitVisemes

bool FTryllVoiceProfileData::bEmitVisemes;

Emit a viseme track for every sentence this agent speaks, from any speaking node. Turn on for lip-synced characters (Tryll Lip Sync, the MetaHuman Viseme solver).


Public Static Attributes Documentation

variable NeutralMode

const TCHAR* FTryllVoiceProfileData::NeutralMode;

The built-in mode that is always available.


Public Functions Documentation

function GetModeNames

TArray< FString > FTryllVoiceProfileData::GetModeNames () const

Names of the defined delivery modes.


function HasMode

bool FTryllVoiceProfileData::HasMode (
    const FString & Name
) const

True when Name is "neutral" or one of the defined modes.


function ToWire

void FTryllVoiceProfileData::ToWire (
    ::Tryll::VoiceProfileT & Out
) const

Fill the FlatBuffers object-API mirror. Storage paths are normalized like node file pickers.


function Validate

void FTryllVoiceProfileData::Validate (
    const FString & Context,
    TArray< FTryllWorkflowIssue > & OutIssues,
    bool bCheckFilesExist=true
) const

Local checks the server would also make, minus anything that needs the model's capabilities: a model name, mode names, the default mode, ranges, text limits and the reference clips (path shape and, when bCheckFilesExist and the storage folder is configured, that the file exists). Context names the profile in each message.


function ValidateAgainst

void FTryllVoiceProfileData::ValidateAgainst (
    const FTryllTtsCapabilities & Caps,
    const FString & Context,
    TArray< FTryllWorkflowIssue > & OutIssues
) const

The capability half of the server's check (InvalidVoiceProfile, 3023): a field the model cannot use is an error. Caps usually come from the catalog (ListModels or the editor's catalog file); the server checks the loaded model's runtime capabilities.


Public Static Functions Documentation

function IsValidModeName

static bool FTryllVoiceProfileData::IsValidModeName (
    const FString & Name
) 

True for a valid delivery-mode name: [a-z0-9_]{1,32}.



The documentation for this class was generated from the following file C:/_tryll/_monorepo3/tryll/clients/unreal/Source/TryllClient/Public/TryllVoiceProfile.h