alsasrc and caps negotiation

Gary Thomas gary at mlbassoc.com
Fri Feb 1 16:22:06 PST 2013


I'm experimenting with audio streaming, based on this example:
   http://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/tests/examples/rtp/server-alsasrc-PCMA.sh

When paired with the appropriate client, I can run it fine when the
audio source is 'audiotestsrc'.  If I change it to be 'alsasrc', I
get incompatible caps and it fails.  This seems to be because the
rtppcmapay element only wants one channel.

I've not been able to figure out how to select only one channel
of my ALSA source, either by mixing or just choosing one or the
other.  Here's what I tried that now doesn't complain about the
caps being wrong (but I'm sure the issue remains), rather it gives
me an "internal data flow error"

   gst-launch -vvv gstrtpbin name=rtpbin alsasrc device=hw:0,1 \
     ! deinterleave name=d d.src0 ! queue ! audioconvert \
     ! alawenc ! rtppcmapay ! rtpbin.send_rtp_sink_0 \
      rtpbin.send_rtp_src_0 ! udpsink port=5002 host=192.168.1.114 \
      rtpbin.send_rtcp_src_0 ! udpsink port=5003 host=192.168.1.114 sync=false async=false \
     udpsrc port=5007 ! rtpbin.recv_rtcp_sink_0

Any suggestions on how I make this happy?

Thanks

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


More information about the gstreamer-devel mailing list