interceptor

package
v2.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 2, 2024 License: Apache-2.0 Imports: 9 Imported by: 3

Documentation

Index

Constants

View Source
const (
	MaxPayloadSize = 1200
)

Variables

View Source
var ErrPayloadSizeTooLarge = fmt.Errorf("packetization payload size should not greater than %d bytes", MaxPayloadSize)

Functions

This section is empty.

Types

type LimitSizeInterceptor

type LimitSizeInterceptor struct {
	interceptor.NoOp
}

func (*LimitSizeInterceptor) BindLocalStream

type LimitSizeInterceptorFactory

type LimitSizeInterceptorFactory struct {
}

func NewLimitSizeInterceptorFactory

func NewLimitSizeInterceptorFactory() *LimitSizeInterceptorFactory

func (*LimitSizeInterceptorFactory) NewInterceptor

type NackGeneratorInterceptor

type NackGeneratorInterceptor struct {
	interceptor.NoOp
	// contains filtered or unexported fields
}

func NewNackGeneratorInterceptor

func NewNackGeneratorInterceptor() (*NackGeneratorInterceptor, error)

func (*NackGeneratorInterceptor) BindRTCPWriter

func (*NackGeneratorInterceptor) BindRemoteStream

func (*NackGeneratorInterceptor) SetRTT

func (n *NackGeneratorInterceptor) SetRTT(rtt uint32)

func (*NackGeneratorInterceptor) UnbindRemoteStream

func (n *NackGeneratorInterceptor) UnbindRemoteStream(info *interceptor.StreamInfo)

type NackGeneratorInterceptorFactory

type NackGeneratorInterceptorFactory struct {
	// contains filtered or unexported fields
}

func (*NackGeneratorInterceptorFactory) NewInterceptor

NewInterceptor constructs a new ReceiverInterceptor

func (*NackGeneratorInterceptorFactory) SetRTT

func (g *NackGeneratorInterceptorFactory) SetRTT(rtt uint32)

type PacerInterceptor

type PacerInterceptor struct {
	interceptor.NoOp
	// contains filtered or unexported fields
}

PacerInterceptor is an interceptor that paces outgoing packets to avoid congestion on the bursty traffic of huge frames.

func (*PacerInterceptor) BindLocalStream

func (pi *PacerInterceptor) BindLocalStream(stream *interceptor.StreamInfo, writer interceptor.RTPWriter) interceptor.RTPWriter

func (*PacerInterceptor) BindRTCPWriter

func (pi *PacerInterceptor) BindRTCPWriter(writer interceptor.RTCPWriter) interceptor.RTCPWriter

BindRTCPWriter lets you modify any outgoing RTCP packets. It is called once per PeerConnection. The returned method will be called once per packet batch.

func (*PacerInterceptor) Close

func (pi *PacerInterceptor) Close() error

type PacerInterceptorFactory

type PacerInterceptorFactory struct {
	// contains filtered or unexported fields
}

func NewPacerInterceptorFactory

func NewPacerInterceptorFactory(pacer pacer.Factory) *PacerInterceptorFactory

func (*PacerInterceptorFactory) NewInterceptor

func (p *PacerInterceptorFactory) NewInterceptor(id string) (interceptor.Interceptor, error)

type PacketPool

type PacketPool struct {
	// contains filtered or unexported fields
}

func NewPacketPool

func NewPacketPool(size ...int) *PacketPool

func (*PacketPool) Get

func (p *PacketPool) Get(size int) (*[]byte, *sync.Pool)

type RTTInterceptor

type RTTInterceptor struct {
	interceptor.NoOp
	// contains filtered or unexported fields
}

func NewRTTInterceptor

func NewRTTInterceptor(onRttUpdate func(rtt uint32)) *RTTInterceptor

func (*RTTInterceptor) BindRTCPReader

func (r *RTTInterceptor) BindRTCPReader(reader interceptor.RTCPReader) interceptor.RTCPReader

type RTTInterceptorFactory

type RTTInterceptorFactory struct {
	// contains filtered or unexported fields
}

func NewRTTInterceptorFactory

func NewRTTInterceptorFactory(onRttUpdate func(rtt uint32)) *RTTInterceptorFactory

func (*RTTInterceptorFactory) NewInterceptor

func (r *RTTInterceptorFactory) NewInterceptor(_ string) (interceptor.Interceptor, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL