【发布时间】:2016-03-15 22:38:40
【问题描述】:
我有一个连接到树莓派的鱼眼 USB 网络摄像头,我正试图将其传输到计算机。我玩过ffmpeg,超过320x240似乎有点滞后。从我读到的内容来看,人们对 gstreamer 很满意。
所以我已经测试了 USB 网络摄像头,它可以在本地工作
gst-launch-1.0 -v v4l2src device=/dev/video0 ! 'video/x-raw,width=640,height=480' ! glimagesink
这些是我一直在尝试使用的用于将视频传输到我的计算机的命令。但是,我所看到的只是一个绿色窗口。
TCP 服务器:gst-launch-1.0 -v v4l2src device=/dev/video0 ! 'video/x-raw,width=640,height=480,framerate=30/1' ! x264enc byte-stream=true ! rtph264pay ! gdppay ! tcpserversink host=192.168.200.38 port=5000 sync=false
TCP 客户端:gst-launch-1.0 -v tcpclientsrc host=192.168.200.38 port=5000 ! gdpdepay ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink sync=false
或
UDP 服务器:
gst-launch-1.0 -v v4l2src device=/dev/video0 ! 'video/x-raw,width=640,height=480,framerate=30/1' ! x264enc byte-stream=true ! rtph264pay ! gdppay ! udpsink host=192.168.200.37 port=5000 sync=false
UDP 客户端:
gst-launch-1.0 -v udpsrc port=5000 ! gdpdepay ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink sync=false
我想我一定是以某种方式错误地管道插件。任何建议表示赞赏。
【问题讨论】:
-
我认为它们是传递给 gst-launch-1.0 的参数的一部分。它们被解释为视频“管道”,每个插件的输出被传递给下一个插件,用感叹号分隔。
-
好的。有意义的是,它使用自定义管道字符将其与使用
|的常规管道区分开来 -
但是我做错了什么???|||???
标签: ffmpeg raspberry-pi gstreamer webcam