Goertzel

Goertzel

Hello all,

how to use Goertzel function to detect DTMF signal?
As source I have PCM data 48000Hz splitted into 40ms slices.
How to detect the key 1 (two tones 697Hz and 1209Hz) ?

 

4 posts / novo 0
Último post
Para obter mais informações sobre otimizações de compiladores, consulte Aviso sobre otimizações.

Please check file at samples: speech-codecs\codec\speech\td\src\usc_dtmf.c.

Please take a not that this is only sample and does not conforms to standard.

what about ipp Goertz function?

IppStatus ippsGoertz_16s_Sfs(const Ipp16s* pSrc, int len, Ipp16sc* pVal, Ipp32f rFreq, int scaleFactor)

what is the "rFreq" in my case?

Quote:

Sascha wrote:

what about ipp Goertz function?

IppStatus ippsGoertz_16s_Sfs(const Ipp16s* pSrc, int len, Ipp16sc* pVal, Ipp32f rFreq, int scaleFactor)

what is the "rFreq" in my case?

maybe someone need it, here is the answer:

//and you need scale factor 10
ippsGoertz_16s_Sfs(pBuffer, AudioSamplesPerFrame, &pVal_Low[0], (697.0f / 48000.0f), 10 );
ippsGoertz_16s_Sfs(pBuffer, AudioSamplesPerFrame, &pVal_High[0], (1209.0f / 48000.0f), 10 );

Deixar um comentário

Faça login para adicionar um comentário. Não é membro? Inscreva-se hoje mesmo!