Audio Analysis for Windows

I’m looking for a good set of tools for real time audio analysis and thought there would be some nice addons available. Ideally I would use ofxAudioAnalyzer but it doesn’t work on Windows afaik. Or does anyone know if I could hack it to work on Win?

If not could anyone recommend an alternative with similar features?

Thanks

That works on Windows!

Did you get this addon working on windows? If yes, what did you have to do to get it working? I would also like to play around with this addon but I keep getting compile errors as all libraries in it are build for mac and linux.
Thanks!

Sorry for the slow reply - I’ve just seen this!
No I didn’t get it working on windows - my second comment above was probably misleading and made it sound like I had it working. I was just re-enforcing the fact that I needed a lib / addon which would compile on Windows.
A bit frustrating - most of these audio addons seem to be Mac :frowning:
Still after suggestions if anyone could recommend alternatives…

Hi! Also interested on this. ofxGist seems very good, working on the mic, but when I try to find another addon that could provide a buffer to analyze a audio file, I can’t have any working properly.
Anybody came with something?

hey,
I am trying to build https://github.com/borg/ofxGist on Windows 10 / VS2017 without success.
It requires https://github.com/borg/ofxOpenALSoundPlayer that is only macOS…
Maybe it could be replaced with the multiplatform https://github.com/npisanti/ofxAudioFile, but I don’t know how to do it neither.

Anybody having success on this? Gist looks interesting because they’re nice tools.

What analyzers are you using on Windows?

At the moment I have seen these alternatives:




Hello! ofxGist should work fine. Just note that the included example does require ofxOpenALSoundPlayer (which is OSX only) as is mentioned in the ofxGist description on GitHub. Have you tried building an empty project using ofxGist yet?

hey @Ishoek, yes, it compiled, but I don’t know how to get the buffer as required. I need to look better but I was asking bc maybe some have made it before or know how to do it easy…

Ah alright. In that case what you’re looking for is an alternative sound player with buffer access that is compatible with Windows. Unfortunately, the ofSoundPlayer class that comes with OF doesn’t offer such low-level access and I don’t know about other addons that do (for Windows).

What you could try to do is create a virtual loopback interface like suggested in this thread. Or if you happen to own a USB audio interface you should be able to access audio coming from the app (or your PC) as well.

Once you have a loopback like that set up you can configure ofSoundStream to use your (virtual) audio interface with ofSoundStreamSettings . Looks something like this:

ofLogToConsole();
soundStream.printDeviceList();

std::vector<ofSoundDevice> devices = soundStream.getDeviceList(ofSoundDevice::Api::MS_WASAPI);

ofSoundStreamSettings settings;
settings.setInDevice(devices[0]);
settings.setInListener(ofGetAppPtr());
settings.setApi(ofSoundDevice::Api::MS_WASAPI);
settings.numInputChannels = 2;
settings.numOutputChannels = 0;
settings.sampleRate = 14400;
settings.bufferSize = 512;
settings.numBuffers = 1;

soundStream.setup(settings);

Hope that helps to get you started. Good luck!

1 Like

thanks @ishoek,
it worked like you said processing live input as I wanted.

For the audio file processing mode maybe https://github.com/npisanti/ofxAudioFile maybe can do the job well on Windows. It must look for a way to get the buffer as https://github.com/borg/ofxOpenALSoundPlayer does.