如何修复 Raspberry Pi libcamera-vid H.264 直播流卡在第一帧

问题

如果你使用 libcamera-vid 直播 h264 视频,如我们之前的文章所示,使用如下命令:

libcamera_h264_stream.sh
libcamera-vid -t 0 --width 1920 --height 1080 --codec h264 --inline --listen -o tcp://0.0.0.0:8888

使用 VLC 等作为客户端,你可能会遇到VLC 显示第一帧然后卡住的情况,即使 libcamera-vid 显示正在捕获帧。

对我来说,此问题仅在 Raspberry Pi 5 上出现。

解决方案

我不完全确定是什么导致了此问题,但使用 mjpeg 而不是 h264 作为编解码器似乎可以修复问题。你可以使用以下命令流式传输 MJPEG 视频:

libcamera_mjpeg_stream.sh
libcamera-vid -t 0 --width 1920 --height 1080 --codec mjpeg --inline --listen -o tcp://0.0.0.0:8888

并使用以下命令流式传输:

vlc_connect.sh
vlc tcp/mjpeg://192.168.1.185:8888/

Check out similar posts by category: Raspberry Pi