alsasrc and caps negotiation

Gary Thomas gary at mlbassoc.com
Sat Feb 2 12:30:26 PST 2013


On 2013-02-02 09:03, Nox Deleo wrote:
> I'd suggest getting a debug graph of this. It should help you see what caps are being used where.
>
> See here for instructions:
> http://gstreamer.freedesktop.org/wiki/DumpingPipelineGraphs
>
> Also, see these instructions on debugging to get more verbose messages that may help pinpoint your problem:
> http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/section-checklist-debug.html
>
> I've just been doing some work with ALSA and GStreamer, and I ended up writing a custom ALSA config file to split up my sound cards 8 ins and outs into different devices, so I
> could access them with separate alsasrc/sink elements. I found it alot easier than dealing with interleaving and channel positions. I don't know what you're trying to do exactly,
> but that's always an option if you need it.

Any details you can share about how you did this would be much appreciated.

>
>
> On 2 February 2013 00:22, Gary Thomas <gary at mlbassoc.com <mailto:gary at mlbassoc.com>> wrote:
>
>     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
>     <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
>     ------------------------------__------------------------------
>     _________________________________________________
>     gstreamer-devel mailing list
>     gstreamer-devel at lists.__freedesktop.org <mailto:gstreamer-devel at lists.freedesktop.org>
>     http://lists.freedesktop.org/__mailman/listinfo/gstreamer-__devel <http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
>
>
>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>

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


More information about the gstreamer-devel mailing list