純音測聽——實現定製固定分貝、頻率的純音

 

近期搞了一個純音測聽,所謂純音測聽就是醫學領域測雙耳聽力最小聽力的一種檢測方法。需求是在Android手機端搞,但是有沒有提供固定頻率和分貝的聲音。所以聲音源方面是代碼生成。

 

那麼問題來了。如何用代碼生成指定分貝和頻率的純音那?

 

這就要追尋聲音的本源了。生活中我們聽到的聲音是一系列不同頻率不同分貝聲音的組合體。這裏可以成爲複合音,而測試需要使用純音,所謂純音就是固定頻率的聲波。

聲波,聲波,So ,聲音是波形的。數學中sin 、cos 函數是波形的。聲音可以用正弦波表示,其實所有聲音都是有正弦波組成,只不過純音是固定頻率的正弦波。

而在聲音存儲過程中,聲音被記錄成一組數據值。而這組數據值通過播放器播放出來就有了指定的分貝和頻率。

 

結合網上資料總結實現思路:用sin 函數搞出基本正弦波。然後調節振幅,改變頻率。用數組存起來,然後通過Android 播放類AudioTrack 播放出來。就實現聲音的定製了。

 

Github項目地址:

https://github.com/shaoshuai904/SoundMeter

 

 

 

 

 

 

發佈了47 篇原創文章 · 獲贊 60 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章