service

package
v1.4.1 Latest Latest
Warning

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

Go to latest
Published: Apr 26, 2024 License: Apache-2.0 Imports: 41 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DeregisterIngressRpcHandlers added in v1.0.0

func DeregisterIngressRpcHandlers(server rpc.IngressHandlerServer, info *livekit.IngressInfo)

func NewCmd added in v1.3.0

func NewCmd(ctx context.Context, p *params.Params) (*exec.Cmd, error)

func RegisterIngressRpcHandlers added in v1.0.0

func RegisterIngressRpcHandlers(server rpc.IngressHandlerServer, info *livekit.IngressInfo) error

func RegisterListIngress added in v1.4.0

func RegisterListIngress(topic string, srv rpc.IngressInternalServer) error

Types

type Handler

type Handler struct {
	ipc.UnimplementedIngressHandlerServer
	// contains filtered or unexported fields
}

func NewHandler

func NewHandler(conf *config.Config, rpcClient rpc.IOInfoClient) *Handler

func (*Handler) DeleteIngress

func (h *Handler) DeleteIngress(ctx context.Context, req *livekit.DeleteIngressRequest) (*livekit.IngressState, error)

func (*Handler) DeleteWHIPResource added in v1.0.0

func (h *Handler) DeleteWHIPResource(ctx context.Context, req *rpc.DeleteWHIPResourceRequest) (*google_protobuf2.Empty, error)

func (*Handler) GatherMediaStats added in v1.3.0

func (*Handler) GetPProf added in v1.1.0

func (h *Handler) GetPProf(ctx context.Context, req *ipc.PProfRequest) (*ipc.PProfResponse, error)

func (*Handler) GetPipelineDot added in v1.1.0

func (*Handler) HandleIngress

func (h *Handler) HandleIngress(ctx context.Context, info *livekit.IngressInfo, wsUrl, token, relayToken string, loggingFields map[string]string, extraParams any) error

func (*Handler) Kill

func (h *Handler) Kill()

func (*Handler) UpdateIngress

func (h *Handler) UpdateIngress(ctx context.Context, req *livekit.UpdateIngressRequest) (*livekit.IngressState, error)

func (*Handler) UpdateMediaStats added in v1.1.0

func (h *Handler) UpdateMediaStats(ctx context.Context, in *ipc.UpdateMediaStatsRequest) (*google_protobuf2.Empty, error)

type ProcessManager

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

func NewProcessManager

func NewProcessManager(sm *SessionManager, newCmd func(ctx context.Context, p *params.Params) (*exec.Cmd, error)) *ProcessManager

type Relay added in v1.0.0

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

func NewRelay added in v1.0.0

func NewRelay(rtmpServer *rtmp.RTMPServer, whipServer *whip.WHIPServer) *Relay

func (*Relay) Start added in v1.0.0

func (r *Relay) Start(conf *config.Config) error

func (*Relay) Stop added in v1.0.0

func (r *Relay) Stop() error

type Service

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

func NewService

func NewService(conf *config.Config, psrpcClient rpc.IOInfoClient, bus psrpc.MessageBus, rtmpSrv *rtmp.RTMPServer, whipSrv *whip.WHIPServer, newCmd func(ctx context.Context, p *params.Params) (*exec.Cmd, error)) *Service

func (*Service) AvailabilityHandler added in v1.0.0

func (s *Service) AvailabilityHandler(w http.ResponseWriter, r *http.Request)

func (*Service) CanAccept

func (s *Service) CanAccept() bool

func (*Service) GetGstPipelineDotFile added in v1.1.0

func (s *Service) GetGstPipelineDotFile(resourceID string) (string, error)

func (*Service) GetHealthHandlers added in v1.2.2

func (s *Service) GetHealthHandlers() whip.HealthHandlers

func (*Service) HandleRTMPPublishRequest

func (s *Service) HandleRTMPPublishRequest(streamKey, resourceId string) (*params.Params, *stats.LocalMediaStatsGatherer, error)

func (*Service) HandleURLPublishRequest added in v1.1.0

func (s *Service) HandleURLPublishRequest(ctx context.Context, resourceId string, req *rpc.StartIngressRequest) (*livekit.IngressInfo, error)

func (*Service) HandleWHIPPublishRequest added in v1.0.0

func (s *Service) HandleWHIPPublishRequest(streamKey, resourceId string, ihs rpc.IngressHandlerServerImpl) (p *params.Params, ready func(mimeTypes map[types.StreamKind]string, err error) *stats.LocalMediaStatsGatherer, ended func(err error), err error)

func (*Service) HealthHandler added in v1.0.0

func (s *Service) HealthHandler(w http.ResponseWriter, r *http.Request)

func (*Service) IsActive added in v1.2.2

func (s *Service) IsActive() bool

func (*Service) ListActiveIngress

func (*Service) ListIngress

func (s *Service) ListIngress() []string

func (*Service) Pause added in v1.2.2

func (s *Service) Pause()

func (*Service) Resume added in v1.2.2

func (s *Service) Resume()

func (*Service) Run

func (s *Service) Run() error

func (*Service) StartDebugHandlers added in v1.1.0

func (s *Service) StartDebugHandlers()

func (*Service) StartIngress added in v1.1.0

func (s *Service) StartIngress(ctx context.Context, req *rpc.StartIngressRequest) (*livekit.IngressInfo, error)

func (*Service) StartIngressAffinity added in v1.1.0

func (s *Service) StartIngressAffinity(ctx context.Context, req *rpc.StartIngressRequest) float32

func (*Service) Stop

func (s *Service) Stop(kill bool)

func (*Service) UpdateConfig added in v1.2.2

func (s *Service) UpdateConfig(conf *config.Config)

type SessionManager added in v1.0.0

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

func NewSessionManager added in v1.0.0

func NewSessionManager(monitor *stats.Monitor) *SessionManager

func (*SessionManager) GetIngressMediaStats added in v1.3.0

func (sm *SessionManager) GetIngressMediaStats(resourceId string) (*stats.LocalMediaStatsGatherer, error)

func (*SessionManager) GetIngressSessionAPI added in v1.1.0

func (sm *SessionManager) GetIngressSessionAPI(resourceId string) (types.SessionAPI, error)

func (*SessionManager) IngressEnded added in v1.0.0

func (sm *SessionManager) IngressEnded(info *livekit.IngressInfo)

func (*SessionManager) IngressStarted added in v1.0.0

func (sm *SessionManager) IngressStarted(info *livekit.IngressInfo, sessionAPI types.SessionAPI)

func (*SessionManager) IsIdle added in v1.0.0

func (sm *SessionManager) IsIdle() bool

func (*SessionManager) ListIngress added in v1.0.0

func (sm *SessionManager) ListIngress() []string

Jump to

Keyboard shortcuts

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