IVoiceEngine

This interface is an abstract mechanism for acquiring voice data from a hardware source.

Windows
MacOS
Linux

Inheritance Hierarchy

IVoiceEngine

FVoiceEngineImpl

References

Module

OnlineSubsystem

Header

/Engine/Plugins/Online/OnlineSubsystem/Source/Public/Interfaces/VoiceInterface.h

Include

#include "Interfaces/VoiceInterface.h"

Syntax

class IVoiceEngine

Remarks

This interface is an abstract mechanism for acquiring voice data from a hardware source. Each platform implements a specific version of this interface.

Constructors

Name Description

Protected function

IVoiceEngine()

Destructors

Name Description

Public function Virtual

~IVoiceEngine()

Virtual destructor to force proper child cleanup

Functions

Name Description

Public function Virtual

void

 

DisconnectAllEndpoints()

When called, disconnects all additional audio endpoints we patched to using PatchVoiceOutputToDevice().

Public function Virtual

float

 

GetIncomingAudioAmplitude

(
    const FUniqueNetIdWrapper& RemoteU...
)

This can be used to get how loud the given microphone input is, typically on a scale between 0.0 and 1.0.

Public function Virtual

float

 

GetMicrophoneAmplitude

(
    int32 LocalUserNum
)

This can be used to get how loud the given microphone input is, typically on a scale between 0.0 and 1.0.

Public function Virtual

Audio::FPatc...

 

GetMicrophoneOutput()

This can be used to get arbitrarily tap outgoing microphone audio from local players to use elsewhere in your application.

Public function Virtual

Audio::FPatc...

 

GetRemoteTalkerOutput()

This can be used to get arbitrarily tap incoming VOIP audio from remote players to use elsewhere in your application.

Public function Const

uint32

 

GetVoiceDataReadyFlags()

Returns which local talkers have data ready to be read from the voice system

Public function Const

FString

 

GetVoiceDebugState()

Get information about the voice state for display

Protected function

bool

 

Init

(
    int32 MaxLocalTalkers,
    int32 MaxRemoteTalkers
)

Initialize the voice engine

Public function

bool

 

IsHeadsetPresent

(
    uint32 LocalUserNum
)

Checks whether a local user index has a headset present or not

Public function

bool

 

IsLocalPlayerTalking

(
    uint32 LocalUserNum
)

Determines whether a local user index is currently talking or not

Public function

bool

 

IsRemotePlayerTalking

(
    const FUniqueNetId& UniqueId
)

Determines whether a remote talker is currently talking or not

Public function Virtual

bool

 

PatchLocalTalkerOutputToEndpoint

(
    const FString& InDeviceName
)

This can be used to patch outgoing audio to a different audio device.

Public function Virtual

bool

 

PatchRemoteTalkerOutputToEndpoint

(
    const FString& InDeviceName,
    bool bMuteInGameOutput
)

This can be used to patch incoming audio to a different audio device.

Public function

uint32

 

ReadLocalVoiceData

(
    uint32 LocalUserNum,
    uint8* Data,
    uint32* Size
)

Reads local voice data for the specified local talker.

Public function Virtual

uint32

 

ReadLocalVoiceData

(
    uint32 LocalUserNum,
    uint8* Data,
    uint32* Size,
    uint64* OutSampleCount
)

Public function

uint32

 

RegisterLocalTalker

(
    uint32 LocalUserNum
)

Registers the user index as a local talker (interested in voice data)

Public function

uint32

 

RegisterRemoteTalker

(
    const FUniqueNetId& UniqueId
)

Registers the unique player id as a remote talker (submitted voice data only)

Public function

uint32

 

SetPlaybackPriority

(
    uint32 LocalUserNum,
    const FUniqueNetId& RemoteTalkerId,
    uint32 Priority
)

Sets the playback priority of a remote talker for the given user.

Public function Virtual

uint32

 

SetRemoteVoiceAmplitude

(
    const FUniqueNetIdWrapper& RemoteT...,
    float InAmplitude
)

Used when receiving remote voice data to set the amplitude of a remote talker's incoming audio.

Public function

uint32

 

StartLocalVoiceProcessing

(
    uint32 LocalUserNum
)

Starts local voice processing for the specified user index

Public function

uint32

 

StartRemoteVoiceProcessing

(
    const FUniqueNetId& UniqueId
)

Starts remote voice processing for the specified user

Public function

uint32

 

StopLocalVoiceProcessing

(
    uint32 LocalUserNum
)

Stops local voice processing for the specified user index

Public function

uint32

 

StopRemoteVoiceProcessing

(
    const FUniqueNetId& UniqueId
)

Stops remote voice processing for the specified user

Public function

uint32

 

SubmitRemoteVoiceData

(
    const FUniqueNetId& RemoteTalkerId,
    uint8* Data,
    uint32* Size
)

Submits remote voice data for playback by the voice system.

Public function Virtual

uint32

 

SubmitRemoteVoiceData

(
    const FUniqueNetIdWrapper& RemoteT...,
    uint8* Data,
    uint32* Size,
    uint64& InSampleCount
)

Public function

void

 

Tick

(
    float DeltaTime
)

Allows for platform specific servicing of devices, etc.

Public function

uint32

 

UnregisterLocalTalker

(
    uint32 LocalUserNum
)

Unregisters the user index as a local talker (not interested in voice data)

Public function

uint32

 

UnregisterRemoteTalker

(
    const FUniqueNetId& UniqueId
)

Unregisters the unique player id as a remote talker

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss