Documentation ¶
Index ¶
- func ListenRtsp(addr string) error
- func NewG711Track(payloadType uint8, law string) *gortsplib.Track
- func NewH265Track(payloadType uint8, sprop [][]byte) *gortsplib.Track
- type AACPayloader
- type H265Payloader
- type RTSPClient
- type RTSPServer
- func (sh *RTSPServer) OnAnnounce(ctx *gortsplib.ServerHandlerOnAnnounceCtx) (*base.Response, error)
- func (sh *RTSPServer) OnConnClose(ctx *gortsplib.ServerHandlerOnConnCloseCtx)
- func (sh *RTSPServer) OnConnOpen(ctx *gortsplib.ServerHandlerOnConnOpenCtx)
- func (sh *RTSPServer) OnDescribe(ctx *gortsplib.ServerHandlerOnDescribeCtx) (*base.Response, *gortsplib.ServerStream, error)
- func (sh *RTSPServer) OnPacketRTP(ctx *gortsplib.ServerHandlerOnPacketRTPCtx)
- func (sh *RTSPServer) OnPlay(ctx *gortsplib.ServerHandlerOnPlayCtx) (*base.Response, error)
- func (sh *RTSPServer) OnRecord(ctx *gortsplib.ServerHandlerOnRecordCtx) (*base.Response, error)
- func (sh *RTSPServer) OnSessionClose(ctx *gortsplib.ServerHandlerOnSessionCloseCtx)
- func (sh *RTSPServer) OnSessionOpen(ctx *gortsplib.ServerHandlerOnSessionOpenCtx)
- func (sh *RTSPServer) OnSetup(ctx *gortsplib.ServerHandlerOnSetupCtx) (*base.Response, *gortsplib.ServerStream, error)
- type RTSPSubscriber
- type RTSPublisher
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ListenRtsp ¶
func NewG711Track ¶
return &gortsplib.Track{ Media: &psdp.MediaDescription{ MediaName: psdp.MediaName{ Media: "audio", Protos: []string{"RTP", "AVP"}, Formats: []string{typ}, }, Attributes: []psdp.Attribute{ { Key: "rtpmap", Value: typ + " mpeg4-generic/" + strconv.FormatInt(int64(conf.SampleRate), 10) + "/" + strconv.FormatInt(int64(conf.ChannelCount), 10), }, { Key: "fmtp", Value: typ + " profile-level-id=1; " + "mode=AAC-hbr; " + "sizelength=6; " + "indexlength=2; " + "indexdeltalength=2; " + "config=" + hex.EncodeToString(mpegConf), }, }, }, }, nil }
Types ¶
type H265Payloader ¶
type H265Payloader struct{}
type RTSPClient ¶
type RTSPClient struct { RTSPublisher Transport gortsplib.Transport *gortsplib.Client `json:"-"` }
func (*RTSPClient) PullStream ¶
func (rtsp *RTSPClient) PullStream(streamPath string, rtspUrl string) (err error)
PullStream 从外部拉流
func (*RTSPClient) PushStream ¶
func (rtsp *RTSPClient) PushStream(streamPath string, rtspUrl string) (err error)
type RTSPServer ¶
接收RTSP推流:OnConnOpen->OnAnnounce->OnSetup->OnSessionOpen 接收RTSP拉流:OnConnOpen->OnDescribe->OnSetup->OnSessionOpen
func (*RTSPServer) OnAnnounce ¶
func (sh *RTSPServer) OnAnnounce(ctx *gortsplib.ServerHandlerOnAnnounceCtx) (*base.Response, error)
called after receiving an ANNOUNCE request.
func (*RTSPServer) OnConnClose ¶
func (sh *RTSPServer) OnConnClose(ctx *gortsplib.ServerHandlerOnConnCloseCtx)
called after a connection is closed.
func (*RTSPServer) OnConnOpen ¶
func (sh *RTSPServer) OnConnOpen(ctx *gortsplib.ServerHandlerOnConnOpenCtx)
called after a connection is opened.
func (*RTSPServer) OnDescribe ¶
func (sh *RTSPServer) OnDescribe(ctx *gortsplib.ServerHandlerOnDescribeCtx) (*base.Response, *gortsplib.ServerStream, error)
called after receiving a DESCRIBE request.
func (*RTSPServer) OnPacketRTP ¶
func (sh *RTSPServer) OnPacketRTP(ctx *gortsplib.ServerHandlerOnPacketRTPCtx)
called after receiving a frame.
func (*RTSPServer) OnPlay ¶
func (sh *RTSPServer) OnPlay(ctx *gortsplib.ServerHandlerOnPlayCtx) (*base.Response, error)
called after receiving a PLAY request.
func (*RTSPServer) OnRecord ¶
func (sh *RTSPServer) OnRecord(ctx *gortsplib.ServerHandlerOnRecordCtx) (*base.Response, error)
called after receiving a RECORD request.
func (*RTSPServer) OnSessionClose ¶
func (sh *RTSPServer) OnSessionClose(ctx *gortsplib.ServerHandlerOnSessionCloseCtx)
called after a session is closed.
func (*RTSPServer) OnSessionOpen ¶
func (sh *RTSPServer) OnSessionOpen(ctx *gortsplib.ServerHandlerOnSessionOpenCtx)
called after a session is opened.
func (*RTSPServer) OnSetup ¶
func (sh *RTSPServer) OnSetup(ctx *gortsplib.ServerHandlerOnSetupCtx) (*base.Response, *gortsplib.ServerStream, error)
called after receiving a SETUP request.
type RTSPSubscriber ¶
type RTSPSubscriber struct { engine.Subscriber // contains filtered or unexported fields }
type RTSPublisher ¶
type RTSPublisher struct { *Stream `json:"-"` // contains filtered or unexported fields }
Click to show internal directories.
Click to hide internal directories.