나는 마이크를 사용하여 소리를 들어야하는 애플 리케이션을 개발해야한다. 그리고 화재 경보 음이 감지 될 때마다 앱은 화재 경보가 있음을 사용자에게 알려야합니다. 이를 위해 나는 가능한 두 가지 해결책을 고민 중입니다안드로이드 어떻게 화재 경보기 소리를 감지하는
1 :) Speech To Text 인식기를 사용하여 연기 경보 음을 텍스트로 변환하고 그 텍스트를 저장하십시오. 그리고 다음에 연기 경고음이 수신 될 때마다 동일한 Speech To Text 인식기가 해당 텍스트로 변환하고 해당 텍스트가 저장된 텍스트와 일치하면 나는 그것이 경보 음이라고 가정합니다.
2 :) 경보 음을 저장하고 파형을 비교하여 녹음 된 음파를 저장 음과 일치시킵니다. 이것은 내가이 분야의 전문가가 아니기 때문에 나의 가정 일뿐입니다.
지금까지 나는이 사운드 매칭 기법이 audio fingerprinting
에 의해 수행되었음을 알았습니다. 즉, 각 오디오마다 고유 한 지문이 있고 두 개의 오디오 지문을 일치시킬 수 있다면 동일한 것으로 간주됩니다.
나는 최근에 다음 링크
http://www.royvanrijn.com/blog/2010/06/creating-shazam-in-java/
http://masl.cis.gvsu.edu/2012/01/25/android-echoprint/
여전히 모든를 파악하려고 내 문제의 해결책이다에 더 가까운 것 같다https://code.google.com/p/musicg/
하지만 하나를 발견했다 당신의 모든 도움이 널리 인정 될 것입니다.
덕분에 답장을, 당신의지도를 통해 이동합니다. 그래서 저는 그것을 처음부터 구현하고 모든 원리를 알아야합니다. 이미 구현 된 타사 도구가 없습니까? 즉 음파에서 DFT/FFT를 실행합니다. 이것의 주된 이유는 수학에서별로 좋지 않다는 것입니다. – laaptu
라이브러리가 많아서 DSP (Digital Signal Processing) 라이브러리를 찾는다. 또한 수학을 두려워한다면 - FFT에 관한이 기사와 장면 뒤에서하는 일을 읽으십시오 : http://betterexplained.com/articles/an-interactive-guide-to-the-fourier-transform/ –
도움을 주셔서 감사합니다. Google에 최대한 빨리 알려주고 해결책을 찾으면 기꺼이 여기에 게시 할 것입니다. – laaptu