2010-03-15 158 views
6

嘿你Objective-C的bods。音頻/語音可視化

有誰知道我會如何去改變(轉換)基於從iPhone上的麥克風輸入圖像?

即當用戶對着麥克風講話時,圖像將發生脈衝或傾斜。

任何人都有任何想法,我有(基本上)是一個錄音應用程序。隨着語音輸入的提供,我只想要改變一些東西。我在一個示例項目中看到了它,但那不是UIImage。 [/編輯]

感謝你!

回答

8

蘋果爲此組合了一些很棒的框架! AVFoundation框架和CoreAudio框架將對您最有用。

獲取音頻等級信息AVAudioRecorder很有用。雖然它被用於錄音,但它也提供麥克風的電平數據。這將是如何大聲用戶在他對着電話大喊變形圖像基礎有用)

這裏是AVAudioRecorder蘋果文檔:AVAudioRecorder Class Reference

更詳細一點:

// You will need an AVAudioRecorder object 
AVAudioRecorder *myRecorderObject; 

// To be able to get levels data from the microphone you need 
// to enable metering for your recorder object 

[myRecorderObject prepareToRecord]; 
myRecorderObject.meteringEnabled=YES; 

// Now you can poll the microphone to get some levels data 

float peakPower = [myRecorderObject peakPowerForChannel:0]; 
float averagePower = [myRecorderObject averagePowerForChannel:0]; 

如果您想查看一個AVAudioRecorder對象如何用來獲取關卡數據的好例子,請查看tutorial

只要變形你的形象,這將取決於圖像庫。有很多可供選擇的和來自蘋果的一些偉大的。我對任何事情都不熟悉,所以可能會讓其他人回答。

祝你好運!

+1

如果您是在iPhone上使用麥克風的新手,請查看本教程: http://www.mobileorchard.com/tutorial-detecting-when-a-user-blows-into-the-mic/ – Jay 2010-03-15 16:14:20

+0

非常好,謝謝! – 2010-03-15 16:27:32