Logitech C920's H264 over RTP
adam.goodwin.nz at gmail.com
Tue Jul 23 20:36:51 PDT 2013
I'm working towards streaming H264 video over a network straight from a
Logitech C920 - which has hardware H264 encoding.
I installed, and am now using, GST 1.1.2 because of its uvch264src -
although I've ended up using v4l2src still anyway because I didn't realise
it works with H264 cameras in this release.
Anyway, I'd just like to clarify a couple of things. I'm prototyping with
gst-launch-1.0 before I start coding, and I have the following:
In one terminal I run the sender:
gst-launch-1.0 v4l2src device=/dev/video1 !
video/x-h264,width=1280,height=720,framerate=30/1 ! h264parse ! rtph264pay
pt=127 config-interval=4 ! udpsink host=127.0.0.1 port=1234
And in another terminal I run the receiver:
gst-launch-1.0 udpsrc port=1234 ! application/x-rtp, payload=127 !
rtph264depay ! avdec_h264 ! xvimagesink sync=false
This works, but as I say there's just a couple of things I'm unsure about:
First of all, the sending pipeline doesn't work without the h264 parser,
but I don't really understand why. If the camera is outputting H264 format,
isn't that all that the payloader should need?
Second, I've set the config-interval of the payloader to 4. As I understand
it, this should mean that if I run the receiver at any time after the
sender has already started, it should take at most 4 seconds for the stream
to be recognised. However, it ends up taking more like 8-10 seconds before
I start to see the video at the receiver. What am I missing? In practice is
there a lower limit at around 8-10 seconds?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the gstreamer-devel