Android移動端音視頻的快速開發教程(十)

4.7. 系統設置 4.7.1. 枚舉本地視頻採集設備 INT EnumVideoCapture(CHAR** lpDeviceName, INT& dwDeviceNum); 功能:枚舉本地視頻採集設備 返回值:0表示成功,不然爲出錯代碼 參數: lpDeviceName 視頻設備名稱,可爲空,表示只獲取設備數量; dwDeviceNum 視頻設備數量; 備註: 該方法將會在內部分配緩衝區,外部使用完成以後,必需手工釋放這些緩衝區,不然會形成內存泄露,因爲內部採用了「GlobalAlloc」來分配高端內存,故外部須要調用「GlobalFree」來釋放,而不能是delete或free方法,具體使用方法請參考Demo程序中的源代碼。 4.7.2. 選擇指定的視頻採集設備 INT SelectVideoCapture(STRING szCaptureName); 功能:選擇指定的視頻採集設備 返回值:0表示成功,不然爲出錯代碼 參數: szCaptureName 所獲取設備的名稱; 第 44 頁 共 51 頁 AnyChat for Android SDK 開發手冊 佰銳科技 版權全部 備註 當用戶有多個視頻採集設備(USB攝像頭、虛擬攝像頭、採集卡等)時,能夠經過該方法選用指定的視頻採集設備。 4.7.3. 獲取當前視頻採集設備 INT GetCurVideoCapture(CHAR* lpDeviceName, INT Len); 功能:獲取當前使用的視頻採集設備名稱 返回值:0表示成功,不然爲出錯代碼 參數: lpDeviceName 保存視頻採集設備名稱的緩衝區; dwLen 保存名稱的緩衝區長度; 備註 緩衝區由外部分配,並經過dwLen參數傳遞緩衝區的大小。 4.7.4. 枚舉本地音頻採集設備 INT EnumAudioCapture(CHAR** lpDeviceName, INT& dwDeviceNum); 功能:枚舉本地音頻採集設備 返回值:0表示成功,不然爲出錯代碼 參數: lpDeviceName 音頻設備名稱; dwDeviceNum 音頻設備數量; 備註 該方法將會在內部分配緩衝區,外部使用完成以後,必需手工釋放這些緩衝區,不然會形成內存泄露,因爲內部採用了「GlobalAlloc」來分配高端內存,故外部須要調用「GlobalFree」來釋放,而不能是delete或free方法,具體使用方法請參考Demo程序中的源代碼。 第 45 頁 共 51 頁 AnyChat for Android SDK 開發手冊 佰銳科技 版權全部 4.7.5. 選擇指定的音頻採集設備 INT SelectAudioCapture(STRING szCaptureName); 功能:選擇指定的音頻採集設備 返回值:0表示成功,不然爲出錯代碼 參數: szCaptureName 所獲取設備的名稱; 備註 當用戶有多個音頻採集設備(板載聲卡、USB聲卡等)時,能夠經過該方法選用指定的音頻採集設備。 4.7.6. 獲取當前音頻採集設備 INT GetCurAudioCapture(CHAR* lpDeviceName, INT Len); 功能:獲取當前使用的音頻採集設備 返回值:0表示成功,不然爲出錯代碼 參數: lpDeviceName 保存音頻採集設備名稱的緩衝區; dwLen 保存名稱的緩衝區長度; 備註: 緩衝區由外部分配,並經過dwLen參數傳遞緩衝區的大小。 4.7.7. 獲取音頻設備的當前音量 INT AudioGetVolume(AudioDevice device, INT& dwVolume); 功能:獲取指定音頻設備的當前音量 返回值:0表示成功,不然爲出錯代碼 參數: device 設備類型,定義爲: 第 46 頁 共 51 頁 AnyChat for Android SDK 開發手冊 佰銳科技 版權全部 AD_WAVEIN = 0, ///< 輸入設備:Mic AD_WAVEOUT = 1, ///< 輸出設備:Wave dwVolume 保存該設備的當前音量,取值範圍:0~100; 備註 根據設備類型(device)參數的不一樣,能夠獲取放音設備(WaveOut)和錄音設備(WaveIn)的當前音量大小。 4.7.8. 設置指定音頻設備的音量 INT AudioSetVolume(AudioDevice device, INT Volume); 功能:設置指定音頻設備的音量 返回值:0表示成功,不然爲出錯代碼 參數: device 設備類型,定義爲: AD_WAVEIN = 0, ///< 輸入設備:Mic AD_WAVEOUT = 1, ///< 輸出設備:Wave dwVolume 須要設置的音量,取值範圍:0~100,值越大,音量越大; 備註 根據設備類型(device)參數的不一樣,能夠調節放音設備(WaveOut)和錄音設備(WaveIn)的音量大小。 4.7.9. SDK內核參數設置(整形值) int SetSDKOptionInt(int optname, int optvalue); 功能:SDK內核參數設置(整形值參數) 返回值:0表示成功,不然爲出錯代碼 參數: optname 內核參數名稱; optval 設置的參數值 第 47 頁 共 51 頁 AnyChat for Android SDK 開發手冊 佰銳科技 版權全部 備註 能夠經過該方法對AnyChat Core SDK內部的參數進行設置,實現特殊的功能要求。 目前提供的可設置內核參數名稱代碼見WIN32平臺SDK相關定義。 4.7.10. SDK內核參數設置(字符串值) int SetSDKOptionString(int optname, String optvalue); 功能:SDK內核參數設置(字符串值參數) 返回值:0表示成功,不然爲出錯代碼 參數: optname 內核參數名稱; optval 設置的參數值 備註 能夠經過該方法對AnyChat Core SDK內部的參數進行設置,實現特殊的功能要求。 目前提供的可設置內核參數名稱代碼見WIN32平臺SDK相關定義。 4.7.11. SDK內核參數狀態查詢 int GetSDKOptionInt(int optname); 功能:SDK內核參數狀態查詢(整形值) 返回值:返回查詢結果 參數: optname 內核參數名稱; 備註 能夠經過該方法對AnyChat Core SDK內部的參數進行狀態查詢,獲取當前的設置。 String GetSDKOptionString(int optname); 第 48 頁 共 51 頁 AnyChat for Android SDK 開發手冊 佰銳科技 版權全部 功能:SDK內核參數狀態查詢(字符串) 返回值:返回查詢結果 參數: optname 內核參數名稱; 備註 能夠經過該方法對AnyChat Core SDK內部的參數進行狀態查詢,獲取當前的設置。
相關文章
相關標籤/搜索