[gst-devel] problem with 8 channel interleaved audio over rtp

Tristan Matthews tristan at sat.qc.ca
Mon Jun 9 19:01:12 CEST 2008


Hi,

I'm trying to send 8 channel interleaved audio, encoded with vorbis, 
over rtp. Note that I don't care about preserving channel positions. I 
have it working for stereo, like so:

gst-launch-0.10 -v interleave name=i ! vorbisenc ! rtpvorbispay ! 
udpsink host=localhost port=5060 \
audiotestsrc volume=0.5 freq=200 is-live=false ! audioconvert ! queue ! i. \
audiotestsrc volume=0.5 freq=400 is-live=false ! audioconvert ! queue ! i.

Any ideas on what's missing to get the following to work?

gst-launch-0.10 -v interleave name=i ! vorbisenc ! rtpvorbispay ! 
udpsink host=localhost port=5060 \
audiotestsrc volume=0.5 freq=200 is-live=false ! audioconvert ! queue ! i. \
audiotestsrc volume=0.5 freq=300 is-live=false ! audioconvert ! queue ! i. \
audiotestsrc volume=0.1 freq=400 is-live=false ! audioconvert ! queue ! i. \
audiotestsrc volume=0.1 freq=500 is-live=false ! audioconvert ! queue ! i. \
audiotestsrc volume=0.1 freq=600 is-live=false ! audioconvert ! queue ! i. \
audiotestsrc volume=0.1 freq=700 is-live=false ! audioconvert ! queue ! i. \
audiotestsrc volume=0.1 freq=800 is-live=false ! audioconvert ! queue ! i. \
audiotestsrc volume=0.1 freq=900 is-live=false !  audioconvert ! queue ! i.

It fails with:
ERROR: from element /pipeline0/audiotestsrc0: Internal data flow error.
Additional debug info:
gstbasesrc.c(2240): gst_base_src_loop (): /pipeline0/audiotestsrc0:
streaming task paused, reason not-negotiated (-4)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...

It seems to be a caps negotiation issue, I've tried with and without 
setting the caps with channel positions (i.e.  
"audio/x-raw-int,channel-position=(GstAudioChannelPosition)GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT") 
to no avail.

Regards,
Tristan






More information about the gstreamer-devel mailing list