FFMPEG:从网络摄像头创建连续的视频

FFMPEG: Create contiguous videos from webcam

FFMPEG 能否以(例如 10 秒)间隔从网络摄像头录制? 我需要来自网络摄像头的连续小视频(用于我正在开发的 p2p 实时流媒体应用程序),这样我就可以一个接一个地播放它们而不会注意到实际上有多个视频。

我想,我必须打破关键帧或类似的东西,这样我就有清晰的剪辑。

为了不卡顿地播放多个视频,我使用了 Web MediaSource API,它确实工作得很好。

我只需要将网络摄像头流分割成多个可变视频文件。

谢谢!

您可以使用通用 stream segmenter or the specific Apple HTTP Live Streaming (HLS) segmenter

Linux 上的流分段器示例:

ffmpeg -f v4l2 -framerate 25 -video_size 640x480 -i /dev/video0 -an -f segment -segment_time 10 -segment_format_options movflags=+faststart out%03d.mp4

您可以使用 GOP 大小选项 (-g) 设置恒定的关键帧间隔,即:

-c:v libx264 -r 25 -g 50

每 2 秒放置一个关键帧(50 帧,25 帧/秒)。片段持续时间必须是关键帧间隔的倍数。