mirror of
https://github.com/aler9/gortsplib
synced 2025-10-05 23:26:54 +08:00
remove transport modes from root folder
This commit is contained in:
@@ -411,10 +411,10 @@ func (c *ConnClient) Describe(u *base.URL) (Tracks, *base.Response, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// build an URL by merging baseUrl with the control attribute from track.Media
|
// build an URL by merging baseUrl with the control attribute from track.Media
|
||||||
func (c *ConnClient) urlForTrack(baseUrl *base.URL, mode TransportMode, track *Track) *base.URL {
|
func (c *ConnClient) urlForTrack(baseUrl *base.URL, mode headers.TransportMode, track *Track) *base.URL {
|
||||||
control := func() string {
|
control := func() string {
|
||||||
// if we're reading, get control from track ID
|
// if we're reading, get control from track ID
|
||||||
if mode == TransportModeRecord {
|
if mode == headers.TransportModeRecord {
|
||||||
return "trackID=" + strconv.FormatInt(int64(track.Id), 10)
|
return "trackID=" + strconv.FormatInt(int64(track.Id), 10)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -451,7 +451,7 @@ func (c *ConnClient) urlForTrack(baseUrl *base.URL, mode TransportMode, track *T
|
|||||||
return newUrl
|
return newUrl
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *ConnClient) setup(u *base.URL, mode TransportMode, track *Track, ht *headers.Transport) (*base.Response, error) {
|
func (c *ConnClient) setup(u *base.URL, mode headers.TransportMode, track *Track, ht *headers.Transport) (*base.Response, error) {
|
||||||
res, err := c.Do(&base.Request{
|
res, err := c.Do(&base.Request{
|
||||||
Method: base.SETUP,
|
Method: base.SETUP,
|
||||||
URL: c.urlForTrack(u, mode, track),
|
URL: c.urlForTrack(u, mode, track),
|
||||||
@@ -472,7 +472,7 @@ func (c *ConnClient) setup(u *base.URL, mode TransportMode, track *Track, ht *he
|
|||||||
|
|
||||||
// SetupUDP writes a SETUP request and reads a Response.
|
// SetupUDP writes a SETUP request and reads a Response.
|
||||||
// If rtpPort and rtcpPort are zero, they are be chosen automatically.
|
// If rtpPort and rtcpPort are zero, they are be chosen automatically.
|
||||||
func (c *ConnClient) SetupUDP(u *base.URL, mode TransportMode, track *Track, rtpPort int,
|
func (c *ConnClient) SetupUDP(u *base.URL, mode headers.TransportMode, track *Track, rtpPort int,
|
||||||
rtcpPort int) (*base.Response, error) {
|
rtcpPort int) (*base.Response, error) {
|
||||||
if c.state != connClientStateInitial {
|
if c.state != connClientStateInitial {
|
||||||
return nil, fmt.Errorf("can't be called when reading or publishing")
|
return nil, fmt.Errorf("can't be called when reading or publishing")
|
||||||
@@ -570,7 +570,7 @@ func (c *ConnClient) SetupUDP(u *base.URL, mode TransportMode, track *Track, rtp
|
|||||||
|
|
||||||
c.tracks = append(c.tracks, track)
|
c.tracks = append(c.tracks, track)
|
||||||
|
|
||||||
if mode == TransportModePlay {
|
if mode == headers.TransportModePlay {
|
||||||
c.rtcpReceivers[track.Id] = rtcpreceiver.New()
|
c.rtcpReceivers[track.Id] = rtcpreceiver.New()
|
||||||
|
|
||||||
v := time.Now().Unix()
|
v := time.Now().Unix()
|
||||||
@@ -591,7 +591,7 @@ func (c *ConnClient) SetupUDP(u *base.URL, mode TransportMode, track *Track, rtp
|
|||||||
}
|
}
|
||||||
|
|
||||||
// SetupTCP writes a SETUP request and reads a Response.
|
// SetupTCP writes a SETUP request and reads a Response.
|
||||||
func (c *ConnClient) SetupTCP(u *base.URL, mode TransportMode, track *Track) (*base.Response, error) {
|
func (c *ConnClient) SetupTCP(u *base.URL, mode headers.TransportMode, track *Track) (*base.Response, error) {
|
||||||
if c.state != connClientStateInitial {
|
if c.state != connClientStateInitial {
|
||||||
return nil, fmt.Errorf("can't be called when reading or publishing")
|
return nil, fmt.Errorf("can't be called when reading or publishing")
|
||||||
}
|
}
|
||||||
@@ -636,7 +636,7 @@ func (c *ConnClient) SetupTCP(u *base.URL, mode TransportMode, track *Track) (*b
|
|||||||
|
|
||||||
c.tracks = append(c.tracks, track)
|
c.tracks = append(c.tracks, track)
|
||||||
|
|
||||||
if mode == TransportModePlay {
|
if mode == headers.TransportModePlay {
|
||||||
c.rtcpReceivers[track.Id] = rtcpreceiver.New()
|
c.rtcpReceivers[track.Id] = rtcpreceiver.New()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
12
defs.go
12
defs.go
@@ -2,7 +2,6 @@ package gortsplib
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/aler9/gortsplib/base"
|
"github.com/aler9/gortsplib/base"
|
||||||
"github.com/aler9/gortsplib/headers"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// StreamProtocol is the protocol of a stream.
|
// StreamProtocol is the protocol of a stream.
|
||||||
@@ -37,14 +36,3 @@ const (
|
|||||||
// StreamTypeRtcp means that the stream contains RTCP packets
|
// StreamTypeRtcp means that the stream contains RTCP packets
|
||||||
StreamTypeRtcp StreamType = base.StreamTypeRtcp
|
StreamTypeRtcp StreamType = base.StreamTypeRtcp
|
||||||
)
|
)
|
||||||
|
|
||||||
// TransportMode is a transport mode.
|
|
||||||
type TransportMode = headers.TransportMode
|
|
||||||
|
|
||||||
const (
|
|
||||||
// TransportModePlay is the "play" transport mode
|
|
||||||
TransportModePlay TransportMode = headers.TransportModePlay
|
|
||||||
|
|
||||||
// TransportModeRecord is the "record" transport mode
|
|
||||||
TransportModeRecord TransportMode = headers.TransportModeRecord
|
|
||||||
)
|
|
||||||
|
@@ -5,6 +5,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/aler9/gortsplib/base"
|
"github.com/aler9/gortsplib/base"
|
||||||
|
"github.com/aler9/gortsplib/headers"
|
||||||
)
|
)
|
||||||
|
|
||||||
// DefaultDialer is the default dialer, used by DialRead and DialPublish.
|
// DefaultDialer is the default dialer, used by DialRead and DialPublish.
|
||||||
@@ -84,7 +85,7 @@ func (d Dialer) DialRead(address string, proto StreamProtocol) (*ConnClient, err
|
|||||||
|
|
||||||
if proto == StreamProtocolUDP {
|
if proto == StreamProtocolUDP {
|
||||||
for _, track := range tracks {
|
for _, track := range tracks {
|
||||||
_, err := conn.SetupUDP(u, TransportModePlay, track, 0, 0)
|
_, err := conn.SetupUDP(u, headers.TransportModePlay, track, 0, 0)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@@ -92,7 +93,7 @@ func (d Dialer) DialRead(address string, proto StreamProtocol) (*ConnClient, err
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
for _, track := range tracks {
|
for _, track := range tracks {
|
||||||
_, err := conn.SetupTCP(u, TransportModePlay, track)
|
_, err := conn.SetupTCP(u, headers.TransportModePlay, track)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
conn.Close()
|
conn.Close()
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -142,7 +143,7 @@ func (d Dialer) DialPublish(address string, proto StreamProtocol, tracks Tracks)
|
|||||||
|
|
||||||
if proto == StreamProtocolUDP {
|
if proto == StreamProtocolUDP {
|
||||||
for _, track := range tracks {
|
for _, track := range tracks {
|
||||||
_, err = conn.SetupUDP(u, TransportModeRecord, track, 0, 0)
|
_, err = conn.SetupUDP(u, headers.TransportModeRecord, track, 0, 0)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
conn.Close()
|
conn.Close()
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -151,7 +152,7 @@ func (d Dialer) DialPublish(address string, proto StreamProtocol, tracks Tracks)
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
for _, track := range tracks {
|
for _, track := range tracks {
|
||||||
_, err = conn.SetupTCP(u, TransportModeRecord, track)
|
_, err = conn.SetupTCP(u, headers.TransportModeRecord, track)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
conn.Close()
|
conn.Close()
|
||||||
return nil, err
|
return nil, err
|
||||||
|
Reference in New Issue
Block a user