luxlabs header browser preview


@class NSUUID, CSAudioInjectionFileOption, NSMutableArray, NSObject;
@protocol OS_dispatch_queue, CSAudioInjectionEngineDelegate, OS_dispatch_source;

@interface CSAudioInjectionEngine : NSObject

@property (retain, nonatomic) NSObject<OS_dispatch_queue> *queue;
@property (weak, nonatomic) id<CSAudioInjectionEngineDelegate> delegate;
@property (nonatomic) unsigned long long audioStreamHandleId;
@property (retain, nonatomic) CSAudioInjectionFileOption *fileOption;
@property (retain, nonatomic) NSObject<OS_dispatch_source> *audioFeedTimer;
@property (nonatomic) BOOL isRecording;
@property (nonatomic) struct AudioStreamBasicDescription { double mSampleRate; unsigned int mFormatID; unsigned int mFormatFlags; unsigned int mBytesPerPacket; unsigned int mFramesPerPacket; unsigned int mBytesPerFrame; unsigned int mChannelsPerFrame; unsigned int mBitsPerChannel; unsigned int mReserved; } outASBD;
@property (nonatomic) double bufferDuration;
@property (retain, nonatomic) NSMutableArray *injectionAudioFileList;
@property (retain, nonatomic) NSMutableArray *injectionStartNotifyBlocks;
@property (retain, nonatomic) NSMutableArray *injectionCompletionNotifyBlocks;
@property (retain, nonatomic) NSUUID *uuid;
@property (nonatomic) struct OpaqueAudioConverter { } *deinterleaver;
@property (nonatomic) struct AudioBufferList { unsigned int x0; struct AudioBuffer { unsigned int x0; unsigned int x1; void *x2; } x1[1]; } *pNonInterleavedABL;
@property (nonatomic) BOOL didSetScaleFactor;
@property (nonatomic) float scaleFactor;
@property (nonatomic) unsigned int inputRecordingNumberOfChannels;

- (void)dealloc;
- (void)start;
- (void)stop;
- (void).cxx_destruct;
- (BOOL)injectAudio:(id)a0 withScaleFactor:(float)a1 outASBD:(struct AudioStreamBasicDescription { double x0; unsigned int x1; unsigned int x2; unsigned int x3; unsigned int x4; unsigned int x5; unsigned int x6; unsigned int x7; unsigned int x8; })a2 playbackStarted:(id /* block */)a3 completion:(id /* block */)a4;
- (struct AudioStreamBasicDescription { double x0; unsigned int x1; unsigned int x2; unsigned int x3; unsigned int x4; unsigned int x5; unsigned int x6; unsigned int x7; unsigned int x8; })_defaultOutASBD;
- (BOOL)isAlwaysOnVoiceTriggerAvailable;
- (void)setAlwaysOnVoiceTriggerEnabled:(BOOL)a0;
- (void)stopAudioStream;
- (id)_compensateChannelDataIfNeeded:(id)a0 receivedNumChannels:(unsigned int)a1;
- (void)_createDeInterleaverIfNeeded;
- (id)_deinterleaveBufferIfNeeded:(struct AudioBufferList { unsigned int x0; struct AudioBuffer { unsigned int x0; unsigned int x1; void *x2; } x1[1]; } *)a0;
- (void)_readAudioBufferAndFeed;
- (void)_startAudioFeedingTimer;
- (BOOL)alwaysOnVoiceTriggerEnabled;
- (void)attachDevice:(id)a0;
- (id)initWithStreamHandleId:(unsigned long long)a0;
- (id)initWithStreamHandleId:(unsigned long long)a0 withInputRecordingNumberOfChannels:(unsigned int)a1;
- (BOOL)injectAudio:(id)a0;
- (BOOL)injectAudio:(id)a0 withScaleFactor:(float)a1 playbackStarted:(id /* block */)a2 completion:(id /* block */)a3;
- (void)setUserIntentOptions:(id)a0;
- (void)startAudioStreamWithOption:(id)a0;

@end