mirror of
https://github.com/livekit/livekit.git
synced 2026-03-30 19:55:41 +00:00
Use abs-send-time RTP header extension for video downstream (#149)
- Update ion-sfu to v1.20.14 - Enable `abs-send-time` for video tracks Reference: ion-sfu PR - https://github.com/livekit/ion-sfu/pull/12 Testing: -------- - Look at SDP offer in subscriber PC and ensure that abs-send-time is negotiated. - Ensure that downstream packets have `abs-send-time` extension for video packets. TODO: ----- - Not yet setting this for audio tracks. Eventually we want to move to TWCC. This is just a step along the way.
This commit is contained in:
@@ -87,6 +87,15 @@ func createPubMediaEngine(codecs []*livekit.Codec) (*webrtc.MediaEngine, error)
|
||||
|
||||
func createSubMediaEngine() (*webrtc.MediaEngine, error) {
|
||||
me := &webrtc.MediaEngine{}
|
||||
|
||||
for _, extension := range []string{
|
||||
sdp.ABSSendTimeURI,
|
||||
} {
|
||||
if err := me.RegisterHeaderExtension(webrtc.RTPHeaderExtensionCapability{URI: extension}, webrtc.RTPCodecTypeVideo); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
|
||||
return me, nil
|
||||
}
|
||||
|
||||
|
||||
@@ -205,6 +205,9 @@ func (t *MediaTrack) AddSubscriber(sub types.Participant) error {
|
||||
}
|
||||
}
|
||||
|
||||
sendParameters := sender.GetParameters()
|
||||
downTrack.SetRTPHeaderExtensions(sendParameters.HeaderExtensions)
|
||||
|
||||
downTrack.SetTransceiver(transceiver)
|
||||
// when outtrack is bound, start loop to send reports
|
||||
downTrack.OnBind(func() {
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
// Code generated by Wire. DO NOT EDIT.
|
||||
|
||||
//go:generate go run github.com/google/wire/cmd/wire
|
||||
//+build !wireinject
|
||||
//go:build !wireinject
|
||||
// +build !wireinject
|
||||
|
||||
package service
|
||||
|
||||
|
||||
Reference in New Issue
Block a user