diff --git a/examples/client-read-aac/main.go b/examples/client-read-aac/main.go index 9e3375e4..65cf8345 100644 --- a/examples/client-read-aac/main.go +++ b/examples/client-read-aac/main.go @@ -36,38 +36,30 @@ func main() { } // find the AAC track - var clockRate int - var sizeLength int - var indexLength int - var indexDeltaLength int - aacTrack := func() int { + aacTrack, aacTrackID := func() (*gortsplib.TrackAAC, int) { for i, track := range tracks { if tt, ok := track.(*gortsplib.TrackAAC); ok { - clockRate = track.ClockRate() - sizeLength = tt.SizeLength() - indexLength = tt.IndexLength() - indexDeltaLength = tt.IndexDeltaLength() - return i + return tt, i } } - return -1 + return nil, -1 }() - if aacTrack < 0 { + if aacTrack == nil { panic("AAC track not found") } // setup decoder dec := &rtpaac.Decoder{ - SampleRate: clockRate, - SizeLength: sizeLength, - IndexLength: indexLength, - IndexDeltaLength: indexDeltaLength, + SampleRate: aacTrack.ClockRate(), + SizeLength: aacTrack.SizeLength(), + IndexLength: aacTrack.IndexLength(), + IndexDeltaLength: aacTrack.IndexDeltaLength(), } dec.Init() // called when a RTP packet arrives c.OnPacketRTP = func(ctx *gortsplib.ClientOnPacketRTPCtx) { - if ctx.TrackID != aacTrack { + if ctx.TrackID != aacTrackID { return }