IN A.D. 2101, WAR WAS BEGINNING. *boom* Yeah, this was a dumb bug, I didn't realize that AUAudioUnit would just arbitrarily ignore my configured block size and request a different one. The AirPods Pro will just request 480 instead of the 512 I ask for, so let's instead support variable block sizes, and only take up to the last 4096 samples of the chunk fed to the output device. Signed-off-by: Christopher Snowhill <kode54@gmail.com>
26 lines
530 B
Objective-C
26 lines
530 B
Objective-C
//
|
|
// VisualizationController.h
|
|
// CogAudio Framework
|
|
//
|
|
// Created by Christopher Snowhill on 2/12/22.
|
|
//
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
@interface VisualizationController : NSObject {
|
|
double sampleRate;
|
|
float visAudio[4096];
|
|
}
|
|
|
|
+ (VisualizationController *)sharedController;
|
|
|
|
- (void)postSampleRate:(double)sampleRate;
|
|
- (void)postVisPCM:(const float *)inPCM amount:(int)amount;
|
|
- (double)readSampleRate;
|
|
- (void)copyVisPCM:(float *)outPCM visFFT:(float *)outFFT;
|
|
|
|
@end
|
|
|
|
NS_ASSUME_NONNULL_END
|