<meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  
  
    <div class="moz-cite-prefix">On 03/04/2013 10:25 PM, Gary Thomas
      [via GStreamer-devel] wrote:<br>
    </div>
    <blockquote style='border-left:2px solid #CCCCCC;padding:0 1em' cite="mid:513510D8.8030801@mlbassoc.com" type="cite"> On
      2013-03-04 13:15, pfarmer wrote:
      <div class="shrinkable-quote"><br>
        > Gary Thomas wrote
        <br>
        >> I'm trying to split up a pipeline using udpsrc/udpsink
        elements.
        <br>
        >> All of the "network" traffic will be local.  This is in
        anticipation
        <br>
        >> of having some variable number of sinks for a single
        data source
        <br>
        >> (I have a camera that I want to share amongst a number
        of applications)
        <br>
        >>
        <br>
        >> I have this working pipeline:
        <br>
        >>     gst-launch -e -v v4l2src device=/dev/video0
        queue-size=16 \
        <br>
        >>       !
        <br>
        >>
video/x-raw-yuv,format='(fourcc)UYVY',width=1280,height=720,framerate=30/1<br>
        >> \
        <br>
        >>       ! tee name=v-t \
        <br>
        >>         v-t. ! queue ! videoscale !
        "video/x-raw-yuv,width=240,height=120"
        <br>
        >> ! ffmpegcolorspace ! ximagesink force-aspect-ratio=true
        <br>
        >> This pipeline just takes the output of the camera and
        displays it in
        <br>
        >> a window on my desktop.
        <br>
        >>
        <br>
        >> I've tried splitting it up like this:
        <br>
        >>     # Start the source pipeline
        <br>
        >>     gst-launch -e -v v4l2src device=/dev/video0
        queue-size=16 \
        <br>
        >>        !
        <br>
        >>
video/x-raw-yuv,format='(fourcc)UYVY',width=1280,height=720,framerate=30/1<br>
        >> \
        <br>
        >>        ! tee name=v-src \
        <br>
        >>          v-src. ! queue ! rtpvrawpay pt=96 ! udpsink
        port=61000
        <br>
        >>
        <br>
        >>     # Display the image
        <br>
        >>     gst-launch -e -v udpsrc port=61000  \
        <br>
        >>       !
        <br>
        >>
"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)1280,height=(string)720,colorimetry=(string)SMPTE240M,payload=(int)96"<br>
        >> \
        <br>
        >>       ! rtpvrawdepay \
        <br>
        >>       !
        <br>
        >>
video/x-raw-yuv,format='(fourcc)UYVY',width=1280,height=720,framerate=30/1<br>
        >> \
        <br>
        >>       ! tee name=v-t \
        <br>
        >>         v-t. ! queue ! videoscale !
        "video/x-raw-yuv,width=240,height=120"
        <br>
        >> ! ffmpegcolorspace ! ximagesink force-aspect-ratio=true
        <br>
        >>
        <br>
        >> I can see that the packets are being sent between the
        two pipelines,
        <br>
        >> but it looks like they are being quietly dropped (no
        messages).  It's
        <br>
        >> not totally clear that they are arriving to the second
        pipeline at all.
        <br>
        >> I've also tried this where the source pipeline is on
        one machine and
        <br>
        >> the receiving pipeline is on another, still no luck.
        <br>
        >>
        <br>
        >> I know that the CAPS match because I copied them from
        the output of
        <br>
        >> a previous run.
        <br>
        >>
        <br>
        >> Any hints what I might be doing wrong & how to make
        this work?
        <br>
        >
        <br>
        > Try to make the imagesink not syncing to the clock:
        sync=false
        <br>
        > In my case the ximagesink also does not work, I have to use
        the xvimagesink.
        <br>
        > For example:
        <br>
        > Sender:
        <br>
        >   gst-launch -v v4l2src ! tee ! queue ! ffmpegcolorspace !
        <br>
        >
        video/x-raw-yuv,format='(fourcc)UYVY',width=1280,height=720,
        framerate=30/1
        <br>
        > ! rtpvrawpay ! udpsink port=61000  tee0. ! queue !
        xvimagesink sync=false
        <br>
        > Receiver:
        <br>
        >   gst-launch udpsrc port=61000 caps="application/x-rtp,
        <br>
        > encoding-name=(string)RAW, sampling=(string)YCbCr-4:2:2,
        width=(string)1280,
        <br>
        > height=(string)720, colorimetry=(string)BT709-2,
        depth=(string)8" !
        <br>
        > rtpvrawdepay ! xvimagesink
      </div>
      <br>
      That didn't make any difference, sorry.
      <br>
      <br>
      I also tried adding the extra branch to do a local display and ran
      this
      <br>
      between machines - the source machine displays fine, the
      destination shows nothing.
      <br>
      <br>
      Do the above quoted pipelines imply that they actually run for
      you?  Are you
      <br>
      using gstreamer-0.10 or 1.0?  (I'm stuck on 0.10 for the time
      being)
      <br>
      <div class="shrinkable-quote"><br>
        >
        <br>
        >
        <br>
        > Gary Thomas wrote
        <br>
        >> Is this a reasonable approach to sharing this data?
         Eventually
        <br>
        >> I need to grab & display it on the screen while at
        the same time
        <br>
        >> sending it out over a [physical] network.
        <br>
        >
        <br>
        > On the same machine shared memory might be better suited.
        I.e. with
        <br>
        > shmsink/shmsrc (at least on a Unix machine).
        <br>
        >
      </div>
      <br>
      Thanks for the pointer, I'll check it out.
      <br>
      <br>
      -- <br>
      ------------------------------------------------------------
      <br>
      Gary Thomas                 |  Consulting for the
      <br>
      MLB Associates              |    Embedded world
      <br>
      ------------------------------------------------------------
      <br>
      _______________________________________________
      <br>
      gstreamer-devel mailing list
      <br>
      <a moz-do-not-send="true"
        href="/user/SendEmail.jtp?type=node&node=4658879&i=0"
        target="_top" rel="nofollow" link="external">[hidden email]</a>
      <br>
      <a moz-do-not-send="true"
        href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel"
        target="_top" rel="nofollow" link="external">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
      <br>
      <br>
      <hr noshade="noshade" size="1" color="#cccccc">
      <div style="color:#444; font: 12px
        tahoma,geneva,helvetica,arial,sans-serif;">
        <div style="font-weight:bold">If you reply to this email, your
          message will be added to the discussion below:</div>
        <a moz-do-not-send="true"
href="http://gstreamer-devel.966125.n4.nabble.com/Break-down-pipelines-using-udpsrc-udpsink-tp4658873p4658879.html" target="_top" rel="nofollow" link="external">http://gstreamer-devel.966125.n4.nabble.com/Break-down-pipelines-using-udpsrc-udpsink-tp4658873p4658879.html</a>
      </div>
      <div style="color:#666; font: 11px
tahoma,geneva,helvetica,arial,sans-serif;margin-top:.4em;line-height:1.5em">
        To start a new topic under GStreamer-devel, email
        <a href="/user/SendEmail.jtp?type=node&node=4658880&i=0" target="_top" rel="nofollow" link="external">[hidden email]</a> <br>
        To unsubscribe from GStreamer-devel, <a moz-do-not-send="true"
href="" target="_top" rel="nofollow" link="external">click
          here</a>.<br>
        <a moz-do-not-send="true"
href="http://gstreamer-devel.966125.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml" rel="nofollow" style="font:9px serif" target="_top" link="external">NAML</a> </div>
    </blockquote>
    I used gstreamer 0.10. <br>
    "I also tried adding the extra branch" what do you mean by that? It
    should work more easy on the same machine. Also check your firewall.<br>
    Does a minimalistic (without tee's and without a real src) example
    work?, like:<br>
    Sender:<br>
     gst-launch videotestsrc horizontal-speed=5 ! video/x-raw-yuv !
    rtpvrawpay ! udpsink port=5001<br>
    Receiver:<br>
     gst-launch udpsrc port=5001 caps="application/x-rtp,
    sampling=(string)YCbCr-4:2:2, width=(string)320, height=(string)240"
    ! rtpvrawdepay ! xvimagesink<br>
    <br>
  



        
        
        
<br/><hr align="left" width="300" />
View this message in context: <a href="http://gstreamer-devel.966125.n4.nabble.com/Break-down-pipelines-using-udpsrc-udpsink-tp4658873p4658880.html">Re: Break down pipelines using udpsrc/udpsink</a><br/>
Sent from the <a href="http://gstreamer-devel.966125.n4.nabble.com/">GStreamer-devel mailing list archive</a> at Nabble.com.<br/>