Documentation ¶
Index ¶
- func BuildQueue(name string, latency uint64, leaky bool) (*gst.Element, error)
- type Bin
- func (b *Bin) AddElement(e *gst.Element) error
- func (b *Bin) AddElements(elements ...*gst.Element) error
- func (b *Bin) AddSinkBin(sink *Bin) error
- func (b *Bin) AddSourceBin(src *Bin) error
- func (b *Bin) NewBin(name string) *Bin
- func (b *Bin) RemoveSinkBin(name string) (bool, error)
- func (b *Bin) RemoveSourceBin(name string) (bool, error)
- func (b *Bin) SetEOSFunc(f func() bool)
- func (b *Bin) SetGetSinkPad(f func(sinkName string) *gst.Pad)
- func (b *Bin) SetGetSrcPad(f func(srcName string) *gst.Pad)
- func (b *Bin) SetLinkFunc(f func() error)
- func (b *Bin) SetState(state gst.State) error
- type Callbacks
- func (c *Callbacks) AddOnStop(f func() error)
- func (c *Callbacks) AddOnTrackAdded(f func(*config.TrackSource))
- func (c *Callbacks) AddOnTrackMuted(f func(string))
- func (c *Callbacks) AddOnTrackRemoved(f func(string))
- func (c *Callbacks) AddOnTrackUnmuted(f func(string, time.Duration))
- func (c *Callbacks) OnError(err error)
- func (c *Callbacks) OnStop() error
- func (c *Callbacks) OnTrackAdded(ts *config.TrackSource)
- func (c *Callbacks) OnTrackMuted(trackID string)
- func (c *Callbacks) OnTrackRemoved(trackID string)
- func (c *Callbacks) OnTrackUnmuted(trackID string, pts time.Duration)
- func (c *Callbacks) SetOnError(f func(error))
- type Pipeline
- func (p *Pipeline) AddElement(e *gst.Element) error
- func (p *Pipeline) AddElements(elements ...*gst.Element) error
- func (p *Pipeline) AddSinkBin(sink *Bin) error
- func (p *Pipeline) AddSourceBin(src *Bin) error
- func (p *Pipeline) DebugBinToDotData(details gst.DebugGraphDetails) string
- func (p *Pipeline) Link() error
- func (p *Pipeline) Run() error
- func (p *Pipeline) SendEOS()
- func (p *Pipeline) SetState(state gst.State) error
- func (p *Pipeline) SetWatch(watch func(msg *gst.Message) bool)
- func (p *Pipeline) Stop()
- type State
- type StateManager
- func (s *StateManager) GetState() State
- func (s *StateManager) GetStateLocked() State
- func (s *StateManager) LockState()
- func (s *StateManager) LockStateShared()
- func (s *StateManager) UnlockState()
- func (s *StateManager) UnlockStateShared()
- func (s *StateManager) UpgradeState(state State) (State, bool)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Bin ¶
type Bin struct { *Callbacks *StateManager // contains filtered or unexported fields }
Bins are designed to hold a single stream, with any number of sources and sinks
func (*Bin) AddElement ¶
Elements will be linked in the order they are added
func (*Bin) AddElements ¶
Elements will be linked in the order they are added
func (*Bin) AddSinkBin ¶
Add src as a sink of b. This should only be called once for each sink bin
func (*Bin) AddSourceBin ¶
Add src as a source of b. This should only be called once for each source bin
func (*Bin) SetEOSFunc ¶
Set a custom EOS function (used for appsrc, input-selector). If it returns true, EOS will also be sent to src bins
func (*Bin) SetGetSinkPad ¶
Set a custom linking function which returns a pad for the named sink bin
func (*Bin) SetGetSrcPad ¶
Set a custom linking function which returns a pad for the named src bin
func (*Bin) SetLinkFunc ¶
Set a custom linking function for this bin's elements (used when you need to modify chain functions)
type Callbacks ¶
type Callbacks struct { GstReady chan struct{} // contains filtered or unexported fields }
func (*Callbacks) AddOnTrackAdded ¶
func (c *Callbacks) AddOnTrackAdded(f func(*config.TrackSource))
func (*Callbacks) AddOnTrackMuted ¶
func (*Callbacks) AddOnTrackRemoved ¶
func (*Callbacks) AddOnTrackUnmuted ¶
func (*Callbacks) OnTrackAdded ¶
func (c *Callbacks) OnTrackAdded(ts *config.TrackSource)
func (*Callbacks) OnTrackMuted ¶
func (*Callbacks) OnTrackRemoved ¶
func (*Callbacks) OnTrackUnmuted ¶
func (*Callbacks) SetOnError ¶
type Pipeline ¶
type Pipeline struct { *Bin // contains filtered or unexported fields }
func NewPipeline ¶
A pipeline can have either elements or src and sink bins. If you add both you will get a wrong hierarchy error Bins can contain both elements and src and sink bins
func (*Pipeline) AddSinkBin ¶
func (*Pipeline) AddSourceBin ¶
func (*Pipeline) DebugBinToDotData ¶
func (p *Pipeline) DebugBinToDotData(details gst.DebugGraphDetails) string
type StateManager ¶
type StateManager struct {
// contains filtered or unexported fields
}
func (*StateManager) GetState ¶
func (s *StateManager) GetState() State
func (*StateManager) GetStateLocked ¶
func (s *StateManager) GetStateLocked() State
func (*StateManager) LockState ¶
func (s *StateManager) LockState()
func (*StateManager) LockStateShared ¶
func (s *StateManager) LockStateShared()
func (*StateManager) UnlockState ¶
func (s *StateManager) UnlockState()
func (*StateManager) UnlockStateShared ¶
func (s *StateManager) UnlockStateShared()
func (*StateManager) UpgradeState ¶
func (s *StateManager) UpgradeState(state State) (State, bool)