interleave: Fix the example by setting channel-masks in the sink pads
authorAntonio Ospite <ao2@ao2.it>
Fri, 29 Aug 2014 13:07:58 +0000 (15:07 +0200)
committerTim-Philipp Müller <tim@centricular.com>
Tue, 12 Jan 2016 22:11:30 +0000 (22:11 +0000)
commitbdcc0390aff2b91ceb48fb169e7c155f3e84f4ba
treec8ca3659cb738c8615781783b7346ca3ba03c389
parent205565ccd9f93968265e76019426d9b048e2d3eb
interleave: Fix the example by setting channel-masks in the sink pads

The current example does not work, it fails with:

ERROR: from element /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstWavParse:wavparse0: Internal data flow error.
gstwavparse.c(2178): gst_wavparse_loop (): /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstWavParse:wavparse0:
streaming task paused, reason not-negotiated (-4)

This is because negotiation with wavenc gets messed up by the missing
channel positions configuration.

The proper way to define the channel layout when using the interleave
element in code would be to set the channel-positions property, but
gst-launch-1.0 does not know how to deal with arrays; so the example
pipeline works around the issue by setting the channel-masks in the sink
pads.

Also fix a repetition in the deinterleave example description

https://bugzilla.gnome.org/show_bug.cgi?id=735673
gst/interleave/interleave.c