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.
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.
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.
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.