mirror of
https://github.com/aler9/rtsp-simple-server
synced 2025-10-21 22:59:37 +08:00
rename Data into Unit (#1556)
This commit is contained in:
@@ -66,7 +66,7 @@ type webRTCTrack struct {
|
||||
media *media.Media
|
||||
format format.Format
|
||||
webRTCTrack *webrtc.TrackLocalStaticRTP
|
||||
cb func(formatprocessor.Data, context.Context, chan error)
|
||||
cb func(formatprocessor.Unit, context.Context, chan error)
|
||||
}
|
||||
|
||||
func gatherMedias(tracks []*webRTCTrack) media.Medias {
|
||||
@@ -502,9 +502,9 @@ outer:
|
||||
|
||||
for _, track := range tracks {
|
||||
ctrack := track
|
||||
res.stream.readerAdd(c, track.media, track.format, func(dat formatprocessor.Data) {
|
||||
res.stream.readerAdd(c, track.media, track.format, func(unit formatprocessor.Unit) {
|
||||
ringBuffer.Push(func() {
|
||||
ctrack.cb(dat, ctx, writeError)
|
||||
ctrack.cb(unit, ctx, writeError)
|
||||
})
|
||||
})
|
||||
}
|
||||
@@ -567,14 +567,14 @@ func (c *webRTCConn) allocateTracks(medias media.Medias) ([]*webRTCTrack, error)
|
||||
media: vp9Media,
|
||||
format: vp9Format,
|
||||
webRTCTrack: webRTCTrak,
|
||||
cb: func(dat formatprocessor.Data, ctx context.Context, writeError chan error) {
|
||||
tdata := dat.(*formatprocessor.DataVP9)
|
||||
cb: func(unit formatprocessor.Unit, ctx context.Context, writeError chan error) {
|
||||
tunit := unit.(*formatprocessor.UnitVP9)
|
||||
|
||||
if tdata.Frame == nil {
|
||||
if tunit.Frame == nil {
|
||||
return
|
||||
}
|
||||
|
||||
packets, err := encoder.Encode(tdata.Frame, tdata.PTS)
|
||||
packets, err := encoder.Encode(tunit.Frame, tunit.PTS)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
@@ -614,14 +614,14 @@ func (c *webRTCConn) allocateTracks(medias media.Medias) ([]*webRTCTrack, error)
|
||||
media: vp8Media,
|
||||
format: vp8Format,
|
||||
webRTCTrack: webRTCTrak,
|
||||
cb: func(dat formatprocessor.Data, ctx context.Context, writeError chan error) {
|
||||
tdata := dat.(*formatprocessor.DataVP8)
|
||||
cb: func(unit formatprocessor.Unit, ctx context.Context, writeError chan error) {
|
||||
tunit := unit.(*formatprocessor.UnitVP8)
|
||||
|
||||
if tdata.Frame == nil {
|
||||
if tunit.Frame == nil {
|
||||
return
|
||||
}
|
||||
|
||||
packets, err := encoder.Encode(tdata.Frame, tdata.PTS)
|
||||
packets, err := encoder.Encode(tunit.Frame, tunit.PTS)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
@@ -664,28 +664,28 @@ func (c *webRTCConn) allocateTracks(medias media.Medias) ([]*webRTCTrack, error)
|
||||
media: h264Media,
|
||||
format: h264Format,
|
||||
webRTCTrack: webRTCTrak,
|
||||
cb: func(dat formatprocessor.Data, ctx context.Context, writeError chan error) {
|
||||
tdata := dat.(*formatprocessor.DataH264)
|
||||
cb: func(unit formatprocessor.Unit, ctx context.Context, writeError chan error) {
|
||||
tunit := unit.(*formatprocessor.UnitH264)
|
||||
|
||||
if tdata.AU == nil {
|
||||
if tunit.AU == nil {
|
||||
return
|
||||
}
|
||||
|
||||
if !firstNALUReceived {
|
||||
firstNALUReceived = true
|
||||
lastPTS = tdata.PTS
|
||||
lastPTS = tunit.PTS
|
||||
} else {
|
||||
if tdata.PTS < lastPTS {
|
||||
if tunit.PTS < lastPTS {
|
||||
select {
|
||||
case writeError <- fmt.Errorf("WebRTC doesn't support H264 streams with B-frames"):
|
||||
case <-ctx.Done():
|
||||
}
|
||||
return
|
||||
}
|
||||
lastPTS = tdata.PTS
|
||||
lastPTS = tunit.PTS
|
||||
}
|
||||
|
||||
packets, err := encoder.Encode(tdata.AU, tdata.PTS)
|
||||
packets, err := encoder.Encode(tunit.AU, tunit.PTS)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
@@ -718,8 +718,8 @@ func (c *webRTCConn) allocateTracks(medias media.Medias) ([]*webRTCTrack, error)
|
||||
media: opusMedia,
|
||||
format: opusFormat,
|
||||
webRTCTrack: webRTCTrak,
|
||||
cb: func(dat formatprocessor.Data, ctx context.Context, writeError chan error) {
|
||||
for _, pkt := range dat.GetRTPPackets() {
|
||||
cb: func(unit formatprocessor.Unit, ctx context.Context, writeError chan error) {
|
||||
for _, pkt := range unit.GetRTPPackets() {
|
||||
webRTCTrak.WriteRTP(pkt)
|
||||
}
|
||||
},
|
||||
@@ -748,8 +748,8 @@ func (c *webRTCConn) allocateTracks(medias media.Medias) ([]*webRTCTrack, error)
|
||||
media: g722Media,
|
||||
format: g722Format,
|
||||
webRTCTrack: webRTCTrak,
|
||||
cb: func(dat formatprocessor.Data, ctx context.Context, writeError chan error) {
|
||||
for _, pkt := range dat.GetRTPPackets() {
|
||||
cb: func(unit formatprocessor.Unit, ctx context.Context, writeError chan error) {
|
||||
for _, pkt := range unit.GetRTPPackets() {
|
||||
webRTCTrak.WriteRTP(pkt)
|
||||
}
|
||||
},
|
||||
@@ -786,8 +786,8 @@ func (c *webRTCConn) allocateTracks(medias media.Medias) ([]*webRTCTrack, error)
|
||||
media: g711Media,
|
||||
format: g711Format,
|
||||
webRTCTrack: webRTCTrak,
|
||||
cb: func(dat formatprocessor.Data, ctx context.Context, writeError chan error) {
|
||||
for _, pkt := range dat.GetRTPPackets() {
|
||||
cb: func(unit formatprocessor.Unit, ctx context.Context, writeError chan error) {
|
||||
for _, pkt := range unit.GetRTPPackets() {
|
||||
webRTCTrak.WriteRTP(pkt)
|
||||
}
|
||||
},
|
||||
|
Reference in New Issue
Block a user