builder

package
v1.15.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 6, 2026 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TrackSourceCamera TrackSource = iota
	TrackSourceScreenShare

	LayoutGrid               = "grid"
	LayoutGridLight          = "grid-light"
	LayoutGridDark           = "grid-dark"
	LayoutSingleSpeaker      = "single-speaker"
	LayoutSingleSpeakerLight = "single-speaker-light"
	LayoutSingleSpeakerDark  = "single-speaker-dark"
	LayoutSpeaker            = "speaker"
	LayoutSpeakerLight       = "speaker-light"
	LayoutSpeakerDark        = "speaker-dark"
)

Variables

This section is empty.

Functions

func BuildAudioBin added in v1.7.8

func BuildAudioBin(pipeline *gstreamer.Pipeline, p *config.PipelineConfig) error

func BuildFileBin added in v1.7.8

func BuildFileBin(pipeline *gstreamer.Pipeline, p *config.PipelineConfig) (*gstreamer.Bin, error)

func BuildImageBin added in v1.7.13

func BuildImageBin(c *config.ImageConfig, pipeline *gstreamer.Pipeline, p *config.PipelineConfig) (*gstreamer.Bin, error)

func BuildSegmentBin added in v1.7.8

func BuildSegmentBin(pipeline *gstreamer.Pipeline, p *config.PipelineConfig) (*gstreamer.Bin, error)

func BuildVideoBin added in v1.7.8

func BuildVideoBin(pipeline *gstreamer.Pipeline, p *config.PipelineConfig, setVideoDimensions func(string, int, int)) error

func BuildWebsocketBin added in v1.7.8

func BuildWebsocketBin(pipeline *gstreamer.Pipeline, appSinkCallbacks *app.SinkCallbacks) (*gstreamer.Bin, error)

Types

type AudioBin added in v1.7.8

type AudioBin struct {
	// contains filtered or unexported fields
}

type FirstSampleMetadata added in v1.7.8

type FirstSampleMetadata struct {
	StartDate int64 // Real time date of the first media sample
}

type LayoutManager added in v1.15.0

type LayoutManager struct {
	// contains filtered or unexported fields
}

func NewLayoutManager added in v1.15.0

func NewLayoutManager(layout string, width, height int) *LayoutManager

func (*LayoutManager) AddTrack added in v1.15.0

func (l *LayoutManager) AddTrack(trackID, identity string, source TrackSource) []PadLayout

func (*LayoutManager) Layout added in v1.15.0

func (l *LayoutManager) Layout() []PadLayout

func (*LayoutManager) RemoveTrack added in v1.15.0

func (l *LayoutManager) RemoveTrack(trackID string) []PadLayout

func (*LayoutManager) UpdateSpeakers added in v1.15.0

func (l *LayoutManager) UpdateSpeakers(speakers []SpeakerInfo) []PadLayout

UpdateSpeakers returns nil if the stabilized display order is unchanged.

type PadLayout added in v1.15.0

type PadLayout struct {
	TrackID string
	X, Y    int
	W, H    int
	ZOrder  uint
	Alpha   float64
}

type SpeakerInfo added in v1.15.0

type SpeakerInfo struct {
	Identity   string
	AudioLevel float32
	IsSpeaking bool
}

type Stream added in v1.9.1

type Stream struct {
	Conf *config.Stream
	Bin  *gstreamer.Bin
	// contains filtered or unexported fields
}

func (*Stream) Reset added in v1.9.1

func (s *Stream) Reset(streamErr error) (bool, error)

func (*Stream) StartMonitor added in v1.14.0

func (s *Stream) StartMonitor()

func (*Stream) Stats added in v1.9.1

func (s *Stream) Stats() (*logging.StreamStats, bool)

func (*Stream) StopMonitor added in v1.14.0

func (s *Stream) StopMonitor()

StopMonitor signals the monitor goroutine to exit. Idempotent and safe to call before StartMonitor — runMonitor's first select observes the broken fuse and returns.

type StreamBin added in v1.7.8

type StreamBin struct {
	Bin        *gstreamer.Bin
	OutputType types.OutputType
	// contains filtered or unexported fields
}

func BuildStreamBin added in v1.7.8

func BuildStreamBin(pipeline *gstreamer.Pipeline, p *config.PipelineConfig, o *config.StreamConfig) (*StreamBin, error)

func (*StreamBin) BuildStream added in v1.9.1

func (sb *StreamBin) BuildStream(stream *config.Stream, framerate int32) (*Stream, error)

type TrackSource added in v1.15.0

type TrackSource int

type VideoBin added in v1.7.8

type VideoBin struct {
	// contains filtered or unexported fields
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL