Enums
String enums of the specifications.
Members compare equal to their spec strings and print as them: RTCSignalingState.have_local_offer ==
'have-local-offer' . Hyphens in the values become underscores in the member names. Parameters that take an enum take
its string value too, as typed by the ...Value literal next to it.
class webrtc.enums. RTCPeerConnectionState
The overall state of a connection, combined from its ICE and DTLS transports.
See MDN: RTCPeerConnection/connectionState .
new = 'new'
No transport has started connecting yet
connecting = 'connecting'
A transport is connecting, and none has failed
connected = 'connected'
Every transport in use is connected
disconnected = 'disconnected'
A transport lost connectivity, and may recover
failed = 'failed'
A transport failed and needs an ICE restart
closed = 'closed'
The connection was closed
class webrtc.enums. RTCSignalingState
Where a connection is in the offer/answer exchange.
See MDN: RTCPeerConnection/signalingState .
stable = 'stable'
No offer/answer exchange is in progress
have_local_offer = 'have-local-offer'
A local offer is set, waiting for an answer
have_local_pranswer = 'have-local-pranswer'
A remote offer and a local provisional answer are set
have_remote_offer = 'have-remote-offer'
A remote offer is set, waiting for a local answer
have_remote_pranswer = 'have-remote-pranswer'
A local offer and a remote provisional answer are set
closed = 'closed'
The connection was closed
class webrtc.enums. RTCIceConnectionState
The state of the ICE transports of a connection, taken together.
See MDN: RTCPeerConnection/iceConnectionState .
new = 'new'
No transport is checking candidates yet
checking = 'checking'
A transport is checking candidate pairs, and none is connected
connected = 'connected'
Every transport has a usable pair
completed = 'completed'
Every transport finished checking and has a usable pair
failed = 'failed'
A transport found no usable pair
disconnected = 'disconnected'
A transport lost connectivity, and may recover
closed = 'closed'
The connection was closed
class webrtc.enums. RTCIceGatheringState
The candidate gathering state of the ICE transports of a connection, taken together.
See MDN: RTCPeerConnection/iceGatheringState .
new = 'new'
No transport has started gathering
gathering = 'gathering'
A transport is gathering candidates
complete = 'complete'
Every transport finished gathering
class webrtc.enums. RTCSdpType
The type of a session description.
See MDN: RTCSessionDescription/type .
offer = 'offer'
An offer, which starts an exchange
pranswer = 'pranswer'
A provisional answer, which can still be replaced
answer = 'answer'
The final answer, which ends an exchange
rollback = 'rollback'
Discards a pending offer and returns to the last stable state
webrtc.enums. RTCSdpTypeValue
The string values of RTCSdpType , which parameters accept in place of its members
alias of Literal [‘offer’, ‘pranswer’, ‘answer’, ‘rollback’]
class webrtc.enums. MediaStreamTrackState
Whether a track still delivers media.
See MDN: MediaStreamTrack/readyState .
live = 'live'
The track delivers media, or will when it’s unmuted
ended = 'ended'
The track was stopped or its source ended, and it won’t deliver media again
class webrtc.enums. MediaStreamSourceState
The state of the native source of a track. This library adds it. The specifications have no such enum.
initializing = 'initializing'
The source is starting
live = 'live'
The source produces media
ended = 'ended'
The source stopped permanently
muted = 'muted'
The source produces no media for now
class webrtc.enums. RTCRtpTransceiverDirection
Whether a transceiver sends media, receives it, both or neither.
See MDN: RTCRtpTransceiver/direction .
sendrecv = 'sendrecv'
Sends and receives
sendonly = 'sendonly'
Sends only
recvonly = 'recvonly'
Receives only
inactive = 'inactive'
Neither sends nor receives
stopped = 'stopped'
Stopped, which isn’t a direction that can be set
webrtc.enums. RTCRtpTransceiverDirectionValue
The string values of RTCRtpTransceiverDirection , which parameters accept in place of its members
alias of Literal [‘sendrecv’, ‘sendonly’, ‘recvonly’, ‘inactive’, ‘stopped’]
class webrtc.enums. MediaType
The kind of a track or a transceiver.
Tracks are audio or video. The data and unsupported kinds come from the media sections of the native WebRTC engine.
See MDN: MediaStreamTrack/kind .
audio = 'audio'
Audio
video = 'video'
Video
data = 'data'
The media section of data channels
unsupported = 'unsupported'
A media section of a kind the native WebRTC engine doesn’t handle
webrtc.enums. MediaTypeValue
The string values of MediaType , which parameters accept in place of its members
alias of Literal [‘audio’, ‘video’, ‘data’, ‘unsupported’]
class webrtc.enums. MediaDeviceKind
The kind of a media device.
See MDN: MediaDeviceInfo/kind .
audioinput = 'audioinput'
A microphone or another audio input
audiooutput = 'audiooutput'
Speakers, headphones or another audio output
videoinput = 'videoinput'
A camera or another video input
class webrtc.enums. VideoFacingModeEnum
The direction a camera faces, relative to the user.
See MDN: MediaTrackConstraints/facingMode .
user = 'user'
Towards the user, like a front camera
environment = 'environment'
Away from the user, like a back camera
left = 'left'
Towards the left of the user
right = 'right'
Towards the right of the user
class webrtc.enums. VideoResizeModeEnum
Whether the video of a source may be cropped and scaled to meet the constraints of a track.
none = 'none'
The video keeps the resolution and frame rate of the source
crop_and_scale = 'crop-and-scale'
The video may be cropped, scaled down and have frames dropped
class webrtc.enums. EchoCancellationModeEnum
Which audio played out is removed as echo from a microphone.
See MDN: MediaTrackConstraints/echoCancellation .
all = 'all'
Any audio the system plays
remote_only = 'remote-only'
Only the audio received from remote peers
class webrtc.enums. RTCIceComponent
Whether an ICE transport or candidate carries RTP or RTCP.
See MDN: RTCIceCandidate/component .
rtp = 'rtp'
RTP, or RTP and RTCP multiplexed together
rtcp = 'rtcp'
RTCP on its own transport
class webrtc.enums. RTCIceRole
The role of an ICE agent. The controlling agent picks the candidate pair.
See MDN: RTCIceTransport/role .
controlling = 'controlling'
Nominates the candidate pair in use
controlled = 'controlled'
Accepts the pair the other agent nominates
unknown = 'unknown'
Not decided yet
class webrtc.enums. RTCIceTransportState
The state of an ICE transport.
See MDN: RTCIceTransport/state .
new = 'new'
The transport is gathering candidates or waiting for remote ones, and hasn’t started checks
checking = 'checking'
Candidate pairs are being checked, and none works yet
connected = 'connected'
A usable pair was found, and checks may go on
completed = 'completed'
Checks finished, and a usable pair was found
disconnected = 'disconnected'
Connectivity was lost, and may recover
failed = 'failed'
Checks finished without a usable pair
closed = 'closed'
The transport was closed
class webrtc.enums. RTCIceGathererState
The candidate gathering state of an ICE transport.
See MDN: RTCIceTransport/gatheringState .
new = 'new'
Gathering hasn’t started
gathering = 'gathering'
Candidates are being gathered
complete = 'complete'
Gathering finished
class webrtc.enums. RTCDtlsTransportState
The state of a DTLS transport.
See MDN: RTCDtlsTransport/state .
new = 'new'
The handshake hasn’t started
connecting = 'connecting'
The handshake is in progress
connected = 'connected'
The handshake succeeded
closed = 'closed'
Either side closed the transport
failed = 'failed'
The handshake or the fingerprint check failed
class webrtc.enums. RTCSctpTransportState
The state of an SCTP transport.
See MDN: RTCSctpTransport/state .
connecting = 'connecting'
The association is being set up
connected = 'connected'
The association is up, and channels can open
closed = 'closed'
The association was closed
class webrtc.enums. RTCDataChannelState
The state of a data channel.
See MDN: RTCDataChannel/readyState .
connecting = 'connecting'
The channel is being opened, and messages can’t be sent yet
open = 'open'
Messages can be sent and received
closing = 'closing'
The channel will close once the messages already queued are sent
closed = 'closed'
The channel was closed, or couldn’t be opened
class webrtc.enums. RTCPriorityType
The priority of a data channel or an encoding, relative to the others of the connection.
Each level gets twice the bandwidth share of the one below it.
See MDN: RTCRtpSender/setParameters .
very_low = 'very-low'
The lowest priority, with half the share of low
low = 'low'
The default priority
medium = 'medium'
Twice the share of low
high = 'high'
Four times the share of low
webrtc.enums. RTCPriorityTypeValue
The string values of RTCPriorityType , which parameters accept in place of its members
alias of Literal [‘very-low’, ‘low’, ‘medium’, ‘high’]
class webrtc.enums. RTCDegradationPreference
What a video sender gives up first when bandwidth or CPU runs short.
See MDN: RTCRtpSender/setParameters .
maintain_framerate = 'maintain-framerate'
Keeps the frame rate and lowers the resolution
maintain_resolution = 'maintain-resolution'
Keeps the resolution and lowers the frame rate
balanced = 'balanced'
Lowers both, as the native WebRTC engine sees fit
maintain_framerate_and_resolution = 'maintain-framerate-and-resolution'
Keeps both and lowers only the quality of the encoding
webrtc.enums. RTCDegradationPreferenceValue
The string values of RTCDegradationPreference , which parameters accept in place of its members
alias of Literal [‘maintain-framerate’, ‘maintain-resolution’, ‘balanced’, ‘maintain-framerate-and-resolution’]
class webrtc.enums. RTCIceTransportPolicy
Which ICE candidates a connection may use.
See MDN: RTCPeerConnection/RTCPeerConnection .
all = 'all'
Any candidate
relay = 'relay'
Only candidates relayed through a TURN server, which hides the host’s addresses
webrtc.enums. RTCIceTransportPolicyValue
The string values of RTCIceTransportPolicy , which parameters accept in place of its members
alias of Literal [‘all’, ‘relay’]
class webrtc.enums. RTCBundlePolicy
How media sections share transports when the remote peer may not support bundling.
See MDN: RTCPeerConnection/RTCPeerConnection .
balanced = 'balanced'
A transport per media kind until the remote peer accepts bundling
max_compat = 'max-compat'
A transport per media section until the remote peer accepts bundling
max_bundle = 'max-bundle'
One transport for every media section, which needs a remote peer that supports bundling
webrtc.enums. RTCBundlePolicyValue
The string values of RTCBundlePolicy , which parameters accept in place of its members
alias of Literal [‘balanced’, ‘max-compat’, ‘max-bundle’]
class webrtc.enums. RTCRtcpMuxPolicy
Whether RTCP shares the transport of RTP.
See MDN: RTCPeerConnection/RTCPeerConnection .
negotiate = 'negotiate'
RTCP may use its own transport; removed from the specification
require = 'require'
RTCP shares the transport of RTP, and a remote description without RTCP multiplexing fails
webrtc.enums. RTCRtcpMuxPolicyValue
The string values of RTCRtcpMuxPolicy , which parameters accept in place of its members
alias of Literal [‘negotiate’, ‘require’]
Whether RTP header extensions are encrypted with cryptex (RFC 9335).
Never encrypts them
Encrypts them when the remote peer supports it
Always encrypts them, so a remote description without cryptex fails
The string values of RTCRtpHeaderEncryptionPolicy , which parameters accept in place of its members
alias of Literal [‘disable’, ‘negotiate’, ‘require’]
class webrtc.enums. RTCIceCandidateType
Where the address of an ICE candidate comes from.
See MDN: RTCIceCandidate/type .
host = 'host'
An address of a local network interface
srflx = 'srflx'
The public address a STUN server saw (server reflexive)
prflx = 'prflx'
An address learned from the checks of the remote peer (peer reflexive)
relay = 'relay'
An address allocated on a TURN server
class webrtc.enums. RTCIceProtocol
The transport protocol of an ICE candidate.
See MDN: RTCIceCandidate/protocol .
udp = 'udp'
UDP
tcp = 'tcp'
TCP
class webrtc.enums. RTCIceTcpCandidateType
How a TCP ICE candidate opens its connections.
See MDN: RTCIceCandidate/tcpType .
active = 'active'
Opens connections but doesn’t accept them
passive = 'passive'
Accepts connections but doesn’t open them
so = 'so'
Both sides try to open the connection at once (simultaneous open)
class webrtc.enums. RTCIceServerTransportProtocol
The protocol between the client and the TURN server of a relay candidate.
See MDN: RTCIceCandidateStats/relayProtocol .
udp = 'udp'
UDP
tcp = 'tcp'
TCP
tls = 'tls'
TLS over TCP
webrtc.enums. RTCIceServerTransportProtocolValue
The string values of RTCIceServerTransportProtocol , which parameters accept in place of its members
alias of Literal [‘udp’, ‘tcp’, ‘tls’]
class webrtc.enums. RTCStatsType
The type of a stats object, which tells which stats class it is.
See MDN: RTCStatsReport .
codec = 'codec'
webrtc.RTCCodecStats
inbound_rtp = 'inbound-rtp'
webrtc.RTCInboundRtpStreamStats
outbound_rtp = 'outbound-rtp'
webrtc.RTCOutboundRtpStreamStats
remote_inbound_rtp = 'remote-inbound-rtp'
webrtc.RTCRemoteInboundRtpStreamStats
remote_outbound_rtp = 'remote-outbound-rtp'
webrtc.RTCRemoteOutboundRtpStreamStats
media_source = 'media-source'
webrtc.RTCAudioSourceStats or webrtc.RTCVideoSourceStats
media_playout = 'media-playout'
webrtc.RTCAudioPlayoutStats
peer_connection = 'peer-connection'
webrtc.RTCPeerConnectionStats
data_channel = 'data-channel'
webrtc.RTCDataChannelStats
transport = 'transport'
webrtc.RTCTransportStats
candidate_pair = 'candidate-pair'
webrtc.RTCIceCandidatePairStats
local_candidate = 'local-candidate'
webrtc.RTCIceCandidateStats of a local candidate
remote_candidate = 'remote-candidate'
webrtc.RTCIceCandidateStats of a remote candidate
certificate = 'certificate'
webrtc.RTCCertificateStats
class webrtc.enums. RTCQualityLimitationReason
What limits the resolution or frame rate of a video sender the most.
See MDN: RTCOutboundRtpStreamStats/qualityLimitationReason .
none = 'none'
Nothing
cpu = 'cpu'
The CPU, which can’t encode fast enough
bandwidth = 'bandwidth'
The estimated bandwidth
other = 'other'
Something else
class webrtc.enums. RTCDtlsRole
The role of a DTLS transport in the handshake.
See MDN: RTCTransportStats/dtlsRole .
client = 'client'
Starts the handshake
server = 'server'
Answers the handshake
unknown = 'unknown'
Not decided yet
class webrtc.enums. RTCStatsIceCandidatePairState
The state of an ICE candidate pair in the checklist.
See MDN: RTCIceCandidatePairStats/state .
frozen = 'frozen'
Waits for a check of another pair of the same foundation
waiting = 'waiting'
Waits to be checked
in_progress = 'in-progress'
Being checked
failed = 'failed'
The check failed
succeeded = 'succeeded'
The check succeeded
class webrtc.enums. RTCErrorDetailType
The WebRTC-specific cause of an webrtc.RTCError .
See MDN: RTCError/errorDetail .
data_channel_failure = 'data-channel-failure'
A data channel failed (see webrtc.RTCError.sctp_cause_code )
dtls_failure = 'dtls-failure'
The DTLS handshake failed or a DTLS alert was received
fingerprint_failure = 'fingerprint-failure'
The certificate of the remote peer doesn’t match the fingerprint of its description
sctp_failure = 'sctp-failure'
The SCTP association failed (see webrtc.RTCError.sctp_cause_code )
sdp_syntax_error = 'sdp-syntax-error'
A description doesn’t parse (see webrtc.RTCError.sdp_line_number )
hardware_encoder_not_available = 'hardware-encoder-not-available'
A hardware encoder was required and none is available
hardware_encoder_error = 'hardware-encoder-error'
The hardware encoder failed
webrtc.enums. RTCErrorDetailTypeValue
The string values of webrtc.RTCErrorDetailType , which parameters accept in place of its members
alias of Literal [‘data-channel-failure’, ‘dtls-failure’, ‘fingerprint-failure’, ‘sctp-failure’, ‘sdp-syntax-error’, ‘hardware-encoder-not-available’, ‘hardware-encoder-error’]
class webrtc.enums. BinaryType
What the binary messages of a webrtc.RTCDataChannel are delivered as.
See MDN: RTCDataChannel/binaryType .
arraybuffer = 'arraybuffer'
bytes
blob = 'blob'
webrtc.Blob
webrtc.enums. BinaryTypeValue
The string values of BinaryType , which parameters accept in place of its members
alias of Literal [‘arraybuffer’, ‘blob’]
class webrtc.enums. EndingType
How a webrtc.Blob writes the line endings of its string parts.
See MDN: Blob/Blob .
transparent = 'transparent'
As they are
native = 'native'
As the platform’s, which are \r\n on Windows and \n elsewhere
webrtc.enums. EndingTypeValue
The string values of EndingType , which parameters accept in place of its members
alias of Literal [‘transparent’, ‘native’]
class webrtc.enums. VideoPixelFormat
The layout of the pixels of a webrtc.VideoFrame .
I4xx formats are planar Y, U and V, plus alpha with A . Chroma is subsampled 4:2:0 in I420 and
4:2:2 in I422 , and has full resolution in I444 . Samples are 8-bit, or 10- and 12-bit stored in 16 bits
with P10 and P12 .
See MDN: VideoFrame/format .
I420 = 'I420'
8-bit Y, U, V, 4:2:0
I420P10 = 'I420P10'
10-bit Y, U, V, 4:2:0
I420P12 = 'I420P12'
12-bit Y, U, V, 4:2:0
I420A = 'I420A'
8-bit Y, U, V, alpha, 4:2:0
I420AP10 = 'I420AP10'
10-bit Y, U, V, alpha, 4:2:0
I420AP12 = 'I420AP12'
12-bit Y, U, V, alpha, 4:2:0
I422 = 'I422'
8-bit Y, U, V, 4:2:2
I422P10 = 'I422P10'
10-bit Y, U, V, 4:2:2
I422P12 = 'I422P12'
12-bit Y, U, V, 4:2:2
I422A = 'I422A'
8-bit Y, U, V, alpha, 4:2:2
I422AP10 = 'I422AP10'
10-bit Y, U, V, alpha, 4:2:2
I422AP12 = 'I422AP12'
12-bit Y, U, V, alpha, 4:2:2
I444 = 'I444'
8-bit Y, U, V, 4:4:4
I444P10 = 'I444P10'
10-bit Y, U, V, 4:4:4
I444P12 = 'I444P12'
12-bit Y, U, V, 4:4:4
I444A = 'I444A'
8-bit Y, U, V, alpha, 4:4:4
I444AP10 = 'I444AP10'
10-bit Y, U, V, alpha, 4:4:4
I444AP12 = 'I444AP12'
12-bit Y, U, V, alpha, 4:4:4
NV12 = 'NV12'
8-bit Y plane and a plane of interleaved U and V, 4:2:0
RGBA = 'RGBA'
8-bit red, green, blue and alpha per pixel
RGBX = 'RGBX'
8-bit red, green, blue and an unused byte per pixel
BGRA = 'BGRA'
8-bit blue, green, red and alpha per pixel
BGRX = 'BGRX'
8-bit blue, green, red and an unused byte per pixel
webrtc.enums. VideoPixelFormatValue
The string values of VideoPixelFormat , which parameters accept in place of its members
alias of Literal [‘I420’, ‘I420P10’, ‘I420P12’, ‘I420A’, ‘I420AP10’, ‘I420AP12’, ‘I422’, ‘I422P10’, ‘I422P12’, ‘I422A’, ‘I422AP10’, ‘I422AP12’, ‘I444’, ‘I444P10’, ‘I444P12’, ‘I444A’, ‘I444AP10’, ‘I444AP12’, ‘NV12’, ‘RGBA’, ‘RGBX’, ‘BGRA’, ‘BGRX’]
class webrtc.enums. VideoColorPrimaries
The color primaries of a webrtc.VideoColorSpace .
See MDN: VideoColorSpace/primaries .
bt709 = 'bt709'
BT.709, used by HD video and sRGB
bt470bg = 'bt470bg'
BT.470 B/G, used by PAL video
smpte170m = 'smpte170m'
SMPTE 170M, used by NTSC video
bt2020 = 'bt2020'
BT.2020, used by UHD video
smpte432 = 'smpte432'
SMPTE EG 432-1, used by Display P3
webrtc.enums. VideoColorPrimariesValue
The string values of VideoColorPrimaries , which parameters accept in place of its members
alias of Literal [‘bt709’, ‘bt470bg’, ‘smpte170m’, ‘bt2020’, ‘smpte432’]
class webrtc.enums. VideoTransferCharacteristics
The transfer characteristics of a webrtc.VideoColorSpace .
See MDN: VideoColorSpace/transfer .
bt709 = 'bt709'
BT.709
smpte170m = 'smpte170m'
SMPTE 170M
iec61966_2_1 = 'iec61966-2-1'
IEC 61966-2-1, the sRGB curve
linear = 'linear'
Linear light
pq = 'pq'
Perceptual quantizer (SMPTE ST 2084), used by HDR video
hlg = 'hlg'
Hybrid log-gamma (ARIB STD-B67), used by HDR video
webrtc.enums. VideoTransferCharacteristicsValue
The string values of VideoTransferCharacteristics , which parameters accept in place of its members
alias of Literal [‘bt709’, ‘smpte170m’, ‘iec61966-2-1’, ‘linear’, ‘pq’, ‘hlg’]
class webrtc.enums. VideoMatrixCoefficients
The matrix coefficients of a webrtc.VideoColorSpace , which convert between RGB and YUV.
See MDN: VideoColorSpace/matrix .
rgb = 'rgb'
No conversion, because the samples are already RGB
bt709 = 'bt709'
BT.709
bt470bg = 'bt470bg'
BT.470 B/G
smpte170m = 'smpte170m'
SMPTE 170M
bt2020_ncl = 'bt2020-ncl'
BT.2020, non-constant luminance
webrtc.enums. VideoMatrixCoefficientsValue
The string values of VideoMatrixCoefficients , which parameters accept in place of its members
alias of Literal [‘rgb’, ‘bt709’, ‘bt470bg’, ‘smpte170m’, ‘bt2020-ncl’]
class webrtc.enums. AlphaOption
Whether a webrtc.VideoFrame created from another one keeps its alpha channel.
See MDN: VideoFrame/VideoFrame .
keep = 'keep'
Keeps the alpha channel
discard = 'discard'
Drops the alpha channel and uses the matching format without alpha
webrtc.enums. AlphaOptionValue
The string values of AlphaOption , which parameters accept in place of its members
alias of Literal [‘keep’, ‘discard’]
class webrtc.enums. PredefinedColorSpace
The color space webrtc.VideoFrame.copy_to() writes RGB pixels in. Only srgb is supported.
See MDN: VideoFrame/copyTo .
srgb = 'srgb'
sRGB
srgb_linear = 'srgb-linear'
sRGB primaries with linear light
display_p3 = 'display-p3'
Display P3
display_p3_linear = 'display-p3-linear'
Display P3 primaries with linear light
webrtc.enums. PredefinedColorSpaceValue
The string values of PredefinedColorSpace , which parameters accept in place of its members
alias of Literal [‘srgb’, ‘srgb-linear’, ‘display-p3’, ‘display-p3-linear’]
class webrtc.enums. AudioSampleFormat
The type of the samples of an webrtc.AudioData , and whether channels are interleaved or planar.
See MDN: AudioData/format .
u8 = 'u8'
Unsigned 8-bit, interleaved
s16 = 's16'
Signed 16-bit, interleaved
s32 = 's32'
Signed 32-bit, interleaved
f32 = 'f32'
32-bit float, interleaved
u8_planar = 'u8-planar'
Unsigned 8-bit, a plane per channel
s16_planar = 's16-planar'
Signed 16-bit, a plane per channel
s32_planar = 's32-planar'
Signed 32-bit, a plane per channel
f32_planar = 'f32-planar'
32-bit float, a plane per channel
webrtc.enums. AudioSampleFormatValue
The string values of AudioSampleFormat , which parameters accept in place of its members
alias of Literal [‘u8’, ‘s16’, ‘s32’, ‘f32’, ‘u8-planar’, ‘s16-planar’, ‘s32-planar’, ‘f32-planar’]
class webrtc.enums. ReadableStreamReaderMode
The type of reader webrtc.ReadableStream.get_reader() returns. Its only member is rejected.
See MDN: ReadableStream/getReader .
byob = 'byob'
A reader that fills a buffer of the caller. It needs a byte stream, and this library has none
webrtc.enums. ReadableStreamReaderModeValue
The string values of ReadableStreamReaderMode , which parameters accept in place of its members
alias of Literal [‘byob’]
class webrtc.enums. EncodedVideoChunkType
Whether an encoded video frame is a key frame.
See MDN: RTCEncodedVideoFrame/type .
key = 'key'
A key frame, which decodes on its own
delta = 'delta'
A delta frame, which needs the frames before it
class webrtc.enums. RTCRtpScriptTransformType
What the worker of an webrtc.RTCRtpScriptTransform outputs.
The value is accepted but has no effect. Frames are packetized as usual, because the native WebRTC engine has
no SFrame packetization.
sframe = 'sframe'
The worker outputs SFrame-encrypted frames
webrtc.enums. RTCRtpScriptTransformTypeValue
The string values of RTCRtpScriptTransformType , which parameters accept in place of its members
alias of Literal [‘sframe’]
class webrtc.enums. SFrameCipherSuite
An SFrame cipher suite of RFC 9605 or draft-barnes-sframe-iana-256.
The CTR suites authenticate with a truncated HMAC tag, whose bit length ends the name. The GCM suites use a
128-bit tag.
AES_128_CTR_HMAC_SHA256_80 = 'AES_128_CTR_HMAC_SHA256_80'
AES-128-CTR, HMAC-SHA-256, 80-bit tag
AES_128_CTR_HMAC_SHA256_64 = 'AES_128_CTR_HMAC_SHA256_64'
AES-128-CTR, HMAC-SHA-256, 64-bit tag
AES_128_CTR_HMAC_SHA256_32 = 'AES_128_CTR_HMAC_SHA256_32'
AES-128-CTR, HMAC-SHA-256, 32-bit tag
AES_128_GCM_SHA256_128 = 'AES_128_GCM_SHA256_128'
AES-128-GCM, SHA-256 key derivation, 128-bit tag
AES_256_GCM_SHA512_128 = 'AES_256_GCM_SHA512_128'
AES-256-GCM, SHA-512 key derivation, 128-bit tag
AES_256_CTR_HMAC_SHA512_80 = 'AES_256_CTR_HMAC_SHA512_80'
AES-256-CTR, HMAC-SHA-512, 80-bit tag
AES_256_CTR_HMAC_SHA512_64 = 'AES_256_CTR_HMAC_SHA512_64'
AES-256-CTR, HMAC-SHA-512, 64-bit tag
AES_256_CTR_HMAC_SHA512_32 = 'AES_256_CTR_HMAC_SHA512_32'
AES-256-CTR, HMAC-SHA-512, 32-bit tag
webrtc.enums. SFrameCipherSuiteValue
The string values of SFrameCipherSuite , which parameters accept in place of its members
alias of Literal [‘AES_128_CTR_HMAC_SHA256_80’, ‘AES_128_CTR_HMAC_SHA256_64’, ‘AES_128_CTR_HMAC_SHA256_32’, ‘AES_128_GCM_SHA256_128’, ‘AES_256_GCM_SHA512_128’, ‘AES_256_CTR_HMAC_SHA512_80’, ‘AES_256_CTR_HMAC_SHA512_64’, ‘AES_256_CTR_HMAC_SHA512_32’]
class webrtc.enums. SFrameType
Whether an webrtc.RTCRtpSFrameEncryptor encrypts whole frames or each RTP packet.
per_frame = 'per-frame'
Encrypts each frame before packetization
per_packet = 'per-packet'
Would encrypt each RTP packet, but isn’t supported because the native WebRTC engine has no SFrame packetization
webrtc.enums. SFrameTypeValue
The string values of SFrameType , which parameters accept in place of its members
alias of Literal [‘per-frame’, ‘per-packet’]
class webrtc.enums. SFrameTransformErrorEventType
Why an SFrame decryptor dropped a frame.
authentication = 'authentication'
The frame didn’t authenticate with the key of its key id
key_id = 'keyID'
No key is set for the key id of the frame
syntax = 'syntax'
The frame isn’t valid SFrame
webrtc.enums. SFrameTransformErrorEventTypeValue
The string values of SFrameTransformErrorEventType , which parameters accept in place of its members
alias of Literal [‘authentication’, ‘keyID’, ‘syntax’]