Source File
rtcpmuxpolicy.go
Belonging Package
github.com/pion/webrtc/v4
// SPDX-FileCopyrightText: 2023 The Pion community <https://pion.ly>// SPDX-License-Identifier: MITpackage webrtcimport ()// RTCPMuxPolicy affects what ICE candidates are gathered to support// non-multiplexed RTCP.type RTCPMuxPolicy intconst (// RTCPMuxPolicyUnknown is the enum's zero-value.RTCPMuxPolicyUnknown RTCPMuxPolicy = iota// RTCPMuxPolicyNegotiate indicates to gather ICE candidates for both// RTP and RTCP candidates. If the remote-endpoint is capable of// multiplexing RTCP, multiplex RTCP on the RTP candidates. If it is not,// use both the RTP and RTCP candidates separately.RTCPMuxPolicyNegotiate// RTCPMuxPolicyRequire indicates to gather ICE candidates only for// RTP and multiplex RTCP on the RTP candidates. If the remote endpoint is// not capable of rtcp-mux, session negotiation will fail.RTCPMuxPolicyRequire)// This is done this way because of a linter.const (rtcpMuxPolicyNegotiateStr = "negotiate"rtcpMuxPolicyRequireStr = "require")func newRTCPMuxPolicy( string) RTCPMuxPolicy {switch {case rtcpMuxPolicyNegotiateStr:return RTCPMuxPolicyNegotiatecase rtcpMuxPolicyRequireStr:return RTCPMuxPolicyRequiredefault:return RTCPMuxPolicyUnknown}}func ( RTCPMuxPolicy) () string {switch {case RTCPMuxPolicyNegotiate:return rtcpMuxPolicyNegotiateStrcase RTCPMuxPolicyRequire:return rtcpMuxPolicyRequireStrdefault:return ErrUnknownType.Error()}}// UnmarshalJSON parses the JSON-encoded data and stores the result.func ( *RTCPMuxPolicy) ( []byte) error {var stringif := json.Unmarshal(, &); != nil {return}* = newRTCPMuxPolicy()return nil}// MarshalJSON returns the JSON encoding.func ( RTCPMuxPolicy) () ([]byte, error) {return json.Marshal(.String())}
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |