mediamtx/internal/core/source.go

27 lines
568 B
Go
Raw Normal View History

package core
// source is an entity that can provide a stream.
// it can be:
// - a publisher
// - a static source
// - a redirect source
type source interface {
2021-10-27 19:01:00 +00:00
onSourceAPIDescribe() interface{}
}
// sourceStatic is an entity that can provide a static stream.
type sourceStatic interface {
source
2021-10-27 19:01:00 +00:00
close()
}
// sourceRedirect is a source that redirects to another one.
type sourceRedirect struct{}
// onSourceAPIDescribe implements source.
func (*sourceRedirect) onSourceAPIDescribe() interface{} {
return struct {
Type string `json:"type"`
}{"redirect"}
}