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

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Sep 16 06:06:28 PDT 2014


https://bugzilla.gnome.org/show_bug.cgi?id=735673
  GStreamer | gst-plugins-good | 1.4.1

--- Comment #6 from Antonio Ospite <ao2 at ao2.it> 2014-09-16 13:06:24 UTC ---
(In reply to comment #5)
> Review of attachment 286282 [details]:
> 
> ::: tests/check/pipelines/wavenc.c
> @@ +67,1 @@
>   *
> 
> Oh I misunderstood, sorry. You should use the channel-positions property, or
> alternatively make sure that the input has the correct channel positions. In
> this case you would make sure that they have channels=1,channel-mask=0x1 and
> channels=1,channel-mask=0x2
> 
> Otherwise the output of interleave will have channel-mask=0, which will not be
> what you usually want.

I agree with you here, in principle, but my point is that the following
pipelines produce exactly the same file:

gst-launch-1.0 interleave name=i ! \
  audioconvert ! wavenc ! filesink location=audio-interleave-test_1.wav \
  audiotestsrc wave=0 num-buffers=100 ! audioconvert !
"audio/x-raw,channels=1,channel-mask=(bitmask)0x1" ! queue ! i.sink_0 \
  audiotestsrc wave=2 num-buffers=100 ! audioconvert !
"audio/x-raw,channels=1,channel-mask=(bitmask)0x2" ! queue ! i.sink_1

gst-launch-1.0 interleave name=i ! \
  audioconvert ! wavenc ! filesink location=audio-interleave-test_2.wav \
  audiotestsrc wave=0 num-buffers=100 ! audioconvert !
"audio/x-raw,channels=1,channel-mask=(bitmask)0x2" ! queue ! i.sink_0 \
  audiotestsrc wave=2 num-buffers=100 ! audioconvert !
"audio/x-raw,channels=1,channel-mask=(bitmask)0x1" ! queue ! i.sink_1

I would have expected the channels to be swapped, does this make sense? That's
why, as I said in the first message, I thought that setting an opaque
channel-mask is more adherent to how interleave behaves.

I also tried to use the pipelines above with "interleave name=i
channel-positions-from-input=0", but then the pipelines fail.

So maybe the interleave element should be fixed to fill channel-positions from
the input channel-mask?

I can take a better look at the code during the week-end.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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