Documentation
¶
Overview ¶
Package viamrtsp implements RTSP camera support in a Viam module
Index ¶
Constants ¶
View Source
const ( // Unknown indicates an error when no available video codecs could be identified Unknown videoCodec = iota // Agnostic indicates that a discrete video codec has yet to be identified Agnostic // H264 indicates the h264 video codec H264 // H265 indicates the h265 video codec H265 // MJPEG indicates the mjpeg video codec MJPEG // MPEG4 indicates the mpeg4 video codec MPEG4 )
Variables ¶
View Source
var ( // Family is the namespace family for the viamrtsp module. Family = resource.ModelNamespace("viam").WithFamily("viamrtsp") // ModelAgnostic selects the best available codec. ModelAgnostic = Family.WithModel("rtsp") // ModelH264 uses the h264 codec. ModelH264 = Family.WithModel("rtsp-h264") // ModelH265 uses the h265 codec. ModelH265 = Family.WithModel("rtsp-h265") // ModelMJPEG uses the mjpeg codec. ModelMJPEG = Family.WithModel("rtsp-mjpeg") // ModelMPEG4 uses the mpeg4 codec. ModelMPEG4 = Family.WithModel("rtsp-mpeg4") // Models is a slice containing the above available models. Models = []resource.Model{ModelAgnostic, ModelH264, ModelH265, ModelMJPEG, ModelMPEG4} // ErrH264PassthroughNotEnabled is an error indicating H264 passthrough is not enabled. ErrH264PassthroughNotEnabled = errors.New("H264 passthrough is not enabled") )
Functions ¶
func H2645StartCode ¶
func H2645StartCode() []byte
H2645StartCode is the start code byte sequence for H264/H265 NALs.
func NewRTSPCamera ¶
func NewRTSPCamera(ctx context.Context, _ resource.Dependencies, conf resource.Config, logger logging.Logger) (camera.Camera, error)
NewRTSPCamera creates a new rtsp camera from the config, that has to have a viamrtsp.Config.
func SetLibAVLogLevelFatal ¶
func SetLibAVLogLevelFatal()
SetLibAVLogLevelFatal sets libav errors to fatal log level to cut down on log spam
Types ¶
Directories
¶
Path | Synopsis |
---|---|
cmd
|
|
discovery
This package is a binary for trying out onvif discovery
|
This package is a binary for trying out onvif discovery |
module
This package provides the entrypoint for the module
|
This package provides the entrypoint for the module |
remote
This package provides the entrypoint for the remote
|
This package provides the entrypoint for the remote |
Package formatprocessor processes RTP packets into Units when can then be re-encoded heavily copied from https://github.com/bluenviron/mediamtx/blob/main/internal/formatprocessor/h264.go https://github.com/bluenviron/mediamtx/blob/main/internal/unit/h264.go & related package & the rest of that package
|
Package formatprocessor processes RTP packets into Units when can then be re-encoded heavily copied from https://github.com/bluenviron/mediamtx/blob/main/internal/formatprocessor/h264.go https://github.com/bluenviron/mediamtx/blob/main/internal/unit/h264.go & related package & the rest of that package |
This package is a test client for RTSP cam integration tests
|
This package is a test client for RTSP cam integration tests |
Package viamonvif provides ONVIF integration to the viamrtsp module
|
Package viamonvif provides ONVIF integration to the viamrtsp module |
device
Package device allows communication with an onvif device inspired by https://github.com/use-go/onvif NOTE(Nick S): This code currently isn't cancellable.
|
Package device allows communication with an onvif device inspired by https://github.com/use-go/onvif NOTE(Nick S): This code currently isn't cancellable. |
gosoap
Package gosoap provides a minimal soap client for viamonvif
|
Package gosoap provides a minimal soap client for viamonvif |
xsd
Package xsd provides base onvif types inspired by https://github.com/use-go/onvif
|
Package xsd provides base onvif types inspired by https://github.com/use-go/onvif |
xsd/iso8601
Package iso8601 provides minimal iso8601 support inspired by https://github.com/use-go/onvif
|
Package iso8601 provides minimal iso8601 support inspired by https://github.com/use-go/onvif |
xsd/onvif
Package onvif provides base onvif types inspired by https://github.com/use-go/onvif
|
Package onvif provides base onvif types inspired by https://github.com/use-go/onvif |
Package viamonvifdiscovery provides the discovery service that wraps ONVIF integration for the viamrtsp module
|
Package viamonvifdiscovery provides the discovery service that wraps ONVIF integration for the viamrtsp module |
Click to show internal directories.
Click to hide internal directories.