原因:
将一个编码的Frame往编码器中写入了两次
现象:
在写入到mp4muxer中时,出现大量如下的Log:
[mp4 @ 0x7ff7001e8f00] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 4344570 >= 4344570
[mp4 @ 0x7ff7001e8f00] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 4348170 >= 4348170
[mp4 @ 0x7ff7001e8f00] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 4351770 >= 4351770
过程:
解码 ->过滤 -> 编码
在从过滤器中获取到AVFrame后,通过设置的回调函数反馈给用户,在此反馈了两次给用户(这其中考虑了清空过滤器的情况)。
用户并没注意到同一帧数据反馈了两次,只是负责将反馈上来的数据,放入到编码器中。