mirror of
https://github.com/aler9/gortsplib
synced 2025-10-06 15:46:51 +08:00
rtpaac, rtph264: remove *RTP suffix
This commit is contained in:
@@ -56,7 +56,7 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// decode H264 NALUs from RTP packets
|
// decode H264 NALUs from RTP packets
|
||||||
nalus, _, err := dec.DecodeRTP(&pkt)
|
nalus, _, err := dec.Decode(&pkt)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@@ -94,7 +94,7 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// decode H264 NALUs from RTP packets
|
// decode H264 NALUs from RTP packets
|
||||||
nalus, pts, err := dec.DecodeRTPUntilMarker(&pkt)
|
nalus, pts, err := dec.DecodeUntilMarker(&pkt)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@@ -34,10 +34,10 @@ func (d *Decoder) decodeTimestamp(ts uint32) time.Duration {
|
|||||||
return (time.Duration(ts) - time.Duration(d.initialTs)) * time.Second / d.clockRate
|
return (time.Duration(ts) - time.Duration(d.initialTs)) * time.Second / d.clockRate
|
||||||
}
|
}
|
||||||
|
|
||||||
// DecodeRTP decodes AUs from a RTP/AAC packet.
|
// Decode decodes AUs from a RTP/AAC packet.
|
||||||
// It returns the AUs and the PTS of the first AU.
|
// It returns the AUs and the PTS of the first AU.
|
||||||
// The PTS of subsequent AUs can be calculated by adding time.Second*1000/clockRate.
|
// The PTS of subsequent AUs can be calculated by adding time.Second*1000/clockRate.
|
||||||
func (d *Decoder) DecodeRTP(pkt *rtp.Packet) ([][]byte, time.Duration, error) {
|
func (d *Decoder) Decode(pkt *rtp.Packet) ([][]byte, time.Duration, error) {
|
||||||
if len(pkt.Payload) < 2 {
|
if len(pkt.Payload) < 2 {
|
||||||
d.isDecodingFragmented = false
|
d.isDecodingFragmented = false
|
||||||
return nil, 0, fmt.Errorf("payload is too short")
|
return nil, 0, fmt.Errorf("payload is too short")
|
||||||
|
@@ -228,7 +228,7 @@ func TestDecode(t *testing.T) {
|
|||||||
0x9d, 0xbb, 0x78, 0x12, 0x00, 0x10, 0x00, 0x08, 0x0,
|
0x9d, 0xbb, 0x78, 0x12, 0x00, 0x10, 0x00, 0x08, 0x0,
|
||||||
})
|
})
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
_, _, err = d.DecodeRTP(&pkt)
|
_, _, err = d.Decode(&pkt)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
var aus [][]byte
|
var aus [][]byte
|
||||||
@@ -239,7 +239,7 @@ func TestDecode(t *testing.T) {
|
|||||||
err := pkt.Unmarshal(byts)
|
err := pkt.Unmarshal(byts)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
addAUs, pts, err := d.DecodeRTP(&pkt)
|
addAUs, pts, err := d.Decode(&pkt)
|
||||||
if err == ErrMorePacketsNeeded {
|
if err == ErrMorePacketsNeeded {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
@@ -406,7 +406,7 @@ func TestDecodeErrors(t *testing.T) {
|
|||||||
var pkt rtp.Packet
|
var pkt rtp.Packet
|
||||||
err := pkt.Unmarshal(byts)
|
err := pkt.Unmarshal(byts)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
_, _, lastErr = d.DecodeRTP(&pkt)
|
_, _, lastErr = d.Decode(&pkt)
|
||||||
}
|
}
|
||||||
require.Equal(t, ca.err, lastErr.Error())
|
require.Equal(t, ca.err, lastErr.Error())
|
||||||
})
|
})
|
||||||
|
@@ -57,8 +57,8 @@ func (d *Decoder) decodeTimestamp(ts uint32) time.Duration {
|
|||||||
return (time.Duration(ts) - time.Duration(d.initialTs)) * time.Second / rtpClockRate
|
return (time.Duration(ts) - time.Duration(d.initialTs)) * time.Second / rtpClockRate
|
||||||
}
|
}
|
||||||
|
|
||||||
// DecodeRTP decodes NALUs from a RTP/H264 packet.
|
// Decode decodes NALUs from a RTP/H264 packet.
|
||||||
func (d *Decoder) DecodeRTP(pkt *rtp.Packet) ([][]byte, time.Duration, error) {
|
func (d *Decoder) Decode(pkt *rtp.Packet) ([][]byte, time.Duration, error) {
|
||||||
if !d.isDecodingFragmented {
|
if !d.isDecodingFragmented {
|
||||||
if !d.initialTsSet {
|
if !d.initialTsSet {
|
||||||
d.initialTsSet = true
|
d.initialTsSet = true
|
||||||
@@ -166,11 +166,11 @@ func (d *Decoder) DecodeRTP(pkt *rtp.Packet) ([][]byte, time.Duration, error) {
|
|||||||
return [][]byte{d.fragmentedBuffer}, d.decodeTimestamp(pkt.Timestamp), nil
|
return [][]byte{d.fragmentedBuffer}, d.decodeTimestamp(pkt.Timestamp), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// DecodeRTPUntilMarker decodes NALUs from a RTP/H264 packet and puts them in a buffer.
|
// DecodeUntilMarker decodes NALUs from a RTP/H264 packet and puts them in a buffer.
|
||||||
// When a packet has the marker flag (meaning that all the NALUs with the same PTS have
|
// When a packet has the marker flag (meaning that all the NALUs with the same PTS have
|
||||||
// been received), the buffer is returned.
|
// been received), the buffer is returned.
|
||||||
func (d *Decoder) DecodeRTPUntilMarker(pkt *rtp.Packet) ([][]byte, time.Duration, error) {
|
func (d *Decoder) DecodeUntilMarker(pkt *rtp.Packet) ([][]byte, time.Duration, error) {
|
||||||
nalus, pts, err := d.DecodeRTP(pkt)
|
nalus, pts, err := d.Decode(pkt)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, 0, err
|
return nil, 0, err
|
||||||
}
|
}
|
||||||
@@ -206,7 +206,7 @@ func (d *Decoder) ReadSPSPPS(r io.Reader) ([]byte, []byte, error) {
|
|||||||
return nil, nil, err
|
return nil, nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
nalus, _, err := d.DecodeRTP(&pkt)
|
nalus, _, err := d.Decode(&pkt)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if err == ErrMorePacketsNeeded {
|
if err == ErrMorePacketsNeeded {
|
||||||
continue
|
continue
|
||||||
|
@@ -235,7 +235,7 @@ func TestDecode(t *testing.T) {
|
|||||||
0x9d, 0xbb, 0x78, 0x12, 0x06, 0x00,
|
0x9d, 0xbb, 0x78, 0x12, 0x06, 0x00,
|
||||||
})
|
})
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
_, _, err = d.DecodeRTP(&pkt)
|
_, _, err = d.Decode(&pkt)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
var nalus [][]byte
|
var nalus [][]byte
|
||||||
@@ -244,7 +244,7 @@ func TestDecode(t *testing.T) {
|
|||||||
err := pkt.Unmarshal(byts)
|
err := pkt.Unmarshal(byts)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
addNALUs, pts, err := d.DecodeRTP(&pkt)
|
addNALUs, pts, err := d.Decode(&pkt)
|
||||||
if err == ErrMorePacketsNeeded {
|
if err == ErrMorePacketsNeeded {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
@@ -272,7 +272,7 @@ func TestDecodePartOfFragmentedBeforeSingle(t *testing.T) {
|
|||||||
bytes.Repeat([]byte{0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07}, 147),
|
bytes.Repeat([]byte{0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07}, 147),
|
||||||
))
|
))
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
_, _, err = d.DecodeRTP(&pkt)
|
_, _, err = d.Decode(&pkt)
|
||||||
require.Equal(t, ErrNonStartingPacketAndNoPrevious, err)
|
require.Equal(t, ErrNonStartingPacketAndNoPrevious, err)
|
||||||
|
|
||||||
err = pkt.Unmarshal(mergeBytes(
|
err = pkt.Unmarshal(mergeBytes(
|
||||||
@@ -283,7 +283,7 @@ func TestDecodePartOfFragmentedBeforeSingle(t *testing.T) {
|
|||||||
bytes.Repeat([]byte{0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07}, 8),
|
bytes.Repeat([]byte{0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07}, 8),
|
||||||
))
|
))
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
_, _, err = d.DecodeRTP(&pkt)
|
_, _, err = d.Decode(&pkt)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -300,7 +300,7 @@ func TestDecodeSTAPAWithPadding(t *testing.T) {
|
|||||||
})
|
})
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
nalus, _, err := d.DecodeRTP(&pkt)
|
nalus, _, err := d.Decode(&pkt)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, [][]byte{
|
require.Equal(t, [][]byte{
|
||||||
{0xaa, 0xbb},
|
{0xaa, 0xbb},
|
||||||
@@ -449,7 +449,7 @@ func TestDecodeErrors(t *testing.T) {
|
|||||||
var pkt rtp.Packet
|
var pkt rtp.Packet
|
||||||
err := pkt.Unmarshal(byts)
|
err := pkt.Unmarshal(byts)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
_, _, lastErr = d.DecodeRTP(&pkt)
|
_, _, lastErr = d.Decode(&pkt)
|
||||||
}
|
}
|
||||||
require.Equal(t, ca.err, lastErr.Error())
|
require.Equal(t, ca.err, lastErr.Error())
|
||||||
})
|
})
|
||||||
|
Reference in New Issue
Block a user