1
由於來自純C#背景,因此我對某些Objective C語法有點麻煩。我正在玩音頻隊列,我試圖設置InputAudioQueue屬性EnableLevelMetering並獲取CurrentLevelMeterDB屬性。我發現一對夫婦例子目的C.MonoTouch:幫助將目標C的幾行代碼轉換爲C#
設置屬性:
UInt32 enabledLevelMeter = true;
AudioQueueSetProperty(queue,kAudioQueueProperty_EnableLevelMetering,&enabledLevelMeter,sizeof(UInt32));
獲取值:
AudioQueueLevelMeterState levelMeter;
UInt32 levelMeterSize = sizeof(AudioQueueLevelMeterState);
AudioQueueGetProperty(queue,kAudioQueueProperty_CurrentLevelMeterDB,&levelMeter,&levelMeterSize);
Float32 peakDB = levelMeter.mPeakPower;
Float32 averageDB = levelMeter.mAveragePower;
的API reference爲AudioQueue是很小的。我不確定在C#中爲以下值使用什麼。
public bool SetProperty (AudioQueueProperty property, int dataSize, IntPtr propertyData)
public IntPtr GetProperty (AudioQueueProperty property, out int size)
有人能幫我一個嗎?謝謝。
真棒!謝謝米格爾,你統治! – robertweis 2011-02-14 04:25:17