[Help]使用jrtplib接收RTP流,数据包长度感觉有有关问题.

[Help]使用jrtplib接收RTP流,数据包长度感觉有问题...
C/C++ code
发送和接收用的是一个rtpSession对象,发送RTP包没有问题,但是接收有问题.
DWORD WINAPI RecvRtpThread(LPVOID param)
{
    int len;
    RTPPacket *pack;    
    
    while(1)
    {      
        m_rtpAsession.PollData(); //接收RTP数据
        if (m_rtpAsession.GotoFirstSourceWithData()) //检索RTP数据源
        {              
            do  //递归搜索RTP包中的数据
            {    
                while ((pack = m_rtpAsession.GetNextPacket()) != NULL)
                {
                    len = 0;  
                    //每个包的长度都是: len =4423856
                 //感觉数据包长度有问题... 
                    len = pack->GetPayloadLength(); 
             
                    if(len > SIZE_AUDIO_PACKED2 /*|| pack->GetExtendedSequenceNumber() <= seq*/)
                        continue; 
                    
                    char* buf = new char[SIZE_AUDIO_PACKED2];
                    memcpy(buf, (char*)pack->GetPayload(), len);
                    //memcpy(&buf,(char*)pack->GetPayload(),len);

                    EnterCriticalSection(&cs_cli_Info); 
                    {
                        va_g729a_init_decoder();                        
                        char *pin  =  new char[SIZE_AUDIO_PACKED2];
                        char *pout =  new char[SIZE_AUDIO_FRAME2];
                        memset(pin,  0, SIZE_AUDIO_PACKED2); //60
                        memset(pout, 0, SIZE_AUDIO_FRAME2);  //960
                        memcpy(pin, buf, len);

                        va_g729a_decoder((BYTE*)pin,    (short*)(pout),0); //使用G729库解码                     
                        //va_g729a_decoder((BYTE*)pin+10, (short*)(pout+160),0);
            
                        char *str=new char[SIZE_AUDIO_FRAME2]; //960字节
                        if(str==NULL)
                        {
                            str=new char[SIZE_AUDIO_FRAME2];
                        }
                        memset(str,0,SIZE_AUDIO_FRAME2);
                        memcpy(str, pout,SIZE_AUDIO_FRAME2);
                        
                        EnterCriticalSection(&cs_play_queue);            
                        wave_play_Data.push(str);  //需要播放的数据块, 放入消息队列中
                        LeaveCriticalSection(&cs_play_queue);

                        delete []pout;
                        delete []pin;
                    }
                    LeaveCriticalSection(&cs_cli_Info);
                    delete pack;
                } //while ((pack = m_rtpAsession.GetNextPacket()) != NULL)
            } while (m_rtpAsession.GotoNextSourceWithData()); 
        }   //if (m_rtpAsession.GotoFirstSourceWithData()) 
        Sleep(1);
    }   //while(1)
    return 0;
}


------解决方案--------------------
发送数据的时候,结束符是不是没有带呀。