I’m extracting samples from an audio file in order to draw the wave form – I’ve generated an array with the samples ( waveDisplayArray in my code below ).
I wish to extract the largest value from this waveDisplayArray, what’s the best way to do this?
(I initally defined waveDisplayArray like this: int waveDisplayArray[280]={ 0 };
I’m not sure this is the best way to go about this)
thanks in advance 🙂
for( int y=0; y<convertedData.mNumberBuffers; y++ )
{
NSLog(@"buffer# %u", y);
AudioBuffer audioBuffer = convertedData.mBuffers[y];
int bufferSize = audioBuffer.mDataByteSize / sizeof(Float32);
Float32 *frame = audioBuffer.mData;
NSLog(@"Buffer Size is: %i", bufferSize);
int numberOfPixels = 280;
int waveDisplayArray[280]={ 0 };
int i;
for (i = 0; i<numberOfPixels; i++)
{
//NSLog(@"i is: %i", i);
int j;
int numberOfSamplesPerPixel = bufferSize/numberOfPixels;
float average = 0;
for (j=i*numberOfSamplesPerPixel; j<(i+1)*numberOfSamplesPerPixel; j++){
average += frame[j];
average = average/numberOfSamplesPerPixel;
}
waveDisplayArray[i] = average;
NSLog(@"Average %i is %f",i,average);
NSLog(@"waveDisplay Array %i: %f",i, waveDisplayArray[i]);
}
}
I have edited and posted only relevant part to find the largest value.