Navigation
API > API/Runtime > API/Runtime/AudioExtensions
| Name | ISoundfieldFactory |
| Type | class |
| Header File | /Engine/Source/Runtime/AudioExtensions/Public/ISoundfieldFormat.h |
| Include Path | #include "ISoundfieldFormat.h" |
Syntax
class ISoundfieldFactory : public IModularFeature
Derived Classes
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~ISoundfieldFactory() |
Virtual destructor | ISoundfieldFormat.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool CanTranscodeFromSoundfieldFormat
(
FName SourceFormat, |
Override this function to decide whether this soundfield format can read and convert from a source format. | ISoundfieldFormat.h | |
bool CanTranscodeToSoundfieldFormat
(
FName DestinationFormat, |
ISoundfieldFormat.h | ||
TUniquePtr< ISoundfieldDecoderStream > CreateDecoderStream
(
const FAudioPluginInitializationParams& InitInfo, |
ISoundfieldFormat.h | ||
TUniquePtr< ISoundfieldAudioPacket > CreateEmptyPacket() |
ISoundfieldFormat.h | ||
TUniquePtr< ISoundfieldEncoderStream > CreateEncoderStream
(
const FAudioPluginInitializationParams& InitInfo, |
Called when a stream is opened. | ISoundfieldFormat.h | |
TUniquePtr< ISoundfieldMixerStream > CreateMixerStream
(
const ISoundfieldEncodingSettingsProxy& InitialSettings |
ISoundfieldFormat.h | ||
TUniquePtr< ISoundfieldTranscodeStream > CreateTranscoderStream
(
const FName SourceFormat, |
Transcoder streams are fed a soundfield audio packet with either a different format entirely, or the same format and different settings. | ISoundfieldFormat.h | |
virtual UClass * GetCustomEncodingSettingsClass() |
Should return the StaticClass of your implementation of USoundfieldEncodingSettingsBase. | ISoundfieldFormat.h | |
const USoundfieldEncodingSettingsBase * GetDefaultEncodingSettings() |
ISoundfieldFormat.h | ||
FName GetSoundfieldFormatName() |
Get soundfield format name | ISoundfieldFormat.h | |
virtual bool IsEndpointFormat () |
This is overridden to return true for soundfield formats that are only used for sending audio externally. | ISoundfieldFormat.h | |
virtual bool IsTranscodeRequiredBetweenSettings
(
const ISoundfieldEncodingSettingsProxy& SourceSettings, |
Override this function to determine whether an incoming ISoundfieldPacket would need to be explicitly operated on between two submixes with the same format, but potentially different encoding settings. | ISoundfieldFormat.h | |
virtual bool ShouldEncodeAllStreamsIndependently
(
const ISoundfieldEncodingSettingsProxy& EncodingSettings |
If this is overridden to true, we will set up a separate encoding stream for every submix plugged into this soundfield submix. | ISoundfieldFormat.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static ISoundfieldFactory * Get
(
const FName& InName |
Get a registered soundfield format factory by name. | ISoundfieldFormat.h | |
| ISoundfieldFormat.h | |||
static FName GetFormatNameForInheritedEncoding() |
When a submix has this format name, it derives its format from the submix it sends audio to. | ISoundfieldFormat.h | |
static FName GetFormatNameForNoEncoding() |
When a submix has this format name, it is using interleaved, floating point audio with no metadata. | ISoundfieldFormat.h | |
static FName GetModularFeatureName() |
This is the FName used to register Soundfield Format factories with the modular feature system. | ISoundfieldFormat.h | |
static void RegisterSoundfieldFormat
(
ISoundfieldFactory* InFactory |
This needs to be called to make a soundfield format usable by the engine. | ISoundfieldFormat.h | |
static void UnregisterSoundfieldFormat
(
ISoundfieldFactory* InFactory |
This needs to be called it an implementation of ISoundfieldFactory is about to be destroyed. | ISoundfieldFormat.h |