interleaving 4 channels of audio into vorbisenc or opusenc

Mar Gonzalez Franco margon at microsoft.com
Thu May 19 00:48:22 UTC 2016


Thanks Sebastian,
I was able to solve this.
This is the working pipeline,

gst-launch-1.0 interleave name=i filesrc location=FourMICS_RR_long.wav ! decodebin ! audioconvert ! audioresample ! audio/x-raw,rate=24000,format=F32LE ! queue ! i.sink_0
filesrc location=FourMICS_CR_long.wav ! decodebin ! audioconvert ! audioresample ! audio/x-raw,channels=(int)1,rate=24000,format=F32LE ! queue ! i.sink_1
filesrc location=FourMICS_CL_long.wav ! decodebin ! audioconvert ! audioresample ! audio/x-raw,channels=(int)1,rate=24000,format=F32LE ! queue ! i.sink_2
filesrc location=FourMICS_LL_long.wav ! decodebin ! audioconvert ! audioresample ! audio/x-raw,channels=(int)1,rate=24000,format=F32LE ! queue ! i.sink_3
i.src ! capssetter caps=audio/x-raw,channels=4,channel-mask=(bitmask)0x33 ! audioconvert ! audioresample ! vorbisenc ! oggmux ! filesink location=out2.ogg


There were two issues
1. the caps need to be set specifically to the interleave
2. vorbisenc bitrate could not bare with 4 channels at 48khz

Message: 6
Date: Wed, 18 May 2016 15:45:42 +0300
From: Sebastian Dr?ge <sebastian at centricular.com<mailto:sebastian at centricular.com>>
To: Discussion of the development of and with GStreamer
<gstreamer-devel at lists.freedesktop.org<mailto:gstreamer-devel at lists.freedesktop.org>>
Subject: Re: interleaving 4 channels of audio into vorbisenc or
opusenc
Message-ID: <1463575542.2897.32.camel at centricular.com<mailto:1463575542.2897.32.camel at centricular.com>>
Content-Type: text/plain; charset="utf-8"

On Di, 2016-05-17 at 23:41 +0000, Mar Gonzalez Franco wrote:
> Hi,
> I'm trying to interleave 4 channels of audio into one audio file
> I have managed to successfully save them into wav with wavenc
>
> [...]
> Same problem
>
> Any suggestion as of how to solve this?
> I am not restricted only to vorbis, in fact I have similar issues
> also with opusenc.

(channel-position is not a valid caps field and will just be ignored)

Can you check what the caps after interleave are, and also if
audioconvert after interleave is doing channel remixing, and if so
between which channel masks / numbers?

--
Sebastian Dr?ge, Centricular Ltd *
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20160519/9640e931/attachment.html>


More information about the gstreamer-devel mailing list