private static extern uint VSNET_ClientStartVoiceCom(uint lUserID,ref AudioTalkParam pAudioParam,PVoiceTalkCallback fVoiceTalkCallback,uint dwUser);
/// <summary> /// 功能:开始语音对讲 /// </summary> /// <param name="IUserID">Login的返回值</param> /// <param name="callback">回调音频数据函数</param> /// <param name="dwUser">用户数据</param> /// <returns>返回值:-1表示失败,其他值作为其它函数的参数</returns> public int StartVoiceCom(int IUserID, SDKPlugInData.fVoiceDataCallBack callback, int dwUser) { ILoginData loginData = loginDataList.FindByLoginDataHandle(IUserID); if (IUserID != -1 && loginData != null) { AudioTalkParam audioTalkParam = new AudioTalkParam(); audioTalkParam.nChannels = 1; audioTalkParam.nCtrlPort = 5656; audioTalkParam.nLiveInterval = 30; audioTalkParam.nSampleBits = 16; audioTalkParam.nSampleRate = 8000; audioTalkParam.szAudioCodec = "G711"; audioTalkParam.szDVSIP = loginData.DeviceIP; audioTalkParam.szUserName = "******"; audioTalkParam.szPassWord = "******"; audioTalkParam.szStreamName = "a0"; uint IVoiceComHandle = VSNET_ClientStartVoiceCom(loginData.LoginHandle, ref audioTalkParam, pVoiceTalkCallback, (uint) dwUser); if (Convert.ToInt32(IVoiceComHandle) == 0) { return -1; } else { return Convert.ToInt32(IVoiceComHandle); } } else { return -1; } }