Documentation
¶
Index ¶
Constants ¶
const ( DefaultRTXProbeBatchSize = 5 // Number of packets per batch DefaultRTXProbeInterval = 100 * time.Millisecond // Interval between batches DefaultRTXProbeDuration = 1 * time.Second // Total probing duration DefaultRTXProbeInitialDelay = 50 * time.Millisecond // Initial delay before probing starts )
Default RTX probing configuration
Throughput estimate with defaults: - Batches: 1000ms / 100ms = 10 batches - Packets: 10 * 5 = 50 packets - Packet size: ~12 (RTP) + ~8 (extensions) + 1 (payload) = ~21 bytes RTP - With UDP/IP: ~21 + 28 = ~49 bytes on wire - Total: 50 * 49 ≈ 2.5 KB in first second ≈ 20 kbps
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type RTXProber ¶
type RTXProber struct {
interceptor.NoOp
// contains filtered or unexported fields
}
RTXProber is an interceptor that sends RTX probe packets to help the remote peer discover RTX SSRC mappings via header extensions.
func (*RTXProber) BindLocalStream ¶
func (p *RTXProber) BindLocalStream(info *interceptor.StreamInfo, writer interceptor.RTPWriter) interceptor.RTPWriter
BindLocalStream implements interceptor.Interceptor.
func (*RTXProber) UnbindLocalStream ¶
func (p *RTXProber) UnbindLocalStream(info *interceptor.StreamInfo)
UnbindLocalStream implements interceptor.Interceptor.
type RTXProberConfig ¶
type RTXProberConfig struct {
BatchSize int // Number of packets per batch
Interval time.Duration // Interval between batches
Duration time.Duration // Total probing duration
InitialDelay time.Duration // Initial delay before probing starts
}
RTXProberConfig holds configuration for the RTX prober.
type RTXProberFactory ¶
type RTXProberFactory struct {
// contains filtered or unexported fields
}
RTXProberFactory creates RTX prober interceptors that send probe packets to help the SFU discover RTX SSRC mappings.
func NewRTXProberFactory ¶
func NewRTXProberFactory() *RTXProberFactory
NewRTXProberFactory creates a new RTX prober factory with default configuration.
func NewRTXProberFactoryWithConfig ¶
func NewRTXProberFactoryWithConfig(config RTXProberConfig) *RTXProberFactory
NewRTXProberFactoryWithConfig creates a new RTX prober factory with custom configuration.
func (*RTXProberFactory) NewInterceptor ¶
func (f *RTXProberFactory) NewInterceptor(_ string) (interceptor.Interceptor, error)
NewInterceptor creates a new RTX prober interceptor.