Still stuck

mattes effemm at mykmk.com
Thu Mar 7 10:47:35 PST 2013


On Thu, 07 Mar 2013 08:20:29 -0700 Gary Thomas <gary at mlbassoc.com> wrote

> Sorry if this is an old record, but I'm getting nowhere...
> 
> Why does this pipeline work:
>    gst-launch -e -vvv shmsrc socket-path=/tmp/shm-stream.sock \
>      ! "application/x-rtp, sampling=(string)YCbCr-4:2:2, width=(string)720,
> height=(string)480, payload=(int)96" \      ! rtpvrawdepay \
>      ! fakesink
> 
> and this one does not?
>    gst-launch -e -vvv shmsrc socket-path=/tmp/shm-stream.sock \
>      ! "application/x-rtp, sampling=(string)YCbCr-4:2:2, width=(string)720,
> height=(string)480, payload=(int)96" \      ! rtpvrawdepay \
>      ! ffenc_mpeg4 \
>      ! fakesink
> 
> Note: I only added the mpeg4 encoder element which is compatible
> and there are no errors/complaints.
> 
> The elements all have compatible [default] caps and it should
> just work.  If I trade the 'shmsrc'+'rtpvrawdepay' for something
> like 'videotestsrc', both can work.
> 

Why do you use 'rtpvrawdepay' in the first place?
What type of data is the feeding end providing?
is it a pure stream of video frame?

I have used ffenc_mpeg4 successfully with yuv420 '(fourcc)I420'.
Not sure about YCbCr-4:2:2?

Have you tried to display it with e.g. xvimagesink, instead of using
ffenc_mpeg4 + fakesink?

Assure the incoming data stream is what you think it is?

Could be helpful to setup a shmsink pipeline to simulate the video feed
of yours.  Start with something you know that works and than simply
add feature by feature:

 gst-launch -v videotestsrc ! \
 'video/x-raw-yuv, width=640, height=480, framerate=30/1, format=(fourcc)I420'
! \
 shmsink socket-path=/tmp/test shm-size=10000000 wait-for-connection=0

 gst-launch -e shmsrc socket-path=/tmp/test is-live=1 ! \
 video/x-raw-yuv,format=\(fourcc\)I420,framerate=30/1,width=640,height=480 ! \
 xvimagesink

I just see shmsink/src as transparent link between the two pipe. Boils down to
something like this:

 gst-launch -v videotestsrc ! \
  'video/x-raw-yuv, width=640, height=480, framerate=30/1, 
format=(fourcc)I420' ! \
  xvimagesink

Mat




More information about the gstreamer-devel mailing list