0
我是新來的iOS編程,我在這裏找到了一些代碼玩耍:http://code.google.com/p/ios-coreaudio-example/操縱數據
基本上我從麥克風輸入獲得的路由和它直接到揚聲器/耳機。但是,我想在揚聲器播放之前操作音頻。
我想訪問和操作類型爲void *
的mData,我想我必須將它轉換爲其他東西。
現在,這裏是我的代碼:
SInt16* samples = (SInt16*)(tempBuffer.mData); //cast to something usable
for (int i = 0; i < tempBuffer.mDataByteSize; i++)
{
NSLog(@"%@", *(samples+i));
}
我甚至不知道什麼是通過指針來訪問數據的最佳方式。我有一些來自學校的C++指針的使用經驗,但我不確定它在Objective-C中是否有任何不同(我只是通過此代碼獲得EXC_BAD_ACCESS)。
謝謝。
好吧,我想我現在有。 'mFormatFlags = kAudioFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked;' 所以我使用'int32_t'作爲數據。謝謝:) – Baldur 2011-06-06 08:19:11
我剛剛爲我的項目發佈了另一個問題。也許你也有答案? :) http://stackoverflow.com/questions/6249491/an-algorithm-for-inverting-a-soundwave – Baldur 2011-06-06 08:41:14