DJI Windows 10 SDK FFMPEG视频缓冲



有人知道如何减少DJI FFMPEG实现的缓冲延迟吗?似乎应用程序使用此API运行的时间越长,潜伏期就会越糟。除codec_flag_low_delay或codec_flag2_fast外,还有其他特定选项可能有助于减少延迟吗?我应该在av_parser_parse2中设置某些东西以减少延迟吗?我当然是在假设延迟在API中而是飞机本身 - 无人机似乎不可能存储大量视频。

经过一些实验,我发现AV_PARSER_PARSE2方法的PTS/DTS值将影响帧缓冲。DJI的示例代码使用av_nopts_value用于PTS和DTS;这导致视频流中延迟的延迟。每次got_picture == true并设置dts = pts而不是计算这些值,而是简单地将pts增加1000。是的,这是一个黑客,但有效。希望这也能帮助遇到这个问题的其他人。如果您使用的是djivideoparser项目,则可以轻松地对H264_decoder.cpp的解码器方法进行此更改。

最新更新