Only send PLIs for video tracks in examples

This commit is contained in:
Tristan Matthews
2024-08-15 16:50:10 -04:00
committed by Sean DuBois
parent ddb9219c84
commit d54f7870eb
2 changed files with 15 additions and 11 deletions

View File

@@ -111,16 +111,18 @@ func main() {
// Start reading from all the streams and sending them to the related output track
rid := track.RID()
go func() {
ticker := time.NewTicker(3 * time.Second)
defer ticker.Stop()
for range ticker.C {
fmt.Printf("Sending pli for stream with rid: %q, ssrc: %d\n", track.RID(), track.SSRC())
if writeErr := peerConnection.WriteRTCP([]rtcp.Packet{&rtcp.PictureLossIndication{MediaSSRC: uint32(track.SSRC())}}); writeErr != nil {
fmt.Println(writeErr)
if track.Kind() == webrtc.RTPCodecTypeVideo {
go func() {
ticker := time.NewTicker(3 * time.Second)
defer ticker.Stop()
for range ticker.C {
fmt.Printf("Sending pli for stream with rid: %q, ssrc: %d\n", track.RID(), track.SSRC())
if writeErr := peerConnection.WriteRTCP([]rtcp.Packet{&rtcp.PictureLossIndication{MediaSSRC: uint32(track.SSRC())}}); writeErr != nil {
fmt.Println(writeErr)
}
}
}
}()
}()
}
for {
// Read RTP packets being sent to Pion
packet, _, readErr := track.ReadRTP()