Jak mogę wykryć, kiedy użytkownik wdmuchuje mikrofon urządzenia? Będzie to następnie wykorzystane do uruchomienia akcji przez aplikację.
Odpowiedzi:
8 dla odpowiedzi № 1Zadanie polegające na wykrywaniu, kiedy użytkownik wpada domikrofon można podzielić na dwie części: (1) pobierając sygnał z mikrofonu i (2) nasłuchując dźwięku dmuchania. Szum / dźwięk osoby dmuchającej do mikrofonu składa się z dźwięków o niskiej częstotliwości. Użyjemy filtra dolnoprzepustowego, aby zredukować dźwięki o wysokiej częstotliwości dochodzące z mikrofonu; kiedy poziom filtrowanego sygnału wzrośnie, będziemy wiedzieć, że ktoś dmucha w mikrofon.
Źródło: http://mobileorchard.com/tutorial-detecting-when-a-user-blows-into-the-mic/
EDYTOWAĆ A oto trochę SoundMeter klasa dla Androida: http://code.google.com/p/android-labs/source/browse/trunk/NoiseAlert/src/com/google/android/noisealert/SoundMeter.java?r=2
0 dla odpowiedzi nr 2
Zrobiłbym FFT i porównałbym spektrumz bardziej rozsądnymi dźwiękami. Cios prawdopodobnie będzie przypominał biały szum. Zanim zobaczyłem spektrum ciosu, mowy i białego szumu, nie mam pojęcia, jak odróżnić się od siebie.