A class responsible for capturing audio in a loopback mode. More...
#include <ST_AudioCaptureLoopback.h>
Public Member Functions | |
virtual EAudioIOType | GetAudioIOType () const override |
Gets the type of audio I/O for this capture device. | |
Public Member Functions inherited from UST_AudioIOCaptureBase | |
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 () |
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 |
Protected Member Functions | |
virtual bool | InitializeAudioIO () override |
Initializes the audio IO system for loopback audio capture. | |
Protected Member Functions inherited from UST_AudioIOCaptureBase | |
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 |
void | BuildFFTIOData (uint32 PeriodSizeInFrames, ma_format Format, uint32 SampleRate, uint32 Channels) |
void | DeinitializeFFT () |
virtual ma_decoder * | GetPlaybackDecoder () const |
void | GetDeviceInfo (EAudioIOType AudioIOType, FString FindDeviceName) |
Additional Inherited Members | |
Static Public Member Functions inherited from UST_AudioIOCaptureBase | |
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) |
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 |
Protected Attributes inherited from UST_AudioIOCaptureBase | |
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. |
A class responsible for capturing audio in a loopback mode.
Inherits from UST_AudioIOCaptureBase and overrides audio IO functionality for capturing audio in a loopback configuration.
|
inlineoverridevirtual |
Gets the type of audio I/O for this capture device.
Override to return the specific type for loopback audio capture.
Reimplemented from UST_AudioIOBase.
|
overrideprotectedvirtual |
Initializes the audio IO system for loopback audio capture.
This function sets up the necessary configuration and starts the loopback capture process. It overrides the base class method.
Reimplemented from UST_AudioIOBase.