mirror of
https://github.com/livekit/livekit.git
synced 2026-06-07 08:51:56 +00:00
Restore VP8 munger state properly. (#1634)
* Restore VP8 munger state properly. * clean up
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
)
|
||||
|
||||
type Null struct {
|
||||
seededState interface{}
|
||||
}
|
||||
|
||||
func NewNull(_logger logger.Logger) *Null {
|
||||
@@ -16,7 +17,12 @@ func (n *Null) GetState() interface{} {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (n *Null) SeedState(_state interface{}) {
|
||||
func (n *Null) SeedState(state interface{}) {
|
||||
n.seededState = state
|
||||
}
|
||||
|
||||
func (n *Null) GetSeededState() interface{} {
|
||||
return n.seededState
|
||||
}
|
||||
|
||||
func (n *Null) SetLast(_extPkt *buffer.ExtPacket) {
|
||||
|
||||
@@ -64,6 +64,12 @@ func NewVP8(logger logger.Logger) *VP8 {
|
||||
}
|
||||
}
|
||||
|
||||
func NewVP8FromNull(cm CodecMunger, logger logger.Logger) *VP8 {
|
||||
v := NewVP8(logger)
|
||||
v.SeedState(cm.(*Null).GetSeededState())
|
||||
return v
|
||||
}
|
||||
|
||||
func (v *VP8) GetState() interface{} {
|
||||
return VP8State{
|
||||
ExtLastPictureId: v.extLastPictureId,
|
||||
|
||||
@@ -256,7 +256,7 @@ func (f *Forwarder) DetermineCodec(codec webrtc.RTPCodecCapability, extensions [
|
||||
|
||||
switch strings.ToLower(codec.MimeType) {
|
||||
case "video/vp8":
|
||||
f.codecMunger = codecmunger.NewVP8(f.logger)
|
||||
f.codecMunger = codecmunger.NewVP8FromNull(f.codecMunger, f.logger)
|
||||
if f.vls != nil {
|
||||
f.vls = videolayerselector.NewSimulcastFromNull(f.vls)
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user