我正在使用 libvlc 和 libx264 从 C++ 程序流式传输图像。它使用 get 和 release 回调提供 libvlc 未压缩的图像。在更高的帧率(超过 12 fps)下一切似乎都可以正常工作,但是当我尝试更慢的帧率(从 1 到 10)时,我收到以下警告:
[030d5c6c] mux_ts mux debug: adjusting rate at 0/500000 (3/0)
[030d5c6c] main mux warning: late buffer for mux input (2127998)
[030d5c6c] mux_ts mux debug: adjusting rate at 0/500000 (3/0)
超过 4 fps,我能够获得流(例如使用 vlc GUI),但低于 4 fps,我什么也得不到,或者有时是冻结图像。libvlc 参数如下:
--imem-get=15543672 --imem-release=15538482 --imem-data=0 --imem-codec=RV24 --imem-cookie=aCookie --imem-cat=2 --imem-height=960 --imem-width=1280 --verbose=2 --imem-id=1 --imem-group=1 --imem-fps=2.000000 -vvv --play-and-exit --no-audio --sout=#transcode{vcodec=h264, fps=2.000000, vb=200k,venc=x264{preset=ultrafast}}:standard{access=http,mux=ts,dst=0.0.0.0:8091/video}
任何提示将不胜感激。