deinterleave

Splits one interleaved multichannel audio stream into many mono audio streams.

This element handles all raw audio formats and supports changing the input caps as long as all downstream elements can handle the new caps and the number of channels and the channel positions stay the same. This restriction will be removed in later versions by adding or removing some source pads as required.

In most cases a queue and an audioconvert element should be added after each source pad before further processing of the audio data.

Example launch line

 gst-launch-1.0 filesrc location=/path/to/file.mp3 ! decodebin ! audioconvert ! "audio/x-raw,channels=2 ! deinterleave name=d  d.src_0 ! queue ! audioconvert ! vorbisenc ! oggmux ! filesink location=channel1.ogg  d.src_1 ! queue ! audioconvert ! vorbisenc ! oggmux ! filesink location=channel2.ogg

Decodes an MP3 file and encodes the left and right channel into separate Ogg Vorbis files.

 gst-launch-1.0 filesrc location=file.mp3 ! decodebin ! audioconvert ! "audio/x-raw,channels=2" ! deinterleave name=d  interleave name=i ! audioconvert ! wavenc ! filesink location=test.wav    d.src_0 ! queue ! audioconvert ! i.sink_1    d.src_1 ! queue ! audioconvert ! i.sink_0

Decodes and deinterleaves a Stereo MP3 file into separate channels and then interleaves the channels again to a WAV file with the channel with the channels exchanged.

Hierarchy

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──deinterleave

Factory details

Authors: – Andy Wingo , Iain , Sebastian Dröge

Classification:Filter/Converter/Audio

Rank – none

Plugin – interleave

Package – GStreamer Good Plug-ins

Pad Templates

sink

audio/x-raw:
         format: { F64LE, F64BE, F32LE, F32BE, S32LE, S32BE, U32LE, U32BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, S16LE, S16BE, U16LE, U16BE, S8, U8 }
           rate: [ 1, 2147483647 ]
       channels: [ 1, 2147483647 ]
         layout: interleaved

Presencealways

Directionsink

Object typeGstPad


src_%u

audio/x-raw:
         format: { F64LE, F64BE, F32LE, F32BE, S32LE, S32BE, U32LE, U32BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, S16LE, S16BE, U16LE, U16BE, S8, U8 }
           rate: [ 1, 2147483647 ]
       channels: 1
         layout: { (string)non-interleaved, (string)interleaved }

Presencesometimes

Directionsrc

Object typeGstPad


Properties

keep-positions

“keep-positions” gboolean

Keep positions: When enable the caps on the output buffers will contain the original channel positions. This can be used to correctly interleave the output again later but can also lead to unwanted effects if the output should be handled as Mono.

Flags : Read / Write

Default value : false


The results of the search are