Files
UnrealEngine/Engine/Plugins/MetaHuman/MetaHumanLiveLink/Source/MetaHumanLocalLiveLinkSource/Public/MetaHumanAudioBaseLiveLinkSubjectSettings.h
Brandyn / Techy fcc1b09210 init
2026-04-04 15:40:51 -05:00

59 lines
2.4 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "MetaHumanLocalLiveLinkSubjectSettings.h"
#include "Nodes/RealtimeSpeechToAnimNode.h"
#include "MetaHumanAudioBaseLiveLinkSubjectSettings.generated.h"
UCLASS(BlueprintType)
class METAHUMANLOCALLIVELINKSOURCE_API UMetaHumanAudioBaseLiveLinkSubjectSettings : public UMetaHumanLocalLiveLinkSubjectSettings
{
public:
GENERATED_BODY()
//~Begin UObject interface
#if WITH_EDITOR
virtual void PostEditChangeProperty(struct FPropertyChangedEvent& InPropertyChangedEvent) override;
#endif
//~End UObject interface
virtual void Setup() override;
/* A very simplistic volume indicator to show if audio is being received - it is not a true audio level monitoring tool. */
UPROPERTY(Transient, VisibleAnywhere, Category = "Audio", meta = (EditCondition = "bIsLiveProcessing", HideEditConditionToggle, EditConditionHides))
float Level = 0;
UPROPERTY(EditAnywhere, Category = "AudioControls")
EAudioDrivenAnimationMood Mood = EAudioDrivenAnimationMood::Neutral;
UFUNCTION(BlueprintCallable, Category = "MetaHuman Live Link")
void SetMood(UPARAM(DisplayName = "Mood") EAudioDrivenAnimationMood InMood);
UFUNCTION(BlueprintCallable, Category = "MetaHuman Live Link")
void GetMood(UPARAM(DisplayName = "Mood") EAudioDrivenAnimationMood& OutMood) const;
UPROPERTY(EditAnywhere, Category = "AudioControls", Meta = (UIMin = 0.0, ClampMin = 0.0, UIMax = 1.0, ClampMax = 1.0, Delta = 0.01))
float MoodIntensity = 1.0;
UFUNCTION(BlueprintCallable, Category = "MetaHuman Live Link")
void SetMoodIntensity(UPARAM(DisplayName = "MoodIntensity") float InMoodIntensity);
UFUNCTION(BlueprintCallable, Category = "MetaHuman Live Link")
void GetMoodIntensity(UPARAM(DisplayName = "MoodIntensity") float& OutMoodIntensity) const;
/* The amount of time, in milliseconds, that the audio solver looks ahead into the audio stream to produce the current frame of animation. A larger value will produce higher quality animation but will come at the cost of increased latency. */
UPROPERTY(EditAnywhere, Category = "AudioControls", Meta = (UIMin = 80.0, ClampMin = 80.0, UIMax = 240.0, ClampMax = 240.0, Delta = 20.0))
int32 Lookahead = 80.0;
UFUNCTION(BlueprintCallable, Category = "MetaHuman Live Link")
void SetLookahead(UPARAM(DisplayName = "Lookahead") int32 InLookahead);
UFUNCTION(BlueprintCallable, Category = "MetaHuman Live Link")
void GetLookahead(UPARAM(DisplayName = "Lookahead") int32& OutLookahead) const;
};