首页 > 解决方案 > x264 enc v4l2 /dev/video2 流

问题描述

我有这个工作,但无法从我的 magwell 获取视频以进行集成,并且可以使用正确的管道帮助。 gst-launch-1.0 videotestsrc ! video/x-raw,width=848,height=480,framerate=25/1 ! x264enc bitrate=700 ! video/x-h264,width=848,height=480,framerate=25/1,stream-format=byte-stream,profile=baseline ! tee name=t\ t. ! queue ! tcpclientsink host=172.18.0.3 port=8000 \ t. ! queue ! tcpclientsink host=172.18.0.4 port=8000

标签: gstreamer

解决方案


我在问题描述中没有看到接收方管道。这是验证接收方没有问题所必需的。根据您当前的管道,我有以下建议:

  1. 您不需要caps在 element 之后再设置x264enc,因为输出无论如何都是 type video/x-h264。你需要的是h264parsex264enc. h264parse在将数据传递给您在接收端使用的解码器之前,您还需要添加, 。

  2. 设置的比特率x264enc也非常少。单位为 kbits/sec,对于视频,这可能会非常少。如果您没有任何严格的资源限制,最好将其保留为默认设置。否则尝试更高的值。

还有你使用 TCP 的任何原因。如果视频数据/数据包丢失不是问题,则对视频使用 UDP 可能是一个更好的主意。


推荐阅读