Documentation ¶
Index ¶
- type AudioConfig
- type AzureConfig
- type BaseConfig
- type CPUCostConfig
- type EncodedOutput
- type FileConfig
- type GCPConfig
- type OutputConfig
- type PipelineConfig
- func (p *PipelineConfig) GetFileConfig() *FileConfig
- func (p *PipelineConfig) GetSegmentConfig() *SegmentConfig
- func (p *PipelineConfig) GetStreamConfig() *StreamConfig
- func (p *PipelineConfig) GetWebsocketConfig() *StreamConfig
- func (p *PipelineConfig) Update(request *rpc.StartEgressRequest) error
- func (p *PipelineConfig) UpdateInfoFromSDK(identifier string, replacements map[string]string) error
- func (p *PipelineConfig) ValidateUrl(rawUrl string, outputType types.OutputType) (string, error)
- type S3Config
- type SDKSourceParams
- type SegmentConfig
- type ServiceConfig
- type SessionLimits
- type SourceConfig
- type StreamConfig
- type VideoConfig
- type WebSourceParams
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AudioConfig ¶ added in v1.5.6
type AzureConfig ¶
type AzureConfig struct { AccountName string `yaml:"account_name"` // (env AZURE_STORAGE_ACCOUNT) AccountKey string `yaml:"account_key"` // (env AZURE_STORAGE_KEY) ContainerName string `yaml:"container_name"` }
func (*AzureConfig) ToAzureUpload ¶ added in v1.5.3
func (c *AzureConfig) ToAzureUpload() *livekit.AzureBlobUpload
type BaseConfig ¶ added in v1.5.3
type BaseConfig struct { NodeID string // do not supply - will be overwritten Redis *redis.RedisConfig `yaml:"redis"` // required ApiKey string `yaml:"api_key"` // required (env LIVEKIT_API_KEY) ApiSecret string `yaml:"api_secret"` // required (env LIVEKIT_API_SECRET) WsUrl string `yaml:"ws_url"` // required (env LIVEKIT_WS_URL) TemplateBase string `yaml:"template_base"` // custom template base url Insecure bool `yaml:"insecure"` // allow chrome to connect to an insecure websocket LocalOutputDirectory string `yaml:"local_directory"` // used for temporary storage before upload Logging logger.Config `yaml:"logging"` LogLevel string `yaml:"log_level"` // TODO: deprecate ClusterID string `yaml:"cluster_id"` // Which cluster this egress belongs to BackupStorage string `yaml:"backup_storage"` // Files will be moved here if the upload fails S3 *S3Config `yaml:"s3"` Azure *AzureConfig `yaml:"azure"` GCP *GCPConfig `yaml:"gcp"` AliOSS *S3Config `yaml:"alioss"` SessionLimits `yaml:"session_limits"` }
type CPUCostConfig ¶ added in v1.0.4
type EncodedOutput ¶ added in v1.5.6
type EncodedOutput interface { GetFile() *livekit.EncodedFileOutput GetStream() *livekit.StreamOutput GetSegments() *livekit.SegmentedFileOutput GetFileOutputs() []*livekit.EncodedFileOutput GetStreamOutputs() []*livekit.StreamOutput GetSegmentOutputs() []*livekit.SegmentedFileOutput }
type FileConfig ¶ added in v1.7.1
type FileConfig struct { FileInfo *livekit.FileInfo LocalFilepath string StorageFilepath string DisableManifest bool UploadConfig interface{} // contains filtered or unexported fields }
func (FileConfig) GetOutputType ¶ added in v1.7.1
func (o FileConfig) GetOutputType() types.OutputType
type GCPConfig ¶
type GCPConfig struct { CredentialsJSON string `yaml:"credentials_json"` // (env GOOGLE_APPLICATION_CREDENTIALS) Bucket string `yaml:"bucket"` }
func (*GCPConfig) ToGCPUpload ¶ added in v1.5.3
type OutputConfig ¶ added in v1.5.6
type OutputConfig interface {
GetOutputType() types.OutputType
}
type PipelineConfig ¶ added in v1.5.3
type PipelineConfig struct { BaseConfig `yaml:",inline"` HandlerID string `yaml:"handler_id"` TmpDir string `yaml:"tmp_dir"` SourceConfig `yaml:"-"` AudioConfig `yaml:"-"` VideoConfig `yaml:"-"` Outputs map[types.EgressType]OutputConfig `yaml:"-"` OutputCount int GstReady chan struct{} `yaml:"-"` Info *livekit.EgressInfo `yaml:"-"` }
func GetValidatedPipelineConfig ¶ added in v1.5.3
func GetValidatedPipelineConfig(conf *ServiceConfig, req *rpc.StartEgressRequest) (*PipelineConfig, error)
func NewPipelineConfig ¶ added in v1.5.3
func NewPipelineConfig(confString string, req *rpc.StartEgressRequest) (*PipelineConfig, error)
func (*PipelineConfig) GetFileConfig ¶ added in v1.7.1
func (p *PipelineConfig) GetFileConfig() *FileConfig
func (*PipelineConfig) GetSegmentConfig ¶ added in v1.7.1
func (p *PipelineConfig) GetSegmentConfig() *SegmentConfig
func (*PipelineConfig) GetStreamConfig ¶ added in v1.7.1
func (p *PipelineConfig) GetStreamConfig() *StreamConfig
func (*PipelineConfig) GetWebsocketConfig ¶ added in v1.7.1
func (p *PipelineConfig) GetWebsocketConfig() *StreamConfig
func (*PipelineConfig) Update ¶ added in v1.5.3
func (p *PipelineConfig) Update(request *rpc.StartEgressRequest) error
func (*PipelineConfig) UpdateInfoFromSDK ¶ added in v1.5.6
func (p *PipelineConfig) UpdateInfoFromSDK(identifier string, replacements map[string]string) error
used for sdk input source
func (*PipelineConfig) ValidateUrl ¶ added in v1.5.6
func (p *PipelineConfig) ValidateUrl(rawUrl string, outputType types.OutputType) (string, error)
type S3Config ¶
type S3Config struct { AccessKey string `yaml:"access_key"` // (env AWS_ACCESS_KEY_ID) Secret string `yaml:"secret"` // (env AWS_SECRET_ACCESS_KEY) Region string `yaml:"region"` // (env AWS_DEFAULT_REGION) Endpoint string `yaml:"endpoint"` Bucket string `yaml:"bucket"` ForcePathStyle bool `yaml:"force_path_style"` }
func (*S3Config) ToAliOSSUpload ¶ added in v1.5.3
func (c *S3Config) ToAliOSSUpload() *livekit.AliOSSUpload
func (*S3Config) ToS3Upload ¶ added in v1.5.3
type SDKSourceParams ¶ added in v1.5.6
type SDKSourceParams struct { TrackID string TrackSource string TrackKind string AudioTrackID string VideoTrackID string ParticipantIdentity string AudioSrc *app.Source VideoSrc *app.Source AudioInCodec types.MimeType VideoInCodec types.MimeType AudioCodecParams webrtc.RTPCodecParameters VideoCodecParams webrtc.RTPCodecParameters }
type SegmentConfig ¶ added in v1.7.1
type SegmentConfig struct { SegmentsInfo *livekit.SegmentsInfo LocalDir string StorageDir string PlaylistFilename string SegmentPrefix string SegmentSuffix livekit.SegmentedFileSuffix SegmentDuration int DisableManifest bool UploadConfig interface{} // contains filtered or unexported fields }
func (SegmentConfig) GetOutputType ¶ added in v1.7.1
func (o SegmentConfig) GetOutputType() types.OutputType
type ServiceConfig ¶ added in v1.5.3
type ServiceConfig struct { BaseConfig `yaml:",inline"` HealthPort int `yaml:"health_port"` TemplatePort int `yaml:"template_port"` PrometheusPort int `yaml:"prometheus_port"` DebugHandlerPort int `yaml:"debug_handler_port"` // Port used to launch the egress debug handler. 0 means debug handler disabled. CPUCostConfig `yaml:"cpu_cost"` // CPU costs for various egress types }
func NewServiceConfig ¶ added in v1.5.3
func NewServiceConfig(confString string) (*ServiceConfig, error)
type SessionLimits ¶ added in v1.2.0
type SourceConfig ¶ added in v1.5.6
type SourceConfig struct { SourceType types.SourceType Latency uint64 WebSourceParams SDKSourceParams }
type StreamConfig ¶ added in v1.7.1
type StreamConfig struct { Urls []string StreamInfo map[string]*livekit.StreamInfo // contains filtered or unexported fields }
func (StreamConfig) GetOutputType ¶ added in v1.7.1
func (o StreamConfig) GetOutputType() types.OutputType
type VideoConfig ¶ added in v1.5.6
Click to show internal directories.
Click to hide internal directories.