Code Fix: Change visualizers to only copy FFT data

These two visualization components, SceneKit and Core Graphics based,
only use the FFT data. So now make the request drop the PCM data.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
This commit is contained in:
Christopher Snowhill 2025-03-13 19:50:35 -07:00
parent 7cb010e337
commit 31281197d4
2 changed files with 4 additions and 4 deletions

View file

@ -42,7 +42,7 @@ extern NSString *CogPlaybackDidStopNotificiation;
ddb_analyzer_t _analyzer; ddb_analyzer_t _analyzer;
ddb_analyzer_draw_data_t _draw_data; ddb_analyzer_draw_data_t _draw_data;
float visAudio[4096], visFFT[2048]; float visFFT[2048];
UInt64 visSamplesLastPosted; UInt64 visSamplesLastPosted;
double visLatencyOffset; double visLatencyOffset;
@ -418,7 +418,7 @@ extern NSString *CogPlaybackDidStopNotificiation;
visLatencyOffset = 0.0; visLatencyOffset = 0.0;
} }
[self->visController copyVisPCM:&visAudio[0] visFFT:&visFFT[0] latencyOffset:visLatencyOffset]; [self->visController copyVisPCM:nil visFFT:&visFFT[0] latencyOffset:visLatencyOffset];
ddb_analyzer_process(&_analyzer, [self->visController readSampleRate] / 2.0, 1, visFFT, 2048); ddb_analyzer_process(&_analyzer, [self->visController readSampleRate] / 2.0, 1, visFFT, 2048);
ddb_analyzer_tick(&_analyzer); ddb_analyzer_tick(&_analyzer);

View file

@ -45,7 +45,7 @@ extern NSString *CogPlaybackDidStopNotificiation;
SCNVector3 cameraPosition3d; SCNVector3 cameraPosition3d;
SCNVector3 cameraEulerAngles3d; SCNVector3 cameraEulerAngles3d;
float visAudio[4096], visFFT[2048]; float visFFT[2048];
UInt64 visSamplesLastPosted; UInt64 visSamplesLastPosted;
double visLatencyOffset; double visLatencyOffset;
@ -321,7 +321,7 @@ extern NSString *CogPlaybackDidStopNotificiation;
visLatencyOffset = 0.0; visLatencyOffset = 0.0;
} }
[self->visController copyVisPCM:&visAudio[0] visFFT:&visFFT[0] latencyOffset:visLatencyOffset]; [self->visController copyVisPCM:nil visFFT:&visFFT[0] latencyOffset:visLatencyOffset];
ddb_analyzer_process(&_analyzer, [self->visController readSampleRate] / 2.0, 1, visFFT, 2048); ddb_analyzer_process(&_analyzer, [self->visController readSampleRate] / 2.0, 1, visFFT, 2048);
ddb_analyzer_tick(&_analyzer); ddb_analyzer_tick(&_analyzer);