mirror of
https://github.com/aler9/gortsplib
synced 2025-10-07 08:01:14 +08:00
client: add convenience function SetupAndPlay()
This commit is contained in:
13
client.go
13
client.go
@@ -1602,6 +1602,19 @@ func (c *Client) Play(ra *headers.Range) (*base.Response, error) {
|
||||
}
|
||||
}
|
||||
|
||||
// SetupAndPlay setups and play the given tracks.
|
||||
func (c *Client) SetupAndPlay(tracks Tracks, baseURL *base.URL) error {
|
||||
for _, t := range tracks {
|
||||
_, err := c.Setup(true, baseURL, t, 0, 0)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
_, err := c.Play(nil)
|
||||
return err
|
||||
}
|
||||
|
||||
func (c *Client) doRecord() (*base.Response, error) {
|
||||
err := c.checkState(map[clientState]struct{}{
|
||||
clientStatePreRecord: {},
|
||||
|
@@ -88,16 +88,8 @@ func main() {
|
||||
}
|
||||
}
|
||||
|
||||
// setup all tracks
|
||||
for _, t := range tracks {
|
||||
_, err := c.Setup(true, baseURL, t, 0, 0)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
|
||||
// start reading tracks
|
||||
_, err = c.Play(nil)
|
||||
err = c.SetupAndPlay(tracks, baseURL)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
@@ -93,16 +93,8 @@ func main() {
|
||||
}
|
||||
}
|
||||
|
||||
// setup all tracks
|
||||
for _, t := range tracks {
|
||||
_, err := c.Setup(true, baseURL, t, 0, 0)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
|
||||
// start reading tracks
|
||||
_, err = c.Play(nil)
|
||||
err = c.SetupAndPlay(tracks, baseURL)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
@@ -82,16 +82,8 @@ func main() {
|
||||
}
|
||||
}
|
||||
|
||||
// setup all tracks
|
||||
for _, t := range tracks {
|
||||
_, err := c.Setup(true, baseURL, t, 0, 0)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
|
||||
// start reading tracks
|
||||
_, err = c.Play(nil)
|
||||
err = c.SetupAndPlay(tracks, baseURL)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
Reference in New Issue
Block a user