Hi everyone
This year i have to develop my final year project.
Actually I'm thinking about a software that help people with music. it has several different parts as well as a "Testing" part. For this one I want to have sound input from the user via microphone and then analyze it, to find out info like which note it is and how long it lasted...
Can someone please tell me what programming language does support sound analysis or what library I can use for it (for java for example)..
I have done lots of searching but I could not find my answer.
thanx.

Recommended Answers

All 3 Replies

A bump might help here too.

You might want to check out audiooop in Python:
http://docs.python.org/library/audioop.html

Other than that, you might be able to check out how it is done in some of the free speech recognition softwares, like sphinx.

- Joe

Java, C++, C#, any of those would be appropriate. With Python you have to deal with the fact that any code you write yourself will be very slow.

Java, C++, C#, any of those would be appropriate. With Python you have to deal with the fact that any code you write yourself will be very slow.

I'd entirely agree with this, but you will have the same problem with any interprited language being slow; both Java and C# are also run on virtual machines, the best you're going to get with that is someone that is using a JIT compiler, which is available for each of these three platforms in its own way, or using native compiled libraries (like the library I sent you, which was written in C or C++ originally and a wrapper provided); this is probably not a big deal if you aren't processing huge amounts of data (and as a single project you probaly won't be) but it certainly does become important if your software were to run continuously on a machine or if you want to support any kind of legacy hardware.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.