gstreamer with RTP

Tim Müller tim at centricular.com
Wed Jul 15 06:53:01 PDT 2015


On Wed, 2015-07-15 at 05:54 -0700, Overflow10 wrote:

Hi,

> Hi, I'm trying to write a RTP stream to a file and read it with gstreamer.
> My pipeline to convert a video test to RTP is:
> gst-launch-1.0 -tv videotestsrc do-timestamp=1 ! vp8enc ! rtpvp8pay !
> filesink location=/tmp/test.rtp 

This is not going to work.

"RTP" is not a stream-format, it relies on packetisation. If you dump
the data into a file and read it back, the packetisation is gone.

You can use ... ! rtpstreampay ! filesink location=...

and later  filesrc ! rtpstreamdepay ! capsfilter caps=... ! ..

though.

> in the output I have this caps:
> "application/x-rtp\,\ media\=\(string\)video\,\ clock-rate\=\(int\)90000\,\
> encoding-name\=\(string\)VP8-DRAFT-IETF-01\,\ payload\=\(int\)96\,\
> ssrc\=\(uint\)1427543371\,\ timestamp-offset\=\(uint\)4027906677\,\
> seqnum-offset\=\(uint\)26411"
> 
> and then I read the rtp file as:
> gst-launch-1.0 filesrc location=/tmp/test.rtp ! "application/x-rtp,
> media=(string)video, clock-rate=(int)90000,
> encoding-name=(string)VP8-DRAFT-IETF-01, payload=(int)96,
> ssrc=(uint)1427543371, timestamp-offset=(uint)4027906677,
> seqnum-offset=(uint)26411" !  rtpvp8depay ! vp8dec ! videoconvert !
> xvimagesink
> 
> I show for millisecond the test image, but in the output I read "Received
> invalid RTP payload, dropping".
> What is the problem?
> Thanks.
-- 
Tim Müller, Centricular Ltd - http://www.centricular.com



More information about the gstreamer-devel mailing list