[Bug 735673] interleave: the example in the documentation does not work

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Jan 12 14:30:39 PST 2016


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

Tim-Philipp Müller <t.i.m at zen.co.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |t.i.m at zen.co.uk
         Resolution|---                         |FIXED
   Target Milestone|git master                  |1.7.2

--- Comment #10 from Tim-Philipp Müller <t.i.m at zen.co.uk> ---
I pushed this:

commit be5f94734a57a13294ea06ada1466d041a5654a9
Author: Antonio Ospite <ao2 at ao2.it>
Date:   Fri Aug 29 15:40:23 2014 +0200

    tests: fix a thinko in the wavenc example

    The code is supposed to follow somehow what the comment above says, that
    is to have one channel with a wave of freq 440 and the other channel
    with a wave of freq 880, but an off by one error results in frequencies
    of 0 and 440.

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

commit bdcc0390aff2b91ceb48fb169e7c155f3e84f4ba
Author: Antonio Ospite <ao2 at ao2.it>
Date:   Fri Aug 29 15:07:58 2014 +0200

    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


but actually I'm confused, because the previous pipeline works just fine for
me? It's probably still a good idea to specify the positioning explicitly here
though.

I've pushed one of the wavenc test patches.

About the others:

- "tests: fix the wavenc example code to do exactly what its comment says"
Not sure what the advantage of this change is? Why generate a file if not
needed?

- "tests: fix the reference pipeline from the comment in the wavenc test"
Doesn't seem to be needed though technically?

- "tests: improve comment in the wavenc pipeline test"
Should be squashed/combined with previous one, if applied at all.

If you attach patches individually, it's easier to track them and comment on
them, for what it's worth. I'm going to resolve this since the original issue
has been resolved and the rest is cosmetic as far as I can tell, but feel free
to follow up.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list