Versions in this module Expand all Collapse all v1 v1.0.1 Nov 22, 2023 Changes in this version + type Client struct + AnyPortEnable bool + BytesReceived *uint64 + BytesSent *uint64 + DialContext func(ctx context.Context, network, address string) (net.Conn, error) + DisableRTCPSenderReports bool + InitialUDPReadTimeout time.Duration + ListenPacket func(network, address string) (net.PacketConn, error) + MaxPacketSize int + OnDecodeError ClientOnDecodeErrorFunc + OnPacketLost ClientOnPacketLostFunc + OnRequest ClientOnRequestFunc + OnResponse ClientOnResponseFunc + OnServerRequest ClientOnRequestFunc + OnServerResponse ClientOnResponseFunc + OnTransportSwitch ClientOnTransportSwitchFunc + ReadTimeout time.Duration + RequestBackChannels bool + TLSConfig *tls.Config + Transport *Transport + UserAgent string + WriteQueueSize int + WriteTimeout time.Duration + func (c *Client) Announce(u *base.URL, desc *description.Session) (*base.Response, error) + func (c *Client) Close() + func (c *Client) Describe(u *base.URL) (*description.Session, *base.Response, error) + func (c *Client) OnPacketRTCP(medi *description.Media, cb OnPacketRTCPFunc) + func (c *Client) OnPacketRTCPAny(cb OnPacketRTCPAnyFunc) + func (c *Client) OnPacketRTP(medi *description.Media, forma format.Format, cb OnPacketRTPFunc) + func (c *Client) OnPacketRTPAny(cb OnPacketRTPAnyFunc) + func (c *Client) Options(u *base.URL) (*base.Response, error) + func (c *Client) PacketNTP(medi *description.Media, pkt *rtp.Packet) (time.Time, bool) + func (c *Client) PacketPTS(medi *description.Media, pkt *rtp.Packet) (time.Duration, bool) + func (c *Client) Pause() (*base.Response, error) + func (c *Client) Play(ra *headers.Range) (*base.Response, error) + func (c *Client) Record() (*base.Response, error) + func (c *Client) Seek(ra *headers.Range) (*base.Response, error) + func (c *Client) Setup(baseURL *base.URL, media *description.Media, rtpPort int, rtcpPort int) (*base.Response, error) + func (c *Client) SetupAll(baseURL *base.URL, medias []*description.Media) error + func (c *Client) Start(scheme string, host string) error + func (c *Client) StartRecording(address string, desc *description.Session) error + func (c *Client) Wait() error + func (c *Client) WritePacketRTCP(medi *description.Media, pkt rtcp.Packet) error + func (c *Client) WritePacketRTP(medi *description.Media, pkt *rtp.Packet) error + func (c *Client) WritePacketRTPWithNTP(medi *description.Media, pkt *rtp.Packet, ntp time.Time) error + type ClientOnDecodeErrorFunc func(err error) + type ClientOnPacketLostFunc func(err error) + type ClientOnRequestFunc func(*base.Request) + type ClientOnResponseFunc func(*base.Response) + type ClientOnTransportSwitchFunc func(err error) + type OnPacketRTCPAnyFunc func(*description.Media, rtcp.Packet) + type OnPacketRTCPFunc func(rtcp.Packet) + type OnPacketRTPAnyFunc func(*description.Media, format.Format, *rtp.Packet) + type OnPacketRTPFunc func(*rtp.Packet) + type Server struct + DisableRTCPSenderReports bool + Handler ServerHandler + Listen func(network string, address string) (net.Listener, error) + ListenPacket func(network, address string) (net.PacketConn, error) + MaxPacketSize int + MulticastIPRange string + MulticastRTCPPort int + MulticastRTPPort int + RTSPAddress string + ReadTimeout time.Duration + TLSConfig *tls.Config + UDPRTCPAddress string + UDPRTPAddress string + WriteQueueSize int + WriteTimeout time.Duration + func (s *Server) Close() + func (s *Server) Start() error + func (s *Server) StartAndWait() error + func (s *Server) Wait() error + type ServerConn struct + func (sc *ServerConn) BytesReceived() uint64 + func (sc *ServerConn) BytesSent() uint64 + func (sc *ServerConn) Close() + func (sc *ServerConn) NetConn() net.Conn + func (sc *ServerConn) SetUserData(v interface{}) + func (sc *ServerConn) UserData() interface{} + type ServerHandler interface + type ServerHandlerOnAnnounce interface + OnAnnounce func(*ServerHandlerOnAnnounceCtx) (*base.Response, error) + type ServerHandlerOnAnnounceCtx struct + Conn *ServerConn + Description *description.Session + Path string + Query string + Request *base.Request + Session *ServerSession + type ServerHandlerOnConnClose interface + OnConnClose func(*ServerHandlerOnConnCloseCtx) + type ServerHandlerOnConnCloseCtx struct + Conn *ServerConn + Error error + type ServerHandlerOnConnOpen interface + OnConnOpen func(*ServerHandlerOnConnOpenCtx) + type ServerHandlerOnConnOpenCtx struct + Conn *ServerConn + type ServerHandlerOnDecodeError interface + OnDecodeError func(*ServerHandlerOnDecodeErrorCtx) + type ServerHandlerOnDecodeErrorCtx struct + Error error + Session *ServerSession + type ServerHandlerOnDescribe interface + OnDescribe func(*ServerHandlerOnDescribeCtx) (*base.Response, *ServerStream, error) + type ServerHandlerOnDescribeCtx struct + Conn *ServerConn + Path string + Query string + Request *base.Request + type ServerHandlerOnGetParameter interface + OnGetParameter func(*ServerHandlerOnGetParameterCtx) (*base.Response, error) + type ServerHandlerOnGetParameterCtx struct + Conn *ServerConn + Path string + Query string + Request *base.Request + Session *ServerSession + type ServerHandlerOnPacketLost interface + OnPacketLost func(*ServerHandlerOnPacketLostCtx) + type ServerHandlerOnPacketLostCtx struct + Error error + Session *ServerSession + type ServerHandlerOnPause interface + OnPause func(*ServerHandlerOnPauseCtx) (*base.Response, error) + type ServerHandlerOnPauseCtx struct + Conn *ServerConn + Path string + Query string + Request *base.Request + Session *ServerSession + type ServerHandlerOnPlay interface + OnPlay func(*ServerHandlerOnPlayCtx) (*base.Response, error) + type ServerHandlerOnPlayCtx struct + Conn *ServerConn + Path string + Query string + Request *base.Request + Session *ServerSession + type ServerHandlerOnRecord interface + OnRecord func(*ServerHandlerOnRecordCtx) (*base.Response, error) + type ServerHandlerOnRecordCtx struct + Conn *ServerConn + Path string + Query string + Request *base.Request + Session *ServerSession + type ServerHandlerOnRequest interface + OnRequest func(*ServerConn, *base.Request) + type ServerHandlerOnResponse interface + OnResponse func(*ServerConn, *base.Response) + type ServerHandlerOnSessionClose interface + OnSessionClose func(*ServerHandlerOnSessionCloseCtx) + type ServerHandlerOnSessionCloseCtx struct + Error error + Session *ServerSession + type ServerHandlerOnSessionOpen interface + OnSessionOpen func(*ServerHandlerOnSessionOpenCtx) + type ServerHandlerOnSessionOpenCtx struct + Conn *ServerConn + Session *ServerSession + type ServerHandlerOnSetParameter interface + OnSetParameter func(*ServerHandlerOnSetParameterCtx) (*base.Response, error) + type ServerHandlerOnSetParameterCtx struct + Conn *ServerConn + Path string + Query string + Request *base.Request + Session *ServerSession + type ServerHandlerOnSetup interface + OnSetup func(*ServerHandlerOnSetupCtx) (*base.Response, *ServerStream, error) + type ServerHandlerOnSetupCtx struct + Conn *ServerConn + Path string + Query string + Request *base.Request + Session *ServerSession + Transport Transport + type ServerHandlerOnStreamWriteError interface + OnStreamWriteError func(*ServerHandlerOnStreamWriteErrorCtx) + type ServerHandlerOnStreamWriteErrorCtx struct + Error error + Session *ServerSession + type ServerSession struct + func (ss *ServerSession) AnnouncedDescription() *description.Session + func (ss *ServerSession) BytesReceived() uint64 + func (ss *ServerSession) BytesSent() uint64 + func (ss *ServerSession) Close() + func (ss *ServerSession) OnPacketRTCP(medi *description.Media, cb OnPacketRTCPFunc) + func (ss *ServerSession) OnPacketRTCPAny(cb OnPacketRTCPAnyFunc) + func (ss *ServerSession) OnPacketRTP(medi *description.Media, forma format.Format, cb OnPacketRTPFunc) + func (ss *ServerSession) OnPacketRTPAny(cb OnPacketRTPAnyFunc) + func (ss *ServerSession) PacketNTP(medi *description.Media, pkt *rtp.Packet) (time.Time, bool) + func (ss *ServerSession) PacketPTS(medi *description.Media, pkt *rtp.Packet) (time.Duration, bool) + func (ss *ServerSession) SetUserData(v interface{}) + func (ss *ServerSession) SetuppedMedias() []*description.Media + func (ss *ServerSession) SetuppedPath() string + func (ss *ServerSession) SetuppedQuery() string + func (ss *ServerSession) SetuppedStream() *ServerStream + func (ss *ServerSession) SetuppedTransport() *Transport + func (ss *ServerSession) State() ServerSessionState + func (ss *ServerSession) UserData() interface{} + func (ss *ServerSession) WritePacketRTCP(medi *description.Media, pkt rtcp.Packet) error + func (ss *ServerSession) WritePacketRTP(medi *description.Media, pkt *rtp.Packet) error + type ServerSessionState int + const ServerSessionStateInitial + const ServerSessionStatePlay + const ServerSessionStatePrePlay + const ServerSessionStatePreRecord + const ServerSessionStateRecord + func (s ServerSessionState) String() string + type ServerStream struct + func NewServerStream(s *Server, desc *description.Session) *ServerStream + func (st *ServerStream) BytesSent() uint64 + func (st *ServerStream) Close() + func (st *ServerStream) Description() *description.Session + func (st *ServerStream) WritePacketRTCP(medi *description.Media, pkt rtcp.Packet) error + func (st *ServerStream) WritePacketRTP(medi *description.Media, pkt *rtp.Packet) error + func (st *ServerStream) WritePacketRTPWithNTP(medi *description.Media, pkt *rtp.Packet, ntp time.Time) error + type Transport int + const TransportTCP + const TransportUDP + const TransportUDPMulticast + func (t Transport) String() string