defs

package
v1.3.1 Latest Latest
Warning

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

Go to latest
Published: Nov 26, 2023 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package defs contains shared definitions.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type APIError

type APIError struct {
	Error string `json:"error"`
}

APIError is a generic error.

type APIHLSMuxer

type APIHLSMuxer struct {
	Path        string    `json:"path"`
	Created     time.Time `json:"created"`
	LastRequest time.Time `json:"lastRequest"`
	BytesSent   uint64    `json:"bytesSent"`
}

APIHLSMuxer is an HLS muxer.

type APIHLSMuxerList

type APIHLSMuxerList struct {
	ItemCount int            `json:"itemCount"`
	PageCount int            `json:"pageCount"`
	Items     []*APIHLSMuxer `json:"items"`
}

APIHLSMuxerList is a list of HLS muxers.

type APIPath

type APIPath struct {
	Name          string                  `json:"name"`
	ConfName      string                  `json:"confName"`
	Source        *APIPathSourceOrReader  `json:"source"`
	Ready         bool                    `json:"ready"`
	ReadyTime     *time.Time              `json:"readyTime"`
	Tracks        []string                `json:"tracks"`
	BytesReceived uint64                  `json:"bytesReceived"`
	BytesSent     uint64                  `json:"bytesSent"`
	Readers       []APIPathSourceOrReader `json:"readers"`
}

APIPath is a path.

type APIPathConfList

type APIPathConfList struct {
	ItemCount int          `json:"itemCount"`
	PageCount int          `json:"pageCount"`
	Items     []*conf.Path `json:"items"`
}

APIPathConfList is a list of path configurations.

type APIPathList

type APIPathList struct {
	ItemCount int        `json:"itemCount"`
	PageCount int        `json:"pageCount"`
	Items     []*APIPath `json:"items"`
}

APIPathList is a list of paths.

type APIPathSourceOrReader

type APIPathSourceOrReader struct {
	Type string `json:"type"`
	ID   string `json:"id"`
}

APIPathSourceOrReader is a source or a reader.

type APIRTMPConn

type APIRTMPConn struct {
	ID            uuid.UUID        `json:"id"`
	Created       time.Time        `json:"created"`
	RemoteAddr    string           `json:"remoteAddr"`
	State         APIRTMPConnState `json:"state"`
	Path          string           `json:"path"`
	BytesReceived uint64           `json:"bytesReceived"`
	BytesSent     uint64           `json:"bytesSent"`
}

APIRTMPConn is a RTMP connection.

type APIRTMPConnList

type APIRTMPConnList struct {
	ItemCount int            `json:"itemCount"`
	PageCount int            `json:"pageCount"`
	Items     []*APIRTMPConn `json:"items"`
}

APIRTMPConnList is a list of RTMP connections.

type APIRTMPConnState

type APIRTMPConnState string

APIRTMPConnState is the state of a RTMP connection.

const (
	APIRTMPConnStateIdle    APIRTMPConnState = "idle"
	APIRTMPConnStateRead    APIRTMPConnState = "read"
	APIRTMPConnStatePublish APIRTMPConnState = "publish"
)

states.

type APIRTSPConn

type APIRTSPConn struct {
	ID            uuid.UUID `json:"id"`
	Created       time.Time `json:"created"`
	RemoteAddr    string    `json:"remoteAddr"`
	BytesReceived uint64    `json:"bytesReceived"`
	BytesSent     uint64    `json:"bytesSent"`
}

APIRTSPConn is a RTSP connection.

type APIRTSPConnsList

type APIRTSPConnsList struct {
	ItemCount int            `json:"itemCount"`
	PageCount int            `json:"pageCount"`
	Items     []*APIRTSPConn `json:"items"`
}

APIRTSPConnsList is a list of RTSP connections.

type APIRTSPSession

type APIRTSPSession struct {
	ID            uuid.UUID           `json:"id"`
	Created       time.Time           `json:"created"`
	RemoteAddr    string              `json:"remoteAddr"`
	State         APIRTSPSessionState `json:"state"`
	Path          string              `json:"path"`
	Transport     *string             `json:"transport"`
	BytesReceived uint64              `json:"bytesReceived"`
	BytesSent     uint64              `json:"bytesSent"`
}

APIRTSPSession is a RTSP session.

type APIRTSPSessionList

type APIRTSPSessionList struct {
	ItemCount int               `json:"itemCount"`
	PageCount int               `json:"pageCount"`
	Items     []*APIRTSPSession `json:"items"`
}

APIRTSPSessionList is a list of RTSP sessions.

type APIRTSPSessionState

type APIRTSPSessionState string

APIRTSPSessionState is the state of a RTSP session.

const (
	APIRTSPSessionStateIdle    APIRTSPSessionState = "idle"
	APIRTSPSessionStateRead    APIRTSPSessionState = "read"
	APIRTSPSessionStatePublish APIRTSPSessionState = "publish"
)

states.

type APISRTConn

type APISRTConn struct {
	ID            uuid.UUID       `json:"id"`
	Created       time.Time       `json:"created"`
	RemoteAddr    string          `json:"remoteAddr"`
	State         APISRTConnState `json:"state"`
	Path          string          `json:"path"`
	BytesReceived uint64          `json:"bytesReceived"`
	BytesSent     uint64          `json:"bytesSent"`
}

APISRTConn is a SRT connection.

type APISRTConnList

type APISRTConnList struct {
	ItemCount int           `json:"itemCount"`
	PageCount int           `json:"pageCount"`
	Items     []*APISRTConn `json:"items"`
}

APISRTConnList is a list of SRT connections.

type APISRTConnState

type APISRTConnState string

APISRTConnState is the state of a SRT connection.

const (
	APISRTConnStateIdle    APISRTConnState = "idle"
	APISRTConnStateRead    APISRTConnState = "read"
	APISRTConnStatePublish APISRTConnState = "publish"
)

states.

type APIWebRTCSession

type APIWebRTCSession struct {
	ID                        uuid.UUID             `json:"id"`
	Created                   time.Time             `json:"created"`
	RemoteAddr                string                `json:"remoteAddr"`
	PeerConnectionEstablished bool                  `json:"peerConnectionEstablished"`
	LocalCandidate            string                `json:"localCandidate"`
	RemoteCandidate           string                `json:"remoteCandidate"`
	State                     APIWebRTCSessionState `json:"state"`
	Path                      string                `json:"path"`
	BytesReceived             uint64                `json:"bytesReceived"`
	BytesSent                 uint64                `json:"bytesSent"`
}

APIWebRTCSession is a WebRTC session.

type APIWebRTCSessionList

type APIWebRTCSessionList struct {
	ItemCount int                 `json:"itemCount"`
	PageCount int                 `json:"pageCount"`
	Items     []*APIWebRTCSession `json:"items"`
}

APIWebRTCSessionList is a list of WebRTC sessions.

type APIWebRTCSessionState

type APIWebRTCSessionState string

APIWebRTCSessionState is the state of a WebRTC connection.

const (
	APIWebRTCSessionStateRead    APIWebRTCSessionState = "read"
	APIWebRTCSessionStatePublish APIWebRTCSessionState = "publish"
)

states.

type PathSourceStaticSetNotReadyReq

type PathSourceStaticSetNotReadyReq struct {
	Res chan struct{}
}

PathSourceStaticSetNotReadyReq is a set not ready request from a static source.

type PathSourceStaticSetReadyReq

type PathSourceStaticSetReadyReq struct {
	Desc               *description.Session
	GenerateRTPPackets bool
	Res                chan PathSourceStaticSetReadyRes
}

PathSourceStaticSetReadyReq is a set ready request from a static source.

type PathSourceStaticSetReadyRes

type PathSourceStaticSetReadyRes struct {
	Stream *stream.Stream
	Err    error
}

PathSourceStaticSetReadyRes is a set ready response to a static source.

type StaticSource

type StaticSource interface {
	logger.Writer
	Run(StaticSourceRunParams) error
	APISourceDescribe() APIPathSourceOrReader
}

StaticSource is a static source.

type StaticSourceParent

type StaticSourceParent interface {
	logger.Writer
	SetReady(req PathSourceStaticSetReadyReq) PathSourceStaticSetReadyRes
	SetNotReady(req PathSourceStaticSetNotReadyReq)
}

StaticSourceParent is the parent of a static source.

type StaticSourceRunParams

type StaticSourceRunParams struct {
	Context    context.Context
	Conf       *conf.Path
	ReloadConf chan *conf.Path
}

StaticSourceRunParams is the set of params passed to Run().

Jump to

Keyboard shortcuts

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