client: turn ReadFrames into OnPacketRTP, OnPacketRTCP

This commit is contained in:
aler9
2021-11-04 11:05:51 +01:00
committed by Alessandro Ros
parent b4aadd8e4c
commit a22116e66e
12 changed files with 353 additions and 318 deletions

View File

@@ -14,7 +14,16 @@ import (
// 4. repeat
func main() {
c := gortsplib.Client{}
c := gortsplib.Client{
// called when a RTP packet arrives
OnPacketRTP: func(c *gortsplib.Client, trackID int, payload []byte) {
fmt.Printf("RTP packet from track %d, size %d\n", trackID, len(payload))
},
// called when a RTCP packet arrives
OnPacketRTCP: func(c *gortsplib.Client, trackID int, payload []byte) {
fmt.Printf("RTCP packet from track %d, size %d\n", trackID, len(payload))
},
}
// connect to the server and start reading all tracks
err := c.DialRead("rtsp://localhost:8554/mystream")
@@ -28,9 +37,7 @@ func main() {
done := make(chan struct{})
go func() {
defer close(done)
c.ReadFrames(func(trackID int, streamType gortsplib.StreamType, payload []byte) {
fmt.Printf("packet from track %d, type %v, size %d\n", trackID, streamType, len(payload))
})
c.ReadFrames()
}()
// wait