Pages: [1]   Go Down
Author Topic: Tapping in to the audio jack on my sound system  (Read 1084 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I want to be able to somehow connect an arduino to an audio from my sound system etheir by mic or tapping into it before the audio goes into the sound system to be amplified. Which is possible to do and if both work which would be more acurate to pick out lows, mids and highs so I can have some LEDs be made brighter or dimmer depending on which frequency. If needed I could do something like make the led brighten if some thing is played low is played but is there a way to also detect the volume of the pitch. So instead of more pitches being played to brighten it but also to have the volume of it integrated as well. So some LEDs would show up more than others at different times of a song?

And help is greatly appreciated and who ever finds this helpful when I find the answer.
Logged

New England
Offline Offline
Sr. Member
****
Karma: 7
Posts: 295
Natural Semiinductor
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Direct wiring from the output jack is better than a mic. What equipment do you have?
Logged

I am going to get going.

Offline Offline
Edison Member
*
Karma: 23
Posts: 1171
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
so I can have some LEDs be made brighter or dimmer depending on which frequency
There are plenty of examples for dimming LEDs.  I suggest you start with that, before working on frequency separation.

Then,  you might want to make something where the LED gets brighter with loudness, before working on the frequency stuff.

Quote
to pick out lows, mids and highs...
You are talking about a "color organ" (AKA "light organ").   In the 1970's you could buy a color organ in the audio/video department of just about any department store...  They looked like wood floor-standing speakers, except with a translucent plastic front instead of grill cloth.

 You can also look-up "spectrum analyzer".   You've probably seen a spectrum analyzer somewhere...  If you use Winamp, there's one built-into Winamp.  A spectrum analyzer is essentially a set of "meters", with one meter for each frequency band.  If you search, you can find examples of spectrum analyzers built with the Arduino.

Frequency separation can be done in hardware with filters, or in software with software-filters or with FFT.

Hardware filters are tricky, and you need at least one op-amp stage per filter band and it will require lots of parts.   But, SparkFun sells a nice MSGEQ7 chip that has 7 filters built-in, and circuitry that converts the signals into a DC signal for the Arduino's ADC.   That's the easiest way to do it, and you don't have to use all 7 bands, or you can combine the bands in software.  (They call it an equalizer chip but really it's a spectrum analyzer chip, meant to be used with an equalizer, I presume.)

DSP (digital signal processing = FFT or filters in software) is rather involved (not for beginning programmers), but there is an FFT library for the Arduino, so you don't have to write all of the code from scratch.

Quote
I want to be able to somehow connect an arduino to an audio from my sound system etheir by mic or tapping into it before the audio goes into the sound system to be amplified.
A line-level signal (like the analog RCA outputs on your CD player or DVD player), or headphone output is around 1V.   That's in the right range for the Arduino.  (Of course, headphone level varies a lot with volume).

A microphone has an output around 10mV (depending on the loudness of the sound, of course).  So, the signal would need to be amplified.  Microphones do not have "flat" frequency response, especially cheap ones, but you can pick-up the full frequency range from low-to-high.  If the mic signal is a little weak in the high or low frequencies, you can compensate in software.

One BIG issue you need to be aware of, is that the Arduino's input cannot handle the nagative-half of an AC audio waveform.  The typical solution is to bias the input at 2.5V (with two equal-value resistors and a capacitor to isolate the bias from your audio system.   

Sparkfun makes a little microphone board with an electret mic, an amplifer, and a bias-circuit.
 
Quote
I could do something like make the led brighten if some thing is played low is played but is there a way to also detect the volume of the pitch. So instead of more pitches being played to brighten it but also to have the volume of it integrated as well. So some LEDs would show up more than others at different times of a song?
What????     Well, let's say you have 3 numbers representing the loudness of the lows, mids, and highs.   Once you have those 3 numbers you can do anything you want in your sketch!    If you want some randomness, you can do that...  If you want the red to represent the bass sometimes, and to represent the highs at other times, you can do that, etc.  If you want only one LED on at a time, representing the current dominating frequency-band, you could do that...


One trick I use with lighting effects is to keep a moving-average of the volume over about 20 seconds.   That way, my software can re-calibrate automatically for loud or quiet songs, or if someone changes the volume.   (Look-up the "Smoothing Example" if you want to do that.)   If I was making a spectrum analyzer of color organ effect, I'd keep separate averages for each frequency band for lots of "action" in each band.   You wouldn't want to do that with a real spectrum analyzer (because it would totally muck-up the calibration) but for a lighting effect, it would be OK. 

« Last Edit: August 19, 2013, 04:25:39 pm by DVDdoug » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

well im going to figure out what i want to do is possible before i spend to much testing on buying things and i will have the input to the arduino and it will seperate and do its thing(hopefully fast enough) and output what is happening with the music as long as its unde .05 of a second. i will be using pwm on a rgb led too so i have options here to change the color of the led with what it does.
Logged

Pages: [1]   Go Up
Jump to: