碎片化的 MP4 在 ffplay 上播放一段时间后会冻结

碎片化的 MP4 在 ffplay 上播放一段时间后会冻结

我不会占用你太多时间...

我正在用这个命令行从 ffmpeg 流式传输碎片化的 mp4

ffmpeg  \
-f video4linux2  \
-video_size 640x480 \
-framerate 60 \
-i /dev/video0 \
-c:v h264_omx \
-b:v 500k \
-movflags frag_keyframe+empty_moov  \
-f mp4 udp://192.168.1.196:1234

然后在我的主机(上面的 IP)上,我使用一个简单的 ffplay 命令行

ffplay -fflags nobuffer udp://0.0.0.0:1234

延迟仅为半秒,效果非常好。

问题是,比如说,30 秒之后,视频会冻结,但一切仍在发送帧和接收帧。

我发现在流式传输时有些帧被丢弃并且是 FMP4.....丢帧可能导致这种情况?

我想知道如何防止这种冻结,因为如果我将 fps 增加到 90(这会将延迟降低到 350 毫秒),视频会更早冻结(帧会提前丢失)

谢谢

相关内容