spandsp tone_detect.c goertzel perodogram



Hi,

Let me explain the situation, I am trying to differ beep from
different answering machine.
The information about the answering machine beep frequency is given
below.

[T-Mobile]
frequency=1250 ; frequency in Hz
energy=-30 ; energy in db
duration=250 ; duration in milisecond

[Verizon]
frequency=1500 ; frequency in Hz
energy=-20 ; energy in db
duration=550 ; duration in milisecond


[Sprint/Nextel]
frequency=1400 ; frequency in Hz
energy=-30 ; energy in db
;duration=600 ; duration in milisecond
duration=120 ; duration in milisecond

[AT&T/Cingular]
frequency=1700 ; frequency in Hz
energy=-20 ; energy in db
duration=300 ; duration in milisecond

I tried with goertzel algorithm (I used the implementation from
spandsp library).
It gave me farely close values of energy [T-Mobile], [Verizon] and
[Sprint/Nextel].
It was the [Sprint/Nextel] that I was testing. Then I tested Verizon.
I did not find a
way to detect the amds.

Now I have a few questions,

1. what does they mean by -20db and what is its relation with
goertzel energy.

2. how can I use the periodogram functions of spandsp library, is
there any chance
that it may work for me ?

3. Is there any relation of duration of samples and goertzel
algorithm. (I get frames
of 20ms each, with 160 samples).

And please suggest me what to do to succeed this project.

-- Thanks
Kamanashis Roy

.



Relevant Pages