<div dir="ltr"><div dir="ltr"><font face="arial, helvetica, sans-serif">Hi Yang,</font><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">> <span style="color:rgb(0,0,0);white-space:pre-wrap">While I'm using av_read_frame to extract frames from some rtsp stream from IP cameras, the dts/pts of the next frame occasionally will be smaller than the previous frames.</span></font></div><div><font color="#000000" face="arial, helvetica, sans-serif"><span style="white-space:pre-wrap">Currently I am facing the same problem.</span></font></div><div><span style="color:rgb(0,0,0);white-space:pre-wrap"><font face="arial, helvetica, sans-serif"><br></font></span></div><div><font face="arial, helvetica, sans-serif"><span style="color:rgb(0,0,0);white-space:pre-wrap">>  </span><span style="color:rgb(0,0,0)">Is it a bug of libav or a P frame or maybe there's a bug in the IP cameras' rtsp implementation?</span></font></div><div><font face="arial, helvetica, sans-serif"><span style="color:rgb(0,0,0)">I doubt this being a bug with libav, but I can not tell if it is a bug in the IP cameras or something inherited from the rtsp protocol itself.</span></font></div><div><font face="arial, helvetica, sans-serif"><span style="color:rgb(0,0,0)"><br></span></font></div><div><font face="arial, helvetica, sans-serif"><span style="color:rgb(0,0,0)">> </span></font><span style="color:rgb(0,0,0);font-family:sans-serif">then I should discard the consequent frames with smaller dts when I mux it to avoid non increasing dts, should I?</span></div>Currently my solution to this problem does exactly this, but ffmpeg(the tool) uses other solution, which is to modify the pts/dts values. [ <a href="https://github.com/FFmpeg/FFmpeg/blob/master/fftools/ffmpeg.c#L782">https://github.com/FFmpeg/FFmpeg/blob/master/fftools/ffmpeg.c#L782</a> ]</div><div>My current solution works fine, but I will try the one ffmpeg uses.</div><div><br></div><div>I hope this helps.</div><div dir="ltr"><br></div></div>