MCPcopy
hub / github.com/pion/webrtc / SetCodecPreferences

Method SetCodecPreferences

rtptransceiver.go:54–69  ·  view source on GitHub ↗

SetCodecPreferences sets preferred list of supported codecs if codecs is empty or nil we reset to default from MediaEngine.

(codecs []RTPCodecParameters)

Source from the content-addressed store, hash-verified

52// SetCodecPreferences sets preferred list of supported codecs
53// if codecs is empty or nil we reset to default from MediaEngine.
54func (t *RTPTransceiver) SetCodecPreferences(codecs []RTPCodecParameters) error {
55 t.mu.Lock()
56 defer t.mu.Unlock()
57
58 for _, codec := range codecs {
59 if _, matchType := codecParametersFuzzySearch(
60 codec, t.api.mediaEngine.getCodecsByKind(t.kind),
61 ); matchType == codecMatchNone {
62 return fmt.Errorf("%w %s", errRTPTransceiverCodecUnsupported, codec.MimeType)
63 }
64 }
65
66 t.codecs = filterUnattachedRTX(codecs)
67
68 return nil
69}
70
71// getCodecs returns list of supported codecs.
72func (t *RTPTransceiver) getCodecs() []RTPCodecParameters {

Calls 4

filterUnattachedRTXFunction · 0.85
getCodecsByKindMethod · 0.80
ErrorfMethod · 0.45