2012-03-03 168 views
4

我想創建一個應用程序,它會響應「拍手」聲音。Android聲音驗證

意思是,如果我把我的手機放在我的房間的某個地方,並且如果拍手它會開始響起。

我想知道如何比較兩個聲音[進入的拍手聲音]和已存儲的拍手聲音?

我想我需要創建一個服務,它將繼續通過移動麥克風收聽,並檢查傳入的聲音。

[如果您認爲此應用程序的其他方法是好的/更好的,那麼請建議也。] 請大家任何指針或任何幫助將非常感激。


感謝您的快速響應。

正如我創建了一個服務,它將連續記錄來自麥克風的聲音,我應該使用哪個類來記錄聲音MediaRecorder/AudioRecord。

其他要求就像用戶可以自己錄製自己定製的音樂一樣,找到自己的手機。 因此,例如:如果用戶記錄一些隨機聲音,將存儲在應用程序中。

現在再次用戶播放相同的聲音,找到他們的手機,然後我將如何比較當前播放的聲音與以前存儲的聲音?

問候。

回答

2

您可能需要在輸入上查看諸如傅立葉變換之類的東西。如果您試圖將一種聲音與另一種聲音區分開來,那麼您確實需要分析聲音的頻率成分,而不是其幅度。然後,您可以通過識別不同頻率峯值的幅度來進行某種匹配,以嘗試區分一個聲音與另一個聲音。

+0

您好,感謝您的幫助,我想知道,因爲我正在創建一項服務,可以連續錄製麥克風的聲音,我應該使用什麼來錄製聲音MediaRecorder或AudioRecorder,哪個好? – user1246979 2012-03-04 19:42:43

+0

抱歉,我沒有任何android音樂庫的使用經驗。 – Tim 2012-03-04 19:44:58

+1

我建議你使用'AudioRecorder',因爲原始輸出數據很容易得到。本文給你一些提示和鏈接如何做到這一點:http://netscale.cse.nd.edu/twiki/pub/Main/Projects/Analyze_the_frequency_and_strength_of_sound_in_Android.pdf – SecStone 2012-03-05 19:06:41