Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ChannelConfig ¶
type ChannelConfig struct { Name string `json:"name"` StartNr int `json:"startNr"` AuthUser string `json:"authUser"` AuthPswd string `json:"authPassword"` TimeShiftBufferDepthS uint32 `json:"timeShiftBufferDepthS"` ReceiveNrRawSegments uint32 `json:"receiveNrRawSegments"` Reps []RepresentationConfig `json:"reps"` Ignore bool `json:"ignore,omitempty"` }
func (*ChannelConfig) GetRepConfig ¶
func (cc *ChannelConfig) GetRepConfig(name string) (*RepresentationConfig, bool)
type ChannelMgr ¶
type ChannelMgr struct {
// contains filtered or unexported fields
}
ChannelMgr is a manager for channel objects. The key is the channel name that must be unique.
func NewChannelMgr ¶
func NewChannelMgr(cfg *Config, defaultTimeShiftBufferDepthS, defaultReceiveNrRawSegments uint32) *ChannelMgr
func (*ChannelMgr) AddChannel ¶
func (cm *ChannelMgr) AddChannel(ctx context.Context, chName, chDir string)
func (*ChannelMgr) GetChannel ¶
func (cm *ChannelMgr) GetChannel(chName string) (*channel, bool)
type Config ¶
type Config struct { DefaultUser string `json:"defaultUser"` DefaultPswd string `json:"defaultPassword"` Channels []ChannelConfig `json:"channels"` }
Config provides configuration for channels. If DefaultUsr or DefaultPswd is set, it will be used as default for all channels, meaning that no password less channels are allowed. Drop means that a channel will be dropped and not processed.
func GetEmptyConfig ¶
func GetEmptyConfig() *Config
type Options ¶
type Options struct {
// contains filtered or unexported fields
}
func ParseOptions ¶
type Receiver ¶
type Receiver struct {
// contains filtered or unexported fields
}
Receiver is a receiver of CMAF segments. There may be parallel full streams with their own set of tracks (streams).
func NewReceiver ¶
func (*Receiver) DeleteHandlerFunc ¶
func (r *Receiver) DeleteHandlerFunc(w http.ResponseWriter, req *http.Request)
DeleteHandlerFunc is a handler for deleting segments. Not used since fixed timeshiftBufferDepth.
func (*Receiver) SegmentHandlerFunc ¶
func (r *Receiver) SegmentHandlerFunc(w http.ResponseWriter, req *http.Request)
SegmentHandlerFunc is a handler for receiving segments, but will also accept MPDs (extension .mpd).
type RepresentationConfig ¶
type RepresentationConfig struct { Name string `json:"name"` Language string `json:"language"` Role string `json:"role"` DisplayName string `json:"displayName"` Bitrate uint32 `json:"bitrate,omitempty"` Ignore bool `json:"ignore,omitempty"` }
RepresentationConfig provides configuration for a representation. If Name matches an incoming stream, non-zero values here will override the values from the incoming stream. Ignore means that the representation should be ignored.