直播live555 出现卡顿

自写MediaSubssion和Source
void H264FramedLiveSource::doGetNextFrame()
{
int popcount;

fFrameSize = ManStream.a[m];
m++;
if (fFrameSize > fMaxSize)  
{  
    fNumTruncatedBytes = fFrameSize - fMaxSize;  
    fFrameSize = fMaxSize;  
}  
else  
{  
    fNumTruncatedBytes = 0;  
} 

if (ManStream.myfifo.GetCount()>=fMaxSize)
{

    if (!ManStream.sended)
    {

        popcount = ManStream.myfifo.Pop(fTo,fMaxSize);

        ManStream.sended = true ;

    }


nextTask() = envir().taskScheduler().scheduleDelayedTask(10,(TaskFunc*)FramedSource::afterGetting, this);


return;

}

直通预览卡顿有三种原因:
1. 来自于视频源的卡顿;
优化视频采集和打包发送部分;

  1. 来自于网络传输的卡顿;
    查下网络环境,如果是公网的话需要做特殊处理;

  2. 来自于播放器的卡顿;
    注意播放器的缓存;

另外:你是使用什么编码芯片或者编码器呢,使用什么编码??还有播放器??