rtpgccbwe
Implements the Google Congestion Control algorithm.
This element should always be placed right before a rtpsession
and will only work
when twcc is enabled
as the bandwidth estimation relies on it.
This element implements the pacing as describe in the spec by running its
own streaming thread on its srcpad. It implements the mathematic as closely
to the specs as possible and sets the estimated-bitrate property
each time a new estimate is produced. User should connect to the
rtpgccbwe::notify::estimated-bitrate
signal to make the encoders target
that new estimated bitrate (the overall target bitrate of the potentially
multiple encoders should match that target bitrate, the application is
responsible for determining what bitrate to give to each encode)
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──rtpgccbwe
Factory details
Authors: – Thibault Saunier
Classification: – Network/WebRTC/RTP/Filter
Rank – none
Plugin – rsrtp
Package – gst-plugin-rtp
Pad Templates
Properties
estimated-bitrate
“estimated-bitrate” guint
Currently estimated bitrate. Can be set before starting the element to configure the starting bitrate, in which case the encoder should also use it as target bitrate
Flags : Read / Write
Default value : 2048000
estimator
“estimator” Rtp-gccbw-eestimator *
How to calculate the delay estimate that will be compared against the dynamic delay threshold.
Flags : Read / Write
Default value : kalman (0)
max-bitrate
“max-bitrate” guint
Maximum bitrate to use (in bit/sec) when computing it through the bandwidth estimation algorithm
Flags : Read / Write
Default value : 8192000
min-bitrate
“min-bitrate” guint
Minimal bitrate to use (in bit/sec) when computing it through the bandwidth estimation algorithm
Flags : Read / Write
Default value : 1000
Named constants
Rtp-gccbw-eestimator
Members
kalman
(0) – Use Kalman filter
linear-regression
(1) – Use linear regression slope
The results of the search are