mirror of
https://github.com/HarbourMasters/Starship.git
synced 2025-04-28 20:37:58 +03:00
Fix spectrogram.
This commit is contained in:
parent
638616a67e
commit
b86153c110
2 changed files with 11 additions and 5 deletions
|
@ -2251,7 +2251,7 @@ void Audio_AnalyzeFrequencies(f32* buffer0, f32* buffer1, s32 length, f32* buffe
|
||||||
s32 size;
|
s32 size;
|
||||||
|
|
||||||
size = 1 << length;
|
size = 1 << length;
|
||||||
half = size >> 1;
|
half = size / 2;
|
||||||
|
|
||||||
// Initialize buffer 2 if it is the wrong size for this calculation
|
// Initialize buffer 2 if it is the wrong size for this calculation
|
||||||
if (size != (s32) buffer2[0]) {
|
if (size != (s32) buffer2[0]) {
|
||||||
|
@ -2335,9 +2335,15 @@ u8* Audio_UpdateFrequencyAnalysis(void) {
|
||||||
|
|
||||||
Audio_ProcessPlaylist();
|
Audio_ProcessPlaylist();
|
||||||
// clang-format off
|
// clang-format off
|
||||||
aiData = gAiBuffers[gCurAiBuffIndex];\
|
aiData = gAiBuffers[gCurAiBuffIndex];
|
||||||
for(i3 = 0; i3 < 256; i3++) {\
|
int numChannels = GetNumAudioChannels();
|
||||||
sAudioAnalyzerData[i3] = *aiData++;
|
for(i3 = 0; i3 < 256; i3++) {
|
||||||
|
sAudioAnalyzerData[i3] = *aiData;
|
||||||
|
if (i3 % 2 == 0) {
|
||||||
|
aiData++;
|
||||||
|
} else {
|
||||||
|
aiData += numChannels - 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// clang-format on
|
// clang-format on
|
||||||
Audio_AnalyzeFrequencies(sAudioAnalyzerData, sAnalyzerBuffer1, 8, sAnalyzerBuffer2);
|
Audio_AnalyzeFrequencies(sAudioAnalyzerData, sAnalyzerBuffer1, 8, sAnalyzerBuffer2);
|
||||||
|
|
|
@ -82,7 +82,7 @@ void AudioThread_CreateNextAudioBuffer(s16* samples, u32 num_samples) {
|
||||||
AudioSynth_Update(gCurAbiCmdBuffer, &abiCmdCount, samples, num_samples);
|
AudioSynth_Update(gCurAbiCmdBuffer, &abiCmdCount, samples, num_samples);
|
||||||
|
|
||||||
// Spectrum Analyzer fix
|
// Spectrum Analyzer fix
|
||||||
memcpy(gAiBuffers[gCurAiBuffIndex], samples, num_samples * sizeof(s16));
|
memcpy(gAiBuffers[gCurAiBuffIndex], samples, GetNumAudioChannels() * num_samples * sizeof(s16));
|
||||||
|
|
||||||
gAudioRandom = osGetCount() * (gAudioRandom + gAudioTaskCountQ);
|
gAudioRandom = osGetCount() * (gAudioRandom + gAudioTaskCountQ);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue