services

package
v0.0.0-...-bb59fc0 Latest Latest
Warning

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

Go to latest
Published: Oct 10, 2022 License: MIT Imports: 1 Imported by: 0

README

Services

Services are at their most basic form authentication mechanisms for streaming.

Examples:

  1. Glimesh
  2. Generic REST

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Service

type Service interface {
	// Name of the service, eg: Glimesh
	Name() string
	// Connect to the service
	Connect() error
	// GetHmacKey Get the private HMAC key for a given channel ID
	GetHmacKey(channelID ftl.ChannelID) ([]byte, error)
	// StartStream Starts a stream for a given channel
	StartStream(channelID ftl.ChannelID) (ftl.StreamID, error)
	// EndStream Marks the given stream ID as ended on the service
	EndStream(streamID ftl.StreamID) error
	// UpdateStreamMetadata Updates the service with additional metadata about a stream
	UpdateStreamMetadata(streamID ftl.StreamID, metadata StreamMetadata) error
	// SendJpegPreviewImage Sends a JPEG preview image of a stream to the service
	SendJpegPreviewImage(streamID ftl.StreamID, img []byte) error
}

type StreamMetadata

type StreamMetadata struct {
	AudioCodec        string
	IngestServer      string
	IngestViewers     int
	LostPackets       int
	NackPackets       int
	RecvPackets       int
	SourceBitrate     int
	SourcePing        int
	StreamTimeSeconds int
	VendorName        string
	VendorVersion     string
	VideoCodec        string
	VideoHeight       int
	VideoWidth        int
}

TODO: Move outta here

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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