What I'm trying to accomplish is basically as follows:
- Open up a file, determine how many 'samples' I will need based on its duration
- Dividing the file up into x samples; determine the (average) power level / amplitude for each sample.
- Using these sample values, proceed with drawing a waveform that represents the audio (following these guidelines, perhaps)
I have spent about three days, meticulously searching through online forums, books and APIs with no avail. I'm stuck at the most crucial step -> determining the power level for a chunk (buffer) of audio.
Having read through most of the upcoming Core Audio book, I've become comfortable with the low-level environment of AudioQueues, Audio Units, and to some extent - OpenAL. However, all of the examples and explanations I have seen (in this book and elsewhere on the web) all deal with determining power level values either while an audio file is being played or recorded (ie. in real time).
My purpose, however, is to quickly and efficiently determine these values of a given file on disk without having to play it back in real time. Any guidance towards which libraries, functions I need to be looking at would be greatly appreciated.
Thanks.