Gstreamer x-raw 到 h264 mp4

Gstreamer x-raw to h264 mp4

我正在使用的一些软件的文档说使用这个 gstreamer 管道从相机流式传输视频:

gst-launch-1.0 v4l2src device=/dev/video5 ! video/x-raw ! videoconvert ! v4l2h264enc ! h264parse config-interval=3 ! rtph264pay mtu=1024 ! udpsink host=127.0.0.1 port=5600

如果我想将其改编为通过管道传输到 .mp4,我认为这样的方法可行:

gst-launch-1.0 v4l2src device=/dev/video5 ! video/x-raw ! videoconvert ! v4l2h264enc ! h264parse config-interval=3 ! filesink location=test.mp4

但是生成的文件无法在 vlc 中播放。

我错过了什么?

提前致谢。

你会使用容器(比如这里的 qtmux):

# For recording 100 frames:
gst-launch-1.0 v4l2src device=/dev/video5 num-buffers=100 ! video/x-raw ! videoconvert ! v4l2h264enc ! h264parse config-interval=3 ! qtmux ! filesink location=test.mp4

# If you want to stop mnaually with Ctrl-C, add EOS:
gst-launch-1.0 -e v4l2src device=/dev/video5 ! video/x-raw ! videoconvert ! v4l2h264enc ! h264parse config-interval=3 ! qtmux ! filesink location=test.mp4