ONVIF:...Source(3pm)
π ONVIF::PTZ::Types::VideoSource π
okay bestie, welcome to the ONVIF:...Source(3pm) manual page β yes that's the name, it's giving truncated-but-iconic, and no we are not fixing it. sit down, grab a strawberry π, and let's get into it. this is a whole Perl data type class and it is so much bigger than it looks. buckle up. π
β¨ NAME β¨
ONVIF::PTZ::Types::VideoSource β that's the whole name, that's the whole vibe. π
πΈ DESCRIPTION πΈ
So basically, this is a Perl data type class for the XML Schema defined complexType VideoSource from the namespace http://www.onvif.org/ver10/schema.
What is it for, you ask? It's the Representation of a physical video input. Like, an actual camera. A real one. It's on the wall. It's watching. π₯π
π¦ PROPERTIES π¦
These are the properties you can get at with get_PROPERTY / set_PROPERTY methods. Slay. Here's the full roster, no skips:
Framerateβ yes queen, the framerate π«Resolutionβ the resolution, obviouslyImagingβ the imaging settings, and bestie, this one is a whole rabbit hole, see below π³οΈExtensionβ the extension, and again, a rabbit hole, see below π³οΈ
π METHODS π
π new π
Constructor. The following data structure may be passed to new() β and I'm gonna give it to you exactly, character for character, because we do not paraphrase code in this house:
{ # ONVIF::PTZ::Types::VideoSource
Framerate => $some_value, # float
Resolution => { # ONVIF::PTZ::Types::VideoResolution
Width => $some_value, # int
Height => $some_value, # int
},
Imaging => { # ONVIF::PTZ::Types::ImagingSettings
BacklightCompensation => { # ONVIF::PTZ::Types::BacklightCompensation
Mode => $some_value, # BacklightCompensationMode
Level => $some_value, # float
},
Brightness => $some_value, # float
ColorSaturation => $some_value, # float
Contrast => $some_value, # float
Exposure => { # ONVIF::PTZ::Types::Exposure
Mode => $some_value, # ExposureMode
Priority => $some_value, # ExposurePriority
Window => ,
MinExposureTime => $some_value, # float
MaxExposureTime => $some_value, # float
MinGain => $some_value, # float
MaxGain => $some_value, # float
MinIris => $some_value, # float
MaxIris => $some_value, # float
ExposureTime => $some_value, # float
Gain => $some_value, # float
Iris => $some_value, # float
},
Focus => { # ONVIF::PTZ::Types::FocusConfiguration
AutoFocusMode => $some_value, # AutoFocusMode
DefaultSpeed => $some_value, # float
NearLimit => $some_value, # float
FarLimit => $some_value, # float
},
IrCutFilter => $some_value, # IrCutFilterMode
Sharpness => $some_value, # float
WideDynamicRange => { # ONVIF::PTZ::Types::WideDynamicRange
Mode => $some_value, # WideDynamicMode
Level => $some_value, # float
},
WhiteBalance => { # ONVIF::PTZ::Types::WhiteBalance
Mode => $some_value, # WhiteBalanceMode
CrGain => $some_value, # float
CbGain => $some_value, # float
},
Extension => { # ONVIF::PTZ::Types::ImagingSettingsExtension
},
},
Extension => { # ONVIF::PTZ::Types::VideoSourceExtension
Imaging => { # ONVIF::PTZ::Types::ImagingSettings20
BacklightCompensation => { # ONVIF::PTZ::Types::BacklightCompensation20
Mode => $some_value, # BacklightCompensationMode
Level => $some_value, # float
},
Brightness => $some_value, # float
ColorSaturation => $some_value, # float
Contrast => $some_value, # float
Exposure => { # ONVIF::PTZ::Types::Exposure20
Mode => $some_value, # ExposureMode
Priority => $some_value, # ExposurePriority
Window => ,
MinExposureTime => $some_value, # float
MaxExposureTime => $some_value, # float
MinGain => $some_value, # float
MaxGain => $some_value, # float
MinIris => $some_value, # float
MaxIris => $some_value, # float
ExposureTime => $some_value, # float
Gain => $some_value, # float
Iris => $some_value, # float
},
Focus => { # ONVIF::PTZ::Types::FocusConfiguration20
AutoFocusMode => $some_value, # AutoFocusMode
DefaultSpeed => $some_value, # float
NearLimit => $some_value, # float
FarLimit => $some_value, # float
Extension => { # ONVIF::PTZ::Types::FocusConfiguration20Extension
},
},
IrCutFilter => $some_value, # IrCutFilterMode
Sharpness => $some_value, # float
WideDynamicRange => { # ONVIF::PTZ::Types::WideDynamicRange20
Mode => $some_value, # WideDynamicMode
Level => $some_value, # float
},
WhiteBalance => { # ONVIF::PTZ::Types::WhiteBalance20
Mode => $some_value, # WhiteBalanceMode
CrGain => $some_value, # float
CbGain => $some_value, # float
Extension => { # ONVIF::PTZ::Types::WhiteBalance20Extension
},
},
Extension => { # ONVIF::PTZ::Types::ImagingSettingsExtension20
ImageStabilization => { # ONVIF::PTZ::Types::ImageStabilization
Mode => $some_value, # ImageStabilizationMode
Level => $some_value, # float
Extension => { # ONVIF::PTZ::Types::ImageStabilizationExtension
},
},
Extension => { # ONVIF::PTZ::Types::ImagingSettingsExtension202
IrCutFilterAutoAdjustment => { # ONVIF::PTZ::Types::IrCutFilterAutoAdjustment
BoundaryType => $some_value, # string
BoundaryOffset => $some_value, # float
ResponseTime => $some_value, # duration
Extension => { # ONVIF::PTZ::Types::IrCutFilterAutoAdjustmentExtension
},
},
Extension => { # ONVIF::PTZ::Types::ImagingSettingsExtension203
},
},
},
},
Extension => { # ONVIF::PTZ::Types::VideoSourceExtension2
},
},
},
π«Ά real talk though: look at how deep that nesting goes.ImagingβExtensionβImagingβExtensionβExtensionβExtension. it's giving inception. do not hand-build this hash in a panic at 3am, bestie, use the setters. π
π AUTHOR π
Generated by SOAP::WSDL β iconic behaviour honestly, let the machine do the typing. π€β¨
and that's the page, bestie!! π no cap, you now know more about ONVIF::PTZ::Types::VideoSource than most people ever will. go forth and set your Framerate. π
this lil manual came from perl v5.40.1 and is dated 2026-02-01 β yes, 2026, she's from the future, main character energy fr fr. π¦βπ
π¦ 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