Documentation
¶
Index ¶
- type OpType
- type Operation
- type SDKSource
- func (s *SDKSource) Close()
- func (s *SDKSource) CloseWriters()
- func (s *SDKSource) EndRecording() <-chan struct{}
- func (s *SDKSource) GetEndedAt() int64
- func (s *SDKSource) GetStartedAt() int64
- func (s *SDKSource) Playing(trackID string)
- func (s *SDKSource) SetTimeProvider(tp gstreamer.TimeProvider)
- func (s *SDKSource) StartRecording() <-chan struct{}
- func (s *SDKSource) StreamStopped(elementName string)
- type Source
- type TimeAware
- type TrackState
- type WebSource
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type OpType ¶ added in v1.13.0
type OpType int
OpType represents operations that can be sent to a track worker.
const ( OpSubscribe OpType = iota // track subscribed, create writer OpUnsubscribe // track unsubscribed, start graceful cleanup OpFinished // StreamStopped, immediate cleanup OpPlaying // GStreamer pipeline is playing OpSetTimeProvider // set time provider for PTS calculation OpClose // shutdown, drain and exit worker )
type Operation ¶ added in v1.13.0
type Operation struct {
Type OpType
Track *webrtc.TrackRemote
Pub *lksdk.RemoteTrackPublication
RemoteParticipant *lksdk.RemoteParticipant
Generation uint64
TimeProvider gstreamer.TimeProvider
ResultChan chan<- subscriptionResult // for init coordination (nil after init)
}
Operation is a message sent to a track worker's operation channel.
type SDKSource ¶
type SDKSource struct {
*config.PipelineConfig
// contains filtered or unexported fields
}
func NewSDKSource ¶
func (*SDKSource) CloseWriters ¶ added in v1.5.6
func (s *SDKSource) CloseWriters()
func (*SDKSource) EndRecording ¶
func (s *SDKSource) EndRecording() <-chan struct{}
func (*SDKSource) GetEndedAt ¶ added in v1.7.8
func (*SDKSource) GetStartedAt ¶ added in v1.7.8
func (*SDKSource) SetTimeProvider ¶ added in v1.11.0
func (s *SDKSource) SetTimeProvider(tp gstreamer.TimeProvider)
func (*SDKSource) StartRecording ¶
func (s *SDKSource) StartRecording() <-chan struct{}
func (*SDKSource) StreamStopped ¶ added in v1.5.6
type Source ¶
type TimeAware ¶ added in v1.11.0
type TimeAware interface {
SetTimeProvider(gstreamer.TimeProvider)
}
type TrackState ¶ added in v1.13.0
type TrackState int
TrackState represents the state of a track writer in the per-track worker state machine.
const ( TrackStateIdle TrackState = iota // no active writer, ready for subscription TrackStateActive // writer is active and processing samples TrackStateCleaning // writer is draining after unsubscribe )
func (TrackState) String ¶ added in v1.13.0
func (s TrackState) String() string
type WebSource ¶
type WebSource struct {
// contains filtered or unexported fields
}
func NewWebSource ¶
func (*WebSource) EndRecording ¶
func (s *WebSource) EndRecording() <-chan struct{}
func (*WebSource) GetEndedAt ¶ added in v1.7.8
func (*WebSource) GetStartedAt ¶ added in v1.7.8
func (*WebSource) StartRecording ¶
func (s *WebSource) StartRecording() <-chan struct{}
Click to show internal directories.
Click to hide internal directories.