Documentation
¶
Index ¶
Constants ¶
View Source
const (
FlvAppSource = "flvAppSrc"
)
Variables ¶
This section is empty.
Functions ¶
Types ¶
type HTTPRelaySource ¶
type HTTPRelaySource struct {
// contains filtered or unexported fields
}
func NewHTTPRelaySource ¶
func NewHTTPRelaySource(ctx context.Context, p *Params) (*HTTPRelaySource, error)
func (*HTTPRelaySource) Close ¶
func (s *HTTPRelaySource) Close() error
func (*HTTPRelaySource) GetSource ¶
func (s *HTTPRelaySource) GetSource() *app.Source
type Input ¶
type Input struct {
// contains filtered or unexported fields
}
func (*Input) OnOutputReady ¶
func (i *Input) OnOutputReady(f OutputReadyFunc)
type Output ¶
type Output struct {
// contains filtered or unexported fields
}
Output manages GStreamer elements that converts & encodes video to the specification that's suitable for WebRTC
func NewAudioOutput ¶
func NewAudioOutput(options *livekit.IngressAudioOptions) (*Output, error)
func NewVideoOutput ¶
func NewVideoOutput(mimeType string, layer *livekit.VideoLayer) (*Output, error)
func (*Output) ForceKeyFrame ¶
type OutputReadyFunc ¶
type OutputReadyFunc func(pad *gst.Pad, kind StreamKind)
type OutputStream ¶
type OutputStream struct {
// contains filtered or unexported fields
}
OutputStream holds one or more encoders for either an audio or video stream
func NewAudioOutputStream ¶
func NewAudioOutputStream(options *livekit.IngressAudioOptions) (*OutputStream, error)
func NewVideoOutputStream ¶
func NewVideoOutputStream(options *livekit.IngressVideoOptions, inputLayer *livekit.VideoLayer) (*OutputStream, error)
type Params ¶
type Params struct {
*livekit.IngressInfo
Logger logger.Logger
// connection info
WsUrl string
Token string
// relay info
RelayUrl string
GstReady chan struct{}
}
type Pipeline ¶
type Pipeline struct {
*Params
// contains filtered or unexported fields
}
func (*Pipeline) GetInfo ¶
func (p *Pipeline) GetInfo() *livekit.IngressInfo
func (*Pipeline) OnStatusUpdate ¶
func (p *Pipeline) OnStatusUpdate(f func(context.Context, *livekit.IngressInfo))
type StreamKind ¶
type StreamKind string
const ( Audio StreamKind = "audio" Video StreamKind = "video" )
type WebRTCSink ¶
type WebRTCSink struct {
// contains filtered or unexported fields
}
func NewWebRTCSink ¶
func NewWebRTCSink(ctx context.Context, p *Params) (*WebRTCSink, error)
func (*WebRTCSink) AddTrack ¶
func (s *WebRTCSink) AddTrack(kind StreamKind) (*gst.Bin, error)
func (*WebRTCSink) Close ¶
func (s *WebRTCSink) Close()
Click to show internal directories.
Click to hide internal directories.