From ec679006658002a62cb484b3d169a7b4d234eb76 Mon Sep 17 00:00:00 2001 From: xiongziliang <771730766@qq.com> Date: Tue, 14 Jan 2020 10:06:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=B8=8D=E5=90=ABB=E5=B8=A7?= =?UTF-8?q?=E6=97=B6=E7=9A=84dts=E7=94=9F=E6=88=90=E6=80=A7=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Common/Stamp.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Common/Stamp.cpp b/src/Common/Stamp.cpp index 3a0ed5bf..1c037d32 100644 --- a/src/Common/Stamp.cpp +++ b/src/Common/Stamp.cpp @@ -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;