Skip to content

Commit 3ac0a00

Browse files
committed
modify:rtcp protocol process
1 parent 8c27b77 commit 3ac0a00

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

XEngine_Source/XEngine_ServiceApp/XEngine_StreamMediaApp/StreamMedia_PullStream/PullStream_ClientRtsp.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ bool PullStream_ClientRtsp_RTCPProcess(LPCXSTR lpszClientAddr, XSOCKET hSocket,
1616
{
1717
int nPos = 0;
1818
RTCPPROTOCOL_RTCPHDR st_RTCPHdr = {};
19-
RTCPProtocol_Parse_Header(&st_RTCPHdr, lpszMsgBuffer, nMsgLen);
19+
RTCPProtocol_Parse_Header(lpszMsgBuffer, nMsgLen, &st_RTCPHdr);
2020
nPos += sizeof(RTCPPROTOCOL_RTCPHDR);
2121

2222
int nListCount;
2323
RTCPPROTOCOL_RTCPRECVER** ppSt_ListRecvInfo;
24-
RTCPProtocol_Parse_Recver(&ppSt_ListRecvInfo, &nListCount, &st_RTCPHdr, lpszMsgBuffer + nPos, nMsgLen - nPos);
24+
RTCPProtocol_Parse_Recver(lpszMsgBuffer + nPos, nMsgLen - nPos, &st_RTCPHdr, &ppSt_ListRecvInfo, &nListCount);
2525
nPos += sizeof(RTCPPROTOCOL_RTCPRECVER);
2626
//后续是否还有数据
2727
if (nMsgLen - nPos > 0)
@@ -31,14 +31,14 @@ bool PullStream_ClientRtsp_RTCPProcess(LPCXSTR lpszClientAddr, XSOCKET hSocket,
3131
int nListCount = 0;
3232
STREAMMEDIA_RTCPPROTOCOL_SDESINFO** ppSt_ListSdeser;
3333

34-
RTCPProtocol_Parse_Header(&st_RTCPHdr, lpszMsgBuffer + nPos, nMsgLen - nPos);
34+
RTCPProtocol_Parse_Header(lpszMsgBuffer + nPos, nMsgLen - nPos, &st_RTCPHdr);
3535
nPos += sizeof(RTCPPROTOCOL_RTCPHDR);
3636

3737
if (ENUM_STREAMMEDIA_RTCPPROTOCOL_PACKET_TYPE_SDES == st_RTCPHdr.byPT)
3838
{
3939
nPos -= sizeof(uint32_t);
4040
}
41-
RTCPProtocol_Parse_Sdeser(&ppSt_ListSdeser, &nListCount, &st_RTCPHdr, lpszMsgBuffer + nPos, nMsgLen - nPos);
41+
RTCPProtocol_Parse_Sdeser(lpszMsgBuffer + nPos, nMsgLen - nPos, &st_RTCPHdr, &ppSt_ListSdeser, &nListCount);
4242
BaseLib_OperatorMemory_Free((XPPPMEM)&ppSt_ListSdeser, nListCount);
4343
}
4444
/*

XEngine_Source/XEngine_ServiceApp/XEngine_StreamMediaApp/StreamMedia_PullStream/PullStream_ClientWebRtc.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,16 @@ bool PullStream_ClientProtocol_Handle(LPCXSTR lpszClientAddr, XSOCKET hSocket, L
9797
}
9898
else if ((lpszMsgBuffer[0] >> 6 == 2))
9999
{
100-
if ((lpszMsgBuffer[1] >= 200) && (lpszMsgBuffer[1] <= 204))
100+
if ((lpszMsgBuffer[1] >= 200) && (lpszMsgBuffer[1] <= 207))
101101
{
102102
//RTCP
103+
RTCPPROTOCOL_RTCPHDR st_RTCPHdr = {};
104+
if (!RTCPProtocol_Parse_Header(lpszMsgBuffer, nMsgLen, &st_RTCPHdr))
105+
{
106+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("RTC客户端:%s,RTCP协议解析失败,大小:%d,错误码:%lX"), lpszClientAddr, nMsgLen, RTCPProtocol_GetLastError());
107+
return false;
108+
}
109+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("RTC客户端:%s,请求的RTCP协议处理成功,请求处理的协议:%d"), lpszClientAddr, st_RTCPHdr.byPT);
103110
}
104111
else
105112
{

0 commit comments

Comments
 (0)