|
@@ -35,27 +35,34 @@ void PicBuf::AddData(iv::PicData xPicData)
|
|
|
mvectordata_ptr.push_back(xPicData);
|
|
|
mLastBufTime = xPicData.mnMsgTime;
|
|
|
|
|
|
- int i;
|
|
|
- bool bRemove = false;
|
|
|
- for(i=0;i<(int)(mvectordata_ptr.size());i++)
|
|
|
- {
|
|
|
- if(abs(mLastBufTime - mvectordata_ptr.at(i).mnMsgTime) > mBufTime)
|
|
|
- {
|
|
|
- bRemove = true;
|
|
|
- mvectordata_ptr.erase(mvectordata_ptr.begin() + i);
|
|
|
- i--;
|
|
|
- }
|
|
|
|
|
|
- }
|
|
|
- if(bRemove)
|
|
|
+ while(mvectordata_ptr.size()>30)
|
|
|
{
|
|
|
- while(mvectordata_ptr.size()>0)
|
|
|
- {
|
|
|
- if(mvectordata_ptr[0].mbSPSFrame)break;
|
|
|
- mvectordata_ptr.erase(mvectordata_ptr.begin());
|
|
|
- }
|
|
|
+// if(mvectordata_ptr[0].mbSPSFrame)break;
|
|
|
+ mvectordata_ptr.erase(mvectordata_ptr.begin());
|
|
|
}
|
|
|
|
|
|
+// int i;
|
|
|
+// bool bRemove = false;
|
|
|
+// for(i=0;i<(int)(mvectordata_ptr.size());i++)
|
|
|
+// {
|
|
|
+// if(abs(mLastBufTime - mvectordata_ptr.at(i).mnMsgTime) > mBufTime)
|
|
|
+// {
|
|
|
+// bRemove = true;
|
|
|
+// mvectordata_ptr.erase(mvectordata_ptr.begin() + i);
|
|
|
+// i--;
|
|
|
+// }
|
|
|
+
|
|
|
+// }
|
|
|
+// if(bRemove)
|
|
|
+// {
|
|
|
+// while(mvectordata_ptr.size()>0)
|
|
|
+// {
|
|
|
+// if(mvectordata_ptr[0].mbSPSFrame)break;
|
|
|
+// mvectordata_ptr.erase(mvectordata_ptr.begin());
|
|
|
+// }
|
|
|
+// }
|
|
|
+
|
|
|
mMutexBuf.unlock();
|
|
|
}
|
|
|
|