Abstract base class for audio capture IO in ShaderTech Audio Processing. More...
#include <ST_AudioIOCaptureBase.h>
Public Member Functions | |
bool | IsCapturing () const |
Checks if audio capture is currently active. | |
FEncoderConfig | GetEncoderConfig () const |
Returns the current capture encoder configuration. | |
virtual EST_SampleFormat | GetAudioFormat () const override |
Returns the current audio format. | |
Public Member Functions inherited from UST_AudioIOBase | |
UST_AudioIOBase () | |
~UST_AudioIOBase () | |
bool | Activate () |
void | Deactivate () |
virtual EAudioIOType | GetAudioIOType () const |
FAudioIOConfig | GetAudioIOConfig () const |
FFFTIOData | GetFFTIOData () const |
bool | RegisterSampler (UObject *Sampler, bool bSamplerActivates=false) |
void | DeregisterSampler (UObject *Sampler, bool bZeroSamplersDeactivates=false) |
template<typename InterfaceType> | |
bool | ContainsInterface () const |
FIntPoint | GetIOId () const |
Static Public Member Functions | |
static void | MA_CaptureCallBack (ma_device *pDevice, void *pOutput, const void *pInput, ma_uint32 frameCount) |
Static callback for Miniaudio capture device. | |
Static Public Member Functions inherited from UST_AudioIOBase | |
static void | MA_DataOrganiser (ma_device *pDevice, void *pSamples, uint64 PeriodSizeInFrames, ma_format Format, uint32 Channels) |
Protected Member Functions | |
virtual void | DeinitializeAudioIO () override |
Deinitializes audio IO specific to capture. | |
virtual ma_encoder * | GetCaptureEncoder () const override |
Provides access to the active capture encoder. | |
void | SetIsCapturing (bool bValue) |
Sets the internal capturing state. | |
Protected Member Functions inherited from UST_AudioIOBase | |
virtual void | Initialize (FSubsystemCollectionBase &Collection) override |
virtual void | Deinitialize () override |
virtual bool | InitializeAudioIO () |
void | BuildFFTIOData (uint32 PeriodSizeInFrames, ma_format Format, uint32 SampleRate, uint32 Channels) |
void | DeinitializeFFT () |
virtual ma_decoder * | GetPlaybackDecoder () const |
void | GetDeviceInfo (EAudioIOType AudioIOType, FString FindDeviceName) |
Protected Attributes | |
ma_device * | CaptureDevice = nullptr |
ma_encoder * | CaptureEncoder = nullptr |
Protected Attributes inherited from UST_AudioIOBase | |
bool | bActivated = false |
bool | bIsProcessingFFT = false |
FCriticalSection | SamplerRegistrationMutex |
TArray< UObject * > | RegisteredSamplers |
ma_device_id * | pDeviceID = NULL |
Pointer to the selected device ID. | |
ma_device_info * | pPlaybackDeviceInfos = nullptr |
Playback device information. | |
ma_device_info * | pCaptureDeviceInfos = nullptr |
Capture device information. | |
ma_uint32 | playbackDeviceCount = 0 |
Number of playback devices found. | |
ma_uint32 | captureDeviceCount = 0 |
Number of capture devices found. | |
FFFTIOData | CachedFFTIOData |
Cached FFT IO data. | |
FAudioIOConfig | CachedAudioIOConfig |
Cached audio IO configuration. |
Additional Inherited Members | |
Public Attributes inherited from UST_AudioIOBase | |
FCriticalSection | AudioBufferLock |
void * | SampledAudioBuffers [BufferCount] = { nullptr, nullptr } |
void * | CurrentAudioBuffer = nullptr |
std::atomic< uint32 > | ReadIndex |
std::atomic< uint32 > | WriteIndex |
FOnAudioIOStatusChanged | OnAudioIOStatusChanged |
FOnRawMagnitudesReady | OnRawMagnitudesReady |
FOnFrequencyBandsReady | OnFrequencyBandsReady |
FOnAmplitudesReady | OnAmplitudesReady |
FOnPitchesReady | OnPitchesReady |
FOnBeatDetected | OnBeatDetected |
Static Public Attributes inherited from UST_AudioIOBase | |
static constexpr uint32 | BufferCount = 2 |
Abstract base class for audio capture IO in ShaderTech Audio Processing.
Handles audio capturing via Miniaudio and provides encoder access for subclasses.
|
overrideprotectedvirtual |
Deinitializes audio IO specific to capture.
Reimplemented from UST_AudioIOBase.
|
inlineoverridevirtual |
Returns the current audio format.
Reimplemented from UST_AudioIOBase.
|
inlineoverrideprotectedvirtual |
Provides access to the active capture encoder.
Reimplemented from UST_AudioIOBase.
|
inline |
Returns the current capture encoder configuration.
|
inline |
Checks if audio capture is currently active.
|
static |
Static callback for Miniaudio capture device.
Processes captured audio frames.
pDevice | Pointer to the Miniaudio device. |
pOutput | Unused output buffer (nullptr). |
pInput | Captured audio input buffer. |
frameCount | Number of audio frames captured. |
|
inlineprotected |
Sets the internal capturing state.
bValue | True to mark as capturing, false to mark as not capturing. |
|
protected |
Pointer to the Miniaudio capture device.
|
protected |
Pointer to the Miniaudio encoder used for captured data.