The structure is arranged as a bunch of channels, which are arranged as a bunch of samples.
Channels typically mean "Left" and "Right" (though they're numbered 0-n, to support arbitrary numbers of channels), so the substructures are named "channel00" - "channelxx".
Inside each "channelxx" structure, there are 512 numbers, 0 - 511. These represent sample data in order (sample 0 is the first sample, sample 1 is the next, sample 511 is the last).
In a future version, we'll probably be providing FFT data as an output from these patches -- doing it by hand in QC right now is largely academic, and almost certain to be too slow to be useful.
Even taking it to tone detection would be a step up (if not a giant leap) from the rather one dimensional volume detection. Any way that could be easily implemented?
tone detection requires checking the frequency domain, rather than the time domain, of the audio -- thus, FFT is still necessary :) It's not exceptionally difficult (Accelerate.framework has some FFT functions), we just need to learn how to use it (in our ever decreasing amount of free time...)
Year !
Tone Detection could be a great feature for the next version.
Everybody can imagine what we could do with this output...
Could it works in real time ? (with audio input patch)
A pitch output scaled to MIDI note values 0 > 127 would also be potentially quite cool. I could envisage a quantised output as an integer between 0 and 127, plus pitch-bend data on a separate output which could optionally be combined with the MIDI note data to more accurately reflect the pitch of the signal.
The structure is arranged as a bunch of channels, which are arranged as a bunch of samples.
Channels typically mean "Left" and "Right" (though they're numbered 0-n, to support arbitrary numbers of channels), so the substructures are named "channel00" - "channelxx".
Inside each "channelxx" structure, there are 512 numbers, 0 - 511. These represent sample data in order (sample 0 is the first sample, sample 1 is the next, sample 511 is the last).
If you're unsure what sample data means, you should read up on PCM here: http://en.wikipedia.org/wiki/Pulse-code_modulation
Oh, ok, that's sort of sensible. From that data I might be able to do something useful with it, like pass that data to a Fast Fourier Transform..
I'm starting to get a handle on Quartz, its a way lot more powerful than i had ever thought it would be..
In a future version, we'll probably be providing FFT data as an output from these patches -- doing it by hand in QC right now is largely academic, and almost certain to be too slow to be useful.
Even taking it to tone detection would be a step up (if not a giant leap) from the rather one dimensional volume detection. Any way that could be easily implemented?
tone detection requires checking the frequency domain, rather than the time domain, of the audio -- thus, FFT is still necessary :) It's not exceptionally difficult (Accelerate.framework has some FFT functions), we just need to learn how to use it (in our ever decreasing amount of free time...)
Year ! Tone Detection could be a great feature for the next version. Everybody can imagine what we could do with this output... Could it works in real time ? (with audio input patch)
FFT's aren't too expensive, so this could probably work perfectly fine in realtime.
A pitch output scaled to MIDI note values 0 > 127 would also be potentially quite cool. I could envisage a quantised output as an integer between 0 and 127, plus pitch-bend data on a separate output which could optionally be combined with the MIDI note data to more accurately reflect the pitch of the signal.
Just random thoughts...
a|x http://machinesdontcare.wordpress.com