ONVIF:...rofile(3pm)
β¨ ONVIF::Media::Types::Profile β¨
okay bestie, come sit with me because we're about to talk about ONVIF::Media::Types::Profile from the ONVIF::Media family of Perl modules (manual section 3pm, user contributed Perl docs, iykyk) π
π NAME π
ONVIF::Media::Types::Profile β the moment you've all been waiting for π
πΈ DESCRIPTION πΈ
It's a Perl data type class for the XML Schema defined complexType Profile, straight outta the namespace http://www.onvif.org/ver10/schema. no cap, that's the whole vibe β¨
So like, a profile is a set of interconnected configuration entities. The configurations get provided by the NVT, and they can be either static or created dynamically by the NVT. For example (bestie, pay attention, this is the example), the dynamic configurations can be created by the NVT depending on current available encoding resources. slay π₯
π¦ PROPERTIES π¦
The following properties may be accessed using get_PROPERTY / set_PROPERTY methods β yes, the getter/setter grindset π
NameVideoSourceConfigurationAudioSourceConfigurationVideoEncoderConfigurationAudioEncoderConfigurationVideoAnalyticsConfigurationPTZConfigurationMetadataConfigurationExtension
π METHODS π
π new
Constructor. The following data structure may be passed to new():
{ # ONVIF::Media::Types::Profile
Name => $some_value, # Name
VideoSourceConfiguration => { # ONVIF::Media::Types::VideoSourceConfiguration
SourceToken => $some_value, # ReferenceToken
Bounds => ,
Extension => { # ONVIF::Media::Types::VideoSourceConfigurationExtension
Rotate => { # ONVIF::Media::Types::Rotate
Mode => $some_value, # RotateMode
Degree => $some_value, # int
Extension => { # ONVIF::Media::Types::RotateExtension
},
},
Extension => { # ONVIF::Media::Types::VideoSourceConfigurationExtension2
},
},
},
AudioSourceConfiguration => { # ONVIF::Media::Types::AudioSourceConfiguration
SourceToken => $some_value, # ReferenceToken
},
VideoEncoderConfiguration => { # ONVIF::Media::Types::VideoEncoderConfiguration
Encoding => $some_value, # VideoEncoding
Resolution => { # ONVIF::Media::Types::VideoResolution
Width => $some_value, # int
Height => $some_value, # int
},
Quality => $some_value, # float
RateControl => { # ONVIF::Media::Types::VideoRateControl
FrameRateLimit => $some_value, # int
EncodingInterval => $some_value, # int
BitrateLimit => $some_value, # int
},
MPEG4 => { # ONVIF::Media::Types::Mpeg4Configuration
GovLength => $some_value, # int
Mpeg4Profile => $some_value, # Mpeg4Profile
},
H264 => { # ONVIF::Media::Types::H264Configuration
GovLength => $some_value, # int
H264Profile => $some_value, # H264Profile
},
Multicast => { # ONVIF::Media::Types::MulticastConfiguration
Address => { # ONVIF::Media::Types::IPAddress
Type => $some_value, # IPType
IPv4Address => $some_value, # IPv4Address
IPv6Address => $some_value, # IPv6Address
},
Port => $some_value, # int
TTL => $some_value, # int
AutoStart => $some_value, # boolean
},
SessionTimeout => $some_value, # duration
},
AudioEncoderConfiguration => { # ONVIF::Media::Types::AudioEncoderConfiguration
Encoding => $some_value, # AudioEncoding
Bitrate => $some_value, # int
SampleRate => $some_value, # int
Multicast => { # ONVIF::Media::Types::MulticastConfiguration
Address => { # ONVIF::Media::Types::IPAddress
Type => $some_value, # IPType
IPv4Address => $some_value, # IPv4Address
IPv6Address => $some_value, # IPv6Address
},
Port => $some_value, # int
TTL => $some_value, # int
AutoStart => $some_value, # boolean
},
SessionTimeout => $some_value, # duration
},
VideoAnalyticsConfiguration => { # ONVIF::Media::Types::VideoAnalyticsConfiguration
AnalyticsEngineConfiguration => { # ONVIF::Media::Types::AnalyticsEngineConfiguration
AnalyticsModule => { # ONVIF::Media::Types::Config
Parameters => { # ONVIF::Media::Types::ItemList
SimpleItem => ,
ElementItem => {
},
Extension => { # ONVIF::Media::Types::ItemListExtension
},
},
},
Extension => { # ONVIF::Media::Types::AnalyticsEngineConfigurationExtension
},
},
RuleEngineConfiguration => { # ONVIF::Media::Types::RuleEngineConfiguration
Rule => { # ONVIF::Media::Types::Config
Parameters => { # ONVIF::Media::Types::ItemList
SimpleItem => ,
ElementItem => {
},
Extension => { # ONVIF::Media::Types::ItemListExtension
},
},
},
Extension => { # ONVIF::Media::Types::RuleEngineConfigurationExtension
},
},
},
PTZConfiguration => { # ONVIF::Media::Types::PTZConfiguration
NodeToken => $some_value, # ReferenceToken
DefaultAbsolutePantTiltPositionSpace => $some_value, # anyURI
DefaultAbsoluteZoomPositionSpace => $some_value, # anyURI
DefaultRelativePanTiltTranslationSpace => $some_value, # anyURI
DefaultRelativeZoomTranslationSpace => $some_value, # anyURI
DefaultContinuousPanTiltVelocitySpace => $some_value, # anyURI
DefaultContinuousZoomVelocitySpace => $some_value, # anyURI
DefaultPTZSpeed => { # ONVIF::Media::Types::PTZSpeed
PanTilt => ,
Zoom => ,
},
DefaultPTZTimeout => $some_value, # duration
PanTiltLimits => { # ONVIF::Media::Types::PanTiltLimits
Range => { # ONVIF::Media::Types::Space2DDescription
URI => $some_value, # anyURI
XRange => { # ONVIF::Media::Types::FloatRange
Min => $some_value, # float
Max => $some_value, # float
},
YRange => { # ONVIF::Media::Types::FloatRange
Min => $some_value, # float
Max => $some_value, # float
},
},
},
ZoomLimits => { # ONVIF::Media::Types::ZoomLimits
Range => { # ONVIF::Media::Types::Space1DDescription
URI => $some_value, # anyURI
XRange => { # ONVIF::Media::Types::FloatRange
Min => $some_value, # float
Max => $some_value, # float
},
},
},
Extension => { # ONVIF::Media::Types::PTZConfigurationExtension
PTControlDirection => { # ONVIF::Media::Types::PTControlDirection
EFlip => { # ONVIF::Media::Types::EFlip
Mode => $some_value, # EFlipMode
},
Reverse => { # ONVIF::Media::Types::Reverse
Mode => $some_value, # ReverseMode
},
Extension => { # ONVIF::Media::Types::PTControlDirectionExtension
},
},
Extension => { # ONVIF::Media::Types::PTZConfigurationExtension2
},
},
},
MetadataConfiguration => { # ONVIF::Media::Types::MetadataConfiguration
PTZStatus => { # ONVIF::Media::Types::PTZFilter
Status => $some_value, # boolean
Position => $some_value, # boolean
},
Analytics => $some_value, # boolean
Multicast => { # ONVIF::Media::Types::MulticastConfiguration
Address => { # ONVIF::Media::Types::IPAddress
Type => $some_value, # IPType
IPv4Address => $some_value, # IPv4Address
IPv6Address => $some_value, # IPv6Address
},
Port => $some_value, # int
TTL => $some_value, # int
AutoStart => $some_value, # boolean
},
SessionTimeout => $some_value, # duration
AnalyticsEngineConfiguration => { # ONVIF::Media::Types::AnalyticsEngineConfiguration
AnalyticsModule => { # ONVIF::Media::Types::Config
Parameters => { # ONVIF::Media::Types::ItemList
SimpleItem => ,
ElementItem => {
},
Extension => { # ONVIF::Media::Types::ItemListExtension
},
},
},
Extension => { # ONVIF::Media::Types::AnalyticsEngineConfigurationExtension
},
},
Extension => { # ONVIF::Media::Types::MetadataConfigurationExtension
},
},
Extension => { # ONVIF::Media::Types::ProfileExtension
AudioOutputConfiguration => { # ONVIF::Media::Types::AudioOutputConfiguration
OutputToken => $some_value, # ReferenceToken
SendPrimacy => $some_value, # anyURI
OutputLevel => $some_value, # int
},
AudioDecoderConfiguration => { # ONVIF::Media::Types::AudioDecoderConfiguration
},
Extension => { # ONVIF::Media::Types::ProfileExtension2
},
},
},
likeβ¦ look at that nesting. she's giving main character energy, honestly ππ¦
π«Ά attr
NOTE: Attribute documentation is experimental, and may be inaccurate. See the correspondent WSDL/XML Schema if in question.
okay so heads up bestie, this class has additional attributes, accessibly via the attr() method π«
attr() returns an object of the class ONVIF::Media::Types::Profile::_Profile::XmlAttr.
The following attributes can be accessed on this object via the corresponding get_/set_ methods:
tokenβ Unique identifier of the profile. This attribute is of typeONVIF::Media::Types::ReferenceToken.fixedβ A value oftruesignals that the profile cannot be deleted. Default isfalse. This attribute is of typeSOAP::WSDL::XSD::Typelib::Builtin::boolean.
β AUTHOR β
Generated by SOAP::WSDL β not me writing it by hand, the machine did that, and honestly? it ate π
β¨
and that's the whole page bestie!! go forth and build your profiles πΈπ¦π
this lil manual moment was brought to you by perl v5.40.1, dated 2026-02-01 β version and date, captured for the girlies β mwah, ily, go read some more docs π
π¦ where this page comes from
- ubuntu resolute: zoneminder 1.36.37+dfsg1-1 Β· GPL-2.0-or-later
- ubuntu stonking: zoneminder 1.36.37+dfsg1-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms