Error sending RTP stream to v4l2sink
charles.fox
charles.fox at gmail.com
Mon Aug 29 15:32:55 UTC 2016
Hi all,
I am trying to stream a webcam (Logitech C920) on computer A into OpenCV on
computer B. OpenCV can't open the stream directly so I installed loopback
for v4l2 and want to have openCV read from a virtual /dev/video1 device of
the stream.
I can test the stream is working in gstreamer like this:
computer A:
gst-launch-1.0 v4l2src ! 'video/x-raw, width=640, height=480,
framerate=30/1' ! videoconvert ! x264enc pass=qual quantizer=20
tune=zerolatency ! rtph264pay ! udpsink host=192.168.0.5 port=1234
computer B:
gst-launch-1.0 udpsrc port=1234 ! "application/x-rtp, payload=127" !
rtph264depay ! avdec_h264 ! videoconvert ! xvimagesink
and I can see the live stream in a window.
However when I try to pipe to my lookback instead via this on computer b:
gst-launch-1.0 udpsrc port=1234 ! "application/x-rtp, payload=127" !
rtph264depay ! avdec_h264 ! videoconvert ! v4l2sink
device=/dev/video1
it dies with
$ gst-launch-1.0 udpsrc port=1234 ! "application/x-rtp, payload=127" !
rtph264depay ! avdec_h264 ! videoconvert ! v4l2sink
device=/dev/video1
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Redistribute latency...
ERROR: from element /GstPipeline:pipeline0/GstUDPSrc:udpsrc0: Internal data
flow error.
Additional debug info:
gstbasesrc.c(2948): gst_base_src_loop ():
/GstPipeline:pipeline0/GstUDPSrc:udpsrc0:
streaming task paused, reason error (-5)
Execution ended after 0:00:09.842319925
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
What's weird is that I can pipe computer B's OWN webcam to loopback with no
problems -- if I do on computer B:
gst-launch-1.0 -v v4l2src ! v4l2sink device=/dev/video1
then it works just fine (eg I can watch the stream on video1 in vlc)
This is driving me nuts, can anyone help? Why can the stream be piped into
xvimagesink but not into v4l2sink , when I know v4l2sink is working from the
local webcam version? Is v4l2sink expecting a different type of input
from xvimagesink, and if so do I need a different chain of modules to pipe
in ?
--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Error-sending-RTP-stream-to-v4l2sink-tp4679273.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
More information about the gstreamer-devel
mailing list