rename Connect to Dial and add DialTimeout

This commit is contained in:
nareix 2016-06-11 20:31:41 +08:00
parent 5bf2c76bff
commit 32e3debf2e

View File

@ -1,6 +1,7 @@
package rtsp package rtsp
import ( import (
"time"
"fmt" "fmt"
"net" "net"
"bytes" "bytes"
@ -27,7 +28,6 @@ type Client struct {
DebugConn bool DebugConn bool
Headers []string Headers []string
DialTimeout time.Duration
RtspTimeout time.Duration RtspTimeout time.Duration
RtpFirstReadTimeout time.Duration RtpFirstReadTimeout time.Duration
RtpReadTimeout time.Duration RtpReadTimeout time.Duration
@ -65,7 +65,7 @@ type Response struct {
Body []byte Body []byte
} }
func Connect(uri string) (self *Client, err error) { func DialTimeout(uri string, timeout time.Duration) (self *Client, err error) {
var URL *url.URL var URL *url.URL
if URL, err = url.Parse(html.UnescapeString(uri)); err != nil { if URL, err = url.Parse(html.UnescapeString(uri)); err != nil {
return return
@ -75,7 +75,7 @@ func Connect(uri string) (self *Client, err error) {
URL.Host = URL.Host + ":554" URL.Host = URL.Host + ":554"
} }
dailer := net.Dialer{} dailer := net.Dialer{Timeout: timeout}
var conn net.Conn var conn net.Conn
if conn, err = dailer.Dial("tcp", URL.Host); err != nil { if conn, err = dailer.Dial("tcp", URL.Host); err != nil {
return return
@ -93,6 +93,10 @@ func Connect(uri string) (self *Client, err error) {
return return
} }
func Dial(uri string) (self *Client, err error) {
return DialTimeout(uri, 0)
}
func (self *Client) Streams() (streams []av.CodecData) { func (self *Client) Streams() (streams []av.CodecData) {
for _, stream := range self.streams { for _, stream := range self.streams {
streams = append(streams, stream.CodecData) streams = append(streams, stream.CodecData)
@ -752,7 +756,7 @@ func (self *Client) ReadHeader() (err error) {
func Open(uri string) (cli *Client, err error) { func Open(uri string) (cli *Client, err error) {
var _cli *Client var _cli *Client
if _cli, err = Connect(uri); err != nil { if _cli, err = Dial(uri); err != nil {
return return
} }