I had a rough time with my microphone last week on my Ubuntu fiesty (7.04).I burned my weekend hours to google it and the story had a happy ending.To my surprise,most of the good links buried under some useless stuff.So,I decided to post those links which helped me and hope would help people who are in need.
Here is the solution that solved my problem.Open your terminal and just copy and paste the following code(got from Ubuntu support site) to get the latest ALSA drivers which can fix.
wget
ftp://ftp.alsa-project.org/pub/driver
/alsa-driver-1.0.14.tar.bz2
tar -xjf alsa-driver-1.0.14.tar.bz2
cd alsa-driver-1.0.14
./configure
sudo make
sudo make install
But before trying above trick you can try one more.Double click on the volume icon on the panel.Then Edit>Preferences.Then make sure you have selected Microphone,Mic boost,Capture.Once you do this you can find new capture tab in the volume control panel.Here, make sure nothing is muted(no red x on microphone icon).In options tab make sure you selected Microphone as input source.
Third is editing esd.conf as follows.Type the following code in the terminal.
sudo gedit /etc/esound/esd.conf
Then edit the file like this.It worked for some people and I got this ubuntu forums.
[esd]
auto_spawn=1
spawn_options=-terminate -nobeeps -as 1
spawn_wait_ms=100
# default options are used in spawned and non-spawned mode
default_options=
If none of them seems to work , you can visit ubuntu forums where people discussed some other ways of activating microphone.Hope it works.