Commit ec679006 by xiongziliang

优化不含B帧时的dts生成性能

parent 9fa6e9d8
......@@ -122,11 +122,16 @@ bool DtsGenerator::getDts(uint32_t pts, uint32_t &dts){
}
bool DtsGenerator::getDts_l(uint32_t pts, uint32_t &dts){
if(_sorter_max_size == 1){
//没有B帧
dts = pts;
return true;
}
if(pts > _last_max_pts){
if(!_sorter_max_size && _frames_since_last_max_pts && _count_sorter_max_size++ > 0){
_sorter_max_size = _frames_since_last_max_pts;
_dts_pts_offset = (pts - _last_max_pts) / 2;
InfoL << _sorter_max_size << " " << _dts_pts_offset;
}
_frames_since_last_max_pts = 0;
_last_max_pts = pts;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论