jrtp发送音频数据的问题
我发送音频数据是通过录制音频后发送消息
::PostMessage(m_hParentWnd,WM_USER_DATA,(DWORD)pHdr->lpData,pHdr->dwBytesRecorded);
传给对话框,消息响应函数如下:
LRESULT CAudioInTestDlg::SendData(WPARAM wParam, LPARAM lParam)
{
//发送数据
unsigned char buf[4096];
memcpy(buf,(unsigned char*)wParam,lParam);
int status;
status=G::Socket.SendPacket((void*)buf,sizeof(buf),0,false,10);
//status=G::Socket.SendPacket((void *)"123",3,0,false,10);
//如果用上面这句是没错的,但是发送音频数据时CheckError(status)出错
G::CheckError(status);
CString str;
str.Format("正在发送第 %d 批音频数据;数据长度为%d!",i,lParam);
SetDlgItemText(IDC_TEXT,str);
i++;
return 0;
}
程序编译是没问题的
我感觉应该是传过来的wParam音频数据转换成char[]时出现问题,还是SendPacket发送数据有格式要求啊!
哪位大神帮忙看看啊这是怎么回事啊!
[解决办法]
PostMessage(m_hParentWnd,WM_USER_DATA,(DWORD)pHdr->lpData,pHdr->dwBytesRecorded);
pHdr->lpData这里会被下一次的数据覆盖么