Browse Source

适配引擎4.4.0版本

v4
dexter 2 years ago
parent
commit
db54d6ee4d
  1. 2
      README.md
  2. 17
      subscriber.go

2
README.md

@ -16,7 +16,7 @@ https://github.com/Monibuca/plugin-webrtc
```yaml ```yaml
webrtc: webrtc:
iceservers: [] iceservers: []
publicip: [] publicip: [] # 可以是数组也可以是字符串(内部自动转成数组)
portmin: 0 portmin: 0
portmax: 0 portmax: 0
pli: 2000000000 # 2s pli: 2000000000 # 2s

17
subscriber.go

@ -40,8 +40,7 @@ func (suber *WebRTCSubscriber) OnEvent(event any) {
for _, pp := range p { for _, pp := range p {
switch pp.(type) { switch pp.(type) {
case *rtcp.PictureLossIndication: case *rtcp.PictureLossIndication:
// fmt.Println("PictureLossIndication")
fmt.Println("PictureLossIndication")
} }
} }
} }
@ -60,20 +59,16 @@ func (suber *WebRTCSubscriber) OnEvent(event any) {
suber.PeerConnection.AddTrack(suber.audioTrack) suber.PeerConnection.AddTrack(suber.audioTrack)
suber.Subscriber.AddTrack(v) //接受这个track suber.Subscriber.AddTrack(v) //接受这个track
} }
case *VideoFrame: case VideoRTP:
for _, p := range v.RTP { suber.videoTrack.WriteRTP(&v.Packet)
suber.videoTrack.Write(p.Raw) case AudioRTP:
} suber.audioTrack.WriteRTP(&v.Packet)
case *AudioFrame:
for _, p := range v.RTP {
suber.audioTrack.Write(p.Raw)
}
case ISubscriber: case ISubscriber:
suber.OnConnectionStateChange(func(pcs PeerConnectionState) { suber.OnConnectionStateChange(func(pcs PeerConnectionState) {
suber.Info("Connection State has changed:" + pcs.String()) suber.Info("Connection State has changed:" + pcs.String())
switch pcs { switch pcs {
case PeerConnectionStateConnected: case PeerConnectionStateConnected:
go suber.PlayRaw() go suber.PlayRTP()
case PeerConnectionStateDisconnected, PeerConnectionStateFailed: case PeerConnectionStateDisconnected, PeerConnectionStateFailed:
suber.Stop() suber.Stop()
suber.PeerConnection.Close() suber.PeerConnection.Close()

Loading…
Cancel
Save