2010-06-16 4 views
2

녹음 된 오디오 파일 (MP3)이있는 경우 순수 파이썬으로 기록 된 DTMF 톤을 추출하는 방법이 있습니까?Python에서 DTMF 구문 분석 (추출)

은 (순수 파이썬을 사용할 수없는 경우, 자바는 너무 괜찮습니다. 구글 AppEngine에 실행 할 수 있어야되는 점)

답변

6

먼저 지정된 비트 심도와 샘플링 속도로 원시 샘플의 압축되지 않은 형식으로 MP3를 디코딩해야합니다. 그런 다음 각 DTMF 톤을 구성하는 주파수를 찾습니다. FFT가 이것을 위해 사용될 수 있지만, Canonnical 알고리즘은 The Goertzel Algorithm입니다. 변환을하기 전에 신경 쓰는 주파수를 알고 있다는 사실을 이용합니다 : http://en.wikipedia.org/wiki/Goertzel_algorithm

DTMF를 탐지하기위한 몇 가지 무료 python 코드가 있습니다 나는 그것을 자신을 시도하지 않은 불구하고 Goertzel를 사용하여 살펴 보도록 :

http://johnetherton.com/projects/pys60-dtmf-detector

1

데이터에 FFT를 수행. 두 가지 톤의 주파수에서 스파이크를 얻어야합니다.

+0

나는 WAV 파일에 대한 언급이 방법을 보았다. MP3에도 잘 맞을 것입니까? – yydl

+0

물론 MP3를 먼저 해독해야하지만, 일단 해보면 데이터의 출처가 (다소간) 관련성이 없어집니다. –

관련 문제