[gst-devel] Trouble with basic RTP raw video pipelines
Ward, David - 0663 - MITLL
david.ward at ll.mit.edu
Sun Jun 13 19:54:28 CEST 2010
I am using gstreamer 0.10.29 and gstreamer-plugins-good 0.10.23. I have
really been struggling to get any type of RTP pipeline to work correctly
on both the sending and receiving side (first trying Theora, now just
raw video). I'm issuing both of these commands on the same host -- this
is as basic as I think I can get:
# Generate test video and send to port 5000
gst-launch --gst-debug=3 \
gstrtpsession name=session \
videotestsrc ! rtpvrawpay ! session.send_rtp_sink \
session.send_rtp_src ! udpsink port=5000
# Receive video from port 5000 and display on screen
gst-launch --gst-debug=3 \
gstrtpsession name=session \
udpsrc port=5000 caps="application/x-rtp, media=(string)video, \
clock-rate=(int)90000, encoding-name=(string)RAW, \
sampling=(string)YCbCr-4:2:2, depth=(string)8, \
width=(string)320, height=(string)240, \
colorimetry=(string)SMPTE240M" ! session.recv_rtp_sink \
session. ! rtpvrawdepay ! xvimagesink
I can observe traffic on port 5000 of the loopback interface using
Wireshark. However the receiving pipeline never displays any video.
The caps on the udpsrc were obtained by copying them from the debugging
output on the sending side. A simple pipeline that does not involve RTP
works fine for displaying the video locally, such as this:
gst-launch videotestsrc ! xvimagesink
First, is there anything I am obviously doing wrong in the setup of my
pipelines?
Also, here are some excerpts from the debug log on the receiving side
that I am not quite sure about:
GST_PIPELINE ./grammar.y:568:gst_parse_perform_link: linking
udpsrc0:(any) to session:session (0/1) with caps "(NULL)"
=> what is "session:session"? shouldn't that be
"session:recv_rtp_sink"?
=> why are caps NULL? I think I am setting them explicitly for the
udpsrc
bin gstbin.c:2315:gst_bin_do_latency_func:<pipeline0> failed to query
latency
=> is this significant?
I have tried to follow any documentation and examples I can find with
gstrtpbin/gstrtpsession, but unfortunately many of the specific examples
are for patented codecs (I am in the United States). Ultimately I plan
to add Theora encoding/decoding to this pipeline and to use the
gstrtpbin element and RTCP, but I think I first need to understand why
this example doesn't work before I can hope to make the other work.
Thanks in advance for any help,
David
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5521 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20100613/580391c3/attachment.bin>
More information about the gstreamer-devel
mailing list