How to tell whether there's sound other than noise in different environments?

Hi, here's a designer with some Arduino projects experiences but not much in audio. I'm looking for a quick and dirty solution to tell whether there's sound or just noise in different environments.

I want to make a small lamp that will zone out when it's "boring," specifically, its brightness and color change when there's little sound input apart from environmental noises for a period of time, say, 10 minutes. So I need to recognize variations in the input of a microphone in real time.

I searched around but didn't find projects with similar requirements. I learned about the FFT library, but not sure if it's a fix? (looks like I can use the Major Peak to do some magic...)

Also, I'll try to fit everything (including a microphone, an LED, and a vibration sensor) into a small lampshade (3~4 inches in diameter.) Is there any recommendation of the microcontroller for such a project?

Thank you!

How are you going to decide which sounds count as "sound" and which are just "environmental noise"?

Steve

MikoMuha:
Hi, here's a designer with some Arduino projects experiences but not much in audio. I'm looking for a quick and dirty solution to tell whether there's sound or just noise in different environments.

Sorry, that's not a problem with a simple solution, its possibly requiring AI. Its not well defined either, since some sounds are noise - you have to be much clearer on the difference between what you consider noise and what you consider sound, and perhaps adopt machine learning techniques if they aren't really distinct.

This is very difficult and noise can be defined a couple of different ways. Generally, it means "unwanted sound". My mom used to say my music was "just noise". :wink: Or sometimes it's defined as randomness or uncertainty. Professional recording studios are still soundproof because software doesn't do a very good job of separating signal from noise.

But, I made [u]The World's Simplest Lighting Effect[/u] which turns on a LED or light whenever the sound level is above average. Maybe you can build-on that... Maybe if the sound is twice the average or something like that. Or maybe greater than some threshold and twice the average, etc. Or maybe something like that with FFT.

My mom used to say my music was "just noise"

And my kids say the same about some of the music I listen to.

As to the question, I would like to go further and say what you are trying to do is impossible by definition.

Thank you guys. It's great to know that's much more complex than I expected. Otherwise don't know how long it will take me trying to do something bound to fail lol.

I thought I was just trying to make something that can pick up "abrupt" sound from "stable" "environmental" input. But, true, it's not easy to define, nor for a program to tell... I'd rather use a simple indicator first, like volume, emm.

Thanks!!

DVDdoug:
This is very difficult and noise can be defined a couple of different ways. Generally, it means "unwanted sound". My mom used to say my music was "just noise". :wink: Or sometimes it's defined as randomness or uncertainty. Professional recording studios are still soundproof because software doesn't do a very good job of separating signal from noise.

But, I made [u]The World's Simplest Lighting Effect[/u] which turns on a LED or light whenever the sound level is above average. Maybe you can build-on that... Maybe if the sound is twice the average or something like that. Or maybe greater than some threshold and twice the average, etc. Or maybe something like that with FFT.

I'll try it! Thanks!

There was a project on here quite a few years ago when someone wanted a sign to illuminate when the sound in a school canteen got too loud.

After setting up the initial hardware they abandoned it after six months because they couldn’t get a reliable indication of what was too loud. It didn’t seem to be based on peak amplitude alone.

Tricky...