|
CriWare Unreal Engine
Plug-ins for CriWare solutions.
|
#include <AtomBus.h>
公開メンバ関数 | |
| CRIWARECORE_API | UAtomBus (const FObjectInitializer &ObjectInitializer) |
| CRIWARECORE_API void | AddEnvelopeFollowerDelegate (const UObject *WorldContextObject, const FOnAtomBusEnvelopeBP &OnAtomBusEnvelopeBP) |
| CRIWARECORE_API void | AddSpectralAnalysisDelegate (const UObject *WorldContextObject, const TArray< FAtomBusSpectralAnalysisBandSettings > &InBandSettings, const FOnAtomBusSpectralAnalysisBP &OnAtomBusSpectralAnalysisBP, float UpdateRate=10.f, float DecibelNoiseFloor=-40.f, bool bDoNormalize=true, bool bDoAutoRange=false, float AutoRangeAttackTime=0.1f, float AutoRangeReleaseTime=60.f) |
| CRIWARECORE_API int32 | FindEffectPreset (UAtomBusEffectPreset *InEffectPreset) const |
| CRIWARECORE_API float | GetBusDryLevel () const |
| FORCEINLINE const FString & | GetBusName () const |
| CRIWARECORE_API float | GetBusOutputVolume (const UObject *WorldContextObject) const |
| CRIWARECORE_API float | GetBusWetLevel () const |
| CRIWARECORE_API float | GetChannelLevel (EAtomSpeaker InChannel, EAtomSpeaker OutChannel) |
| CRIWARECORE_API UAtomBusEffectPreset * | GetEffectPreset (int32 InEffectIndex) |
| CRIWARECORE_API int32 | GetNumEffectPresets () |
| CRIWARECORE_API FAtomPanning | GetPanning () const |
| CRIWARECORE_API UAtomRackBase * | GetRack () const |
| CRIWARECORE_API float | GetSendLevel (int SendIndex) |
| void | Init (const FString &InBusName, int InBusIndex) |
| CRIWARECORE_API bool | IsMainBus () const |
| virtual CRIWARECORE_API void | PostInitProperties () override |
| CRIWARECORE_API bool | RemoveEffectPreset (UAtomBusEffectPreset *InEffectPreset) |
| CRIWARECORE_API void | RemoveSpectralAnalysisDelegate (const UObject *WorldContextObject, const FOnAtomBusSpectralAnalysisBP &OnAtomBusSpectralAnalysisBP) |
| CRIWARECORE_API void | Reset (bool bApplyToAtom=true) |
| CRIWARECORE_API void | ResetChannelLevelMatrix () |
| CRIWARECORE_API void | SetBusDryLevel (const UObject *WorldContextObject, float InDryLevel) |
| CRIWARECORE_API void | SetBusOutputVolume (const UObject *WorldContextObject, float InOutputVolume) |
| CRIWARECORE_API void | SetBusWetLevel (const UObject *WorldContextObject, float InWetLevel) |
| CRIWARECORE_API void | SetChannelLevel (EAtomSpeaker InChannel, EAtomSpeaker OutChannel, float Level) |
| CRIWARECORE_API bool | SetDefaultEffectPreset (int32 InEffectIndex) |
| CRIWARECORE_API bool | SetEffectPreset (UAtomBusEffectPreset *InEffectPreset) |
| CRIWARECORE_API void | SetPanning (const FAtomPanning &PanningSetting) |
| CRIWARECORE_API void | SetSendLevel (int SendIndex, float Level) |
| CRIWARECORE_API void | StartEnvelopeFollowing (const UObject *WorldContextObject) |
| CRIWARECORE_API void | StartEnvelopeFollowing (FAtomRuntime *InAtomRuntime) |
| CRIWARECORE_API void | StartSpectralAnalysis (const UObject *WorldContextObject, EAtomFFTSize FFTSize=EAtomFFTSize::DefaultSize, EAtomFFTPeakInterpolationMethod InterpolationMethod=EAtomFFTPeakInterpolationMethod::Linear, EAtomFFTWindowType WindowType=EAtomFFTWindowType::Hann, float HopSize=0, EAtomSpectrumType SpectrumType=EAtomSpectrumType::MagnitudeSpectrum) |
| CRIWARECORE_API void | StartSpectralAnalysis (FAtomRuntime *InAtomRuntime, EAtomFFTSize FFTSize=EAtomFFTSize::DefaultSize, EAtomFFTPeakInterpolationMethod InterpolationMethod=EAtomFFTPeakInterpolationMethod::Linear, EAtomFFTWindowType WindowType=EAtomFFTWindowType::Hann, float HopSize=0, EAtomSpectrumType SpectrumType=EAtomSpectrumType::MagnitudeSpectrum) |
| CRIWARECORE_API void | StopEnvelopeFollowing (const UObject *WorldContextObject) |
| CRIWARECORE_API void | StopEnvelopeFollowing (FAtomRuntime *InAtomRuntime) |
| CRIWARECORE_API void | StopSpectralAnalysis (const UObject *WorldContextObject) |
| CRIWARECORE_API void | StopSpectralAnalysis (FAtomRuntime *InAtomRuntime) |
静的公開メンバ関数 | |
| static CRIWARECORE_API FAtomSoundSpectrumAnalyzerDelegateSettings | GetSpectrumAnalysisDelegateSettings (const TArray< FAtomBusSpectralAnalysisBandSettings > &InBandSettings, float UpdateRate, float DecibelNoiseFloor, bool bDoNormalize, bool bDoAutoRange, float AutoRangeAttackTime, float AutoRangeReleaseTime) |
| static CRIWARECORE_API FAtomSoundSpectrumAnalyzerSettings | GetSpectrumAnalyzerSettings (EAtomFFTSize FFTSize, EAtomFFTPeakInterpolationMethod InterpolationMethod, EAtomFFTWindowType WindowType, float HopSize, EAtomSpectrumType SpectrumType) |
限定公開メンバ関数 | |
| int | AddEffect (const FName &InEffectName, bool bIsBypassed, bool bUseRuntimeValues) |
| void | ApplyAll () const |
| void | ApplyChannelLevelMatrix () const |
| void | ApplyEffectBypass (const UAtomBusEffectPreset *EffectPreset) const |
| void | ApplyEffectParameter (const UAtomBusEffectPreset *EffectPreset, int ParameterIndex) const |
| void | ApplyEffectPreset (const UAtomBusEffectPreset *EffectPreset) const |
| void | ApplyEndpoint (const UAtomEndpointBase *Endpoint) const |
| void | ApplyPanning () const |
| void | ApplySendLevel (const FAtomBusSend &InSend) const |
| void | ApplyVolume (const UObject *WorldContextObject, float InOutputVolume) const |
| void | PushModulationChanges () |
| void | ResetEffectChain (bool bUseRuntimeDefaults=false) |
| void | ResetSends () |
| void | SetDryVolumeModulation (const FAtomSoundModulationSettings &InVolMod) |
| void | SetOutputVolumeModulation (const FAtomSoundModulationSettings &InVolMod) |
| void | SetWetVolumeModulation (const FAtomSoundModulationSettings &InVolMod) |
| void | SyncAll () |
限定公開変数類 | |
| TArray< TObjectPtr< UAtomBusEffectPreset > > | BusEffectChain |
| TArray< TSubclassOf< UAtomBusEffectPreset > > | BusEffectChainClasses |
| FString | BusName |
| FAtomPanning | Panning |
非公開メンバ関数 | |
| FORCEINLINE int | GetBusIndex () const |
非公開変数類 | |
| int | BusIndex = INDEX_NONE |
フレンド | |
| class | Atom::FAtomExPlayback |
| class | Atom::FMixerSubmix |
| class | FAtomRuntime |
| class | UAtomBusEffectPreset |
| class | UAtomRack |
| class | UAtomRackWithParentBase |
| UAtomBus::UAtomBus | ( | const FObjectInitializer & | ObjectInitializer | ) |
|
protected |
Add an effect slot based on its name.
| void UAtomBus::AddEnvelopeFollowerDelegate | ( | const UObject * | WorldContextObject, |
| const FOnAtomBusEnvelopeBP & | OnAtomBusEnvelopeBP ) |
Adds an envelope follower delegate to the Atom bus when envelope following is enabled on this DSP bus.
| OnAtomBusEnvelopeBP | Event to fire when new envelope data is available. |
| void UAtomBus::AddSpectralAnalysisDelegate | ( | const UObject * | WorldContextObject, |
| const TArray< FAtomBusSpectralAnalysisBandSettings > & | InBandSettings, | ||
| const FOnAtomBusSpectralAnalysisBP & | OnAtomBusSpectralAnalysisBP, | ||
| float | UpdateRate = 10.f, | ||
| float | DecibelNoiseFloor = -40.f, | ||
| bool | bDoNormalize = true, | ||
| bool | bDoAutoRange = false, | ||
| float | AutoRangeAttackTime = 0.1f, | ||
| float | AutoRangeReleaseTime = 60.f ) |
Adds a spectral analysis delegate to receive notifications when this Atom bus has spectrum analysis enabled.
| InBandsettings | The frequency bands to analyze and their envelope-following settings. |
| OnAtomBusSpectralAnalysisBP | Event to fire when new spectral data is available. |
| UpdateRate | How often to retrieve the data from the spectral analyzer and broadcast the event. Max is 30 times per second. |
| InterpMethod | Method to used for band peak calculation. |
| SpectrumType | Metric to use when returning spectrum values. |
| DecibelNoiseFloor | Decibel Noise Floor to consider as silence when using a Decibel Spectrum Type. |
| bDoNormalize | If true, output band values will be normalized between zero and one. |
| bDoAutoRange | If true, output band values will have their ranges automatically adjusted to the minimum and maximum values in the audio. Output band values will be normalized between zero and one. |
| AutoRangeAttackTime | The time (in seconds) it takes for the range to expand to 90% of a larger range. |
| AutoRangeReleaseTime | The time (in seconds) it takes for the range to shrink to 90% of a smaller range. |
|
protected |
Sync the native bus with all current settings from this AtomBus.
|
protected |
Sync the native bus with current level matrix.
|
protected |
Sync the native bus effect bypass with given value.
|
protected |
Sync the native bus effect parameter with given value.
|
protected |
Sync the native bus effect with all preset settings (parameters and bypass).
|
protected |
Sync the native bus output type with given endpoint settings.
|
protected |
Sync the native bus with current spatialization panning settings.
|
protected |
Sync the native bus with given bus send level.
|
protected |
Sync the native bus with current volume.
| int32 UAtomBus::FindEffectPreset | ( | UAtomBusEffectPreset * | InEffectPreset | ) | const |
Finds the given preset if it is actualy used in this bus.
| float UAtomBus::GetBusDryLevel | ( | ) | const |
|
inlineprivate |
|
inline |
Gets the bus name identifier.
| float UAtomBus::GetBusOutputVolume | ( | const UObject * | WorldContextObject | ) | const |
| float UAtomBus::GetBusWetLevel | ( | ) | const |
| float UAtomBus::GetChannelLevel | ( | EAtomSpeaker | InChannel, |
| EAtomSpeaker | OutChannel ) |
|
inline |
|
inline |
| FAtomPanning UAtomBus::GetPanning | ( | ) | const |
| UAtomRackBase * UAtomBus::GetRack | ( | ) | const |
Gets the Parent holder rack of this bus.
| float UAtomBus::GetSendLevel | ( | int | SendIndex | ) |
|
static |
|
static |
| void UAtomBus::Init | ( | const FString & | InBusName, |
| int | InBusIndex ) |
|
inline |
Whether this bus is a main bus.
|
overridevirtual |
|
protected |
| bool UAtomBus::RemoveEffectPreset | ( | UAtomBusEffectPreset * | InEffectPreset | ) |
Removes preset to corresponding bus effect, default bus effect settings will be restored.
| void UAtomBus::RemoveSpectralAnalysisDelegate | ( | const UObject * | WorldContextObject, |
| const FOnAtomBusSpectralAnalysisBP & | OnAtomBusSpectralAnalysisBP ) |
Remove a spectral analysis delegate.
| OnAtomBusSpectralAnalysisBP | The event delegate to remove. |
| void UAtomBus::Reset | ( | bool | bApplyToAtom = true | ) |
Reset this bus to default values, uses DspSetting if available (Editor).
| void UAtomBus::ResetChannelLevelMatrix | ( | ) |
|
protected |
Reset Effect chain to defaults.
|
protected |
Reset sends to default values.
| void UAtomBus::SetBusDryLevel | ( | const UObject * | WorldContextObject, |
| float | InDryLevel ) |
Sets the output volume of the bus in linear gain. This dynamic level acts as a multiplier on the DryLevel property of this bus.
| void UAtomBus::SetBusOutputVolume | ( | const UObject * | WorldContextObject, |
| float | InOutputVolume ) |
Sets the output volume of the bus in linear gain. This dynamic volume acts as a multiplier on the OutputVolume property of this bus.
| void UAtomBus::SetBusWetLevel | ( | const UObject * | WorldContextObject, |
| float | InWetLevel ) |
Sets the output volume of the bus in linear gain. This dynamic level acts as a multiplier on the WetLevel property of this bus.
| void UAtomBus::SetChannelLevel | ( | EAtomSpeaker | InChannel, |
| EAtomSpeaker | OutChannel, | ||
| float | Level ) |
| bool UAtomBus::SetDefaultEffectPreset | ( | int32 | InEffectIndex | ) |
|
protected |
| bool UAtomBus::SetEffectPreset | ( | UAtomBusEffectPreset * | InEffectPreset | ) |
Sets preset to corresponding bus effect, overriding previous preset if present and retrun false when effect type is not valid with this bus.
|
protected |
| void UAtomBus::SetPanning | ( | const FAtomPanning & | PanningSetting | ) |
| void UAtomBus::SetSendLevel | ( | int | SendIndex, |
| float | Level ) |
|
protected |
| void UAtomBus::StartEnvelopeFollowing | ( | const UObject * | WorldContextObject | ) |
| void UAtomBus::StartEnvelopeFollowing | ( | FAtomRuntime * | InAtomRuntime | ) |
| void UAtomBus::StartSpectralAnalysis | ( | const UObject * | WorldContextObject, |
| EAtomFFTSize | FFTSize = EAtomFFTSize::DefaultSize, | ||
| EAtomFFTPeakInterpolationMethod | InterpolationMethod = EAtomFFTPeakInterpolationMethod::Linear, | ||
| EAtomFFTWindowType | WindowType = EAtomFFTWindowType::Hann, | ||
| float | HopSize = 0, | ||
| EAtomSpectrumType | SpectrumType = EAtomSpectrumType::MagnitudeSpectrum ) |
Start spectrum analysis of the audio output.
| void UAtomBus::StartSpectralAnalysis | ( | FAtomRuntime * | InAtomRuntime, |
| EAtomFFTSize | FFTSize = EAtomFFTSize::DefaultSize, | ||
| EAtomFFTPeakInterpolationMethod | InterpolationMethod = EAtomFFTPeakInterpolationMethod::Linear, | ||
| EAtomFFTWindowType | WindowType = EAtomFFTWindowType::Hann, | ||
| float | HopSize = 0, | ||
| EAtomSpectrumType | SpectrumType = EAtomSpectrumType::MagnitudeSpectrum ) |
| void UAtomBus::StopEnvelopeFollowing | ( | const UObject * | WorldContextObject | ) |
| void UAtomBus::StopEnvelopeFollowing | ( | FAtomRuntime * | InAtomRuntime | ) |
| void UAtomBus::StopSpectralAnalysis | ( | const UObject * | WorldContextObject | ) |
Stop spectrum analysis of the audio output.
| void UAtomBus::StopSpectralAnalysis | ( | FAtomRuntime * | InAtomRuntime | ) |
|
protected |
Sync this AtomBus with all possible settings from the native bus.
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
| bool UAtomBus::bOverrideEndpoint = false |
Whether to override settings of the current endpoint for this bus.
|
protected |
The presets to apply to bus.
|
protected |
The presets classes used by this bus. (Hidden by Customization.)
|
private |
|
protected |
Name of this bus.
| FAtomChannelLevelMatrix UAtomBus::ChannelLevelMatrix |
The level matrix for each channels for this bus.
| FAtomSoundModulationSettings UAtomBus::DryLevelModulation |
The dry level of the bus in Decibels. Applied before bus effects and analysis are performed.
| TObjectPtr<UAtomEndpointBase> UAtomBus::Endpoint = nullptr |
The current mixer output endpoint for this bus. Overrides to setup specfic output settings.
| int32 UAtomBus::EnvelopeFollowerAttackTime |
The attack time in milliseconds for the envelope follower. Delegate callbacks can be registered to get the envelope value of sounds played with this DSP bus.
| int32 UAtomBus::EnvelopeFollowerReleaseTime |
The release time in milliseconds for the envelope follower. Delegate callbacks can be registered to get the envelope value of sounds played with this DSP bus.
| FAtomSoundModulationSettings UAtomBus::OutputVolumeModulation |
The output volume of the bus in Decibels. Applied after bus effects and analysis are performed.
|
protected |
The panning settings for this bus.
| TArray<FAtomBusSend> UAtomBus::Sends |
| EAtomSpatializationType UAtomBus::SpatializationType |
The type of spatialization of the multi-channels for this bus.
| FAtomSoundModulationSettings UAtomBus::WetLevelModulation |
The wet level of the bus in Decibels. Applied after bus effects and analysis are performed.