rtpopuspay2

Payloads an Opus audio stream into RTP packets as per RFC 7587 or libwebrtc's multiopus extension.

The multi-channel extension adds extra fields to the output caps and the SDP in line with what libwebrtc expects, e.g.

  a=rtpmap:96 multiopus/48000/6
  a=fmtp:96 num_streams=4;coupled_streams=2;channel_mapping=0,4,1,2,3,5

for 5.1 surround sound audio.

Example pipeline

 gst-launch-1.0 audiotestsrc wave=ticks ! audio/x-raw,channels=2 ! opusenc ! rtpopuspay2 ! udpsink host=127.0.0.1 port=5004

This will encode and audio test signal as Opus audio and payload it as RTP and send it out over UDP to localhost port 5004.

Hierarchy

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstRtpBasePay2
                    ╰──rtpopuspay2

Factory details

Authors: – Tim-Philipp Müller

Classification:Codec/Payloader/Network/RTP

Rank – marginal

Plugin – rsrtp

Package – gst-plugin-rtp

Pad Templates

sink

audio/x-opus:
channel-mapping-family: 0
audio/x-opus:
channel-mapping-family: 0
       channels: [ 1, 2 ]
audio/x-opus:
channel-mapping-family: 1
       channels: [ 3, 255 ]

Presencealways

Directionsink

Object typeGstPad


src

application/x-rtp:
          media: audio
  encoding-name: { (string)OPUS, (string)MULTIOPUS }
     clock-rate: 48000

Presencealways

Directionsrc

Object typeGstPad


Properties

dtx

“dtx” gboolean

Do not send out empty packets for transmission (requires opusenc dtx=true)

Flags : Read / Write

Default value : false


The results of the search are