ONVIF:...tension(3pm)

πŸ“¦
version 1.36.37 Β· 5 versions
, in ubuntu resolute, ubuntu stonking

πŸ’– NAME πŸ’–

okay so bestie, welcome to ONVIF::PTZ::Types::VideoSourceExtension β€” literally the whole entire point of this page πŸ’… it lives in the User Contributed Perl Documentation corner of the manual-verse, and it's here to make your PTZ camera type stuff make sense. no cap.


✨ DESCRIPTION ✨

so basically? this is a Perl data type class πŸŽ€ it's the Perl-side glow-up of the XML Schema defined complexType called VideoSourceExtension, and it comes from the namespace http://www.onvif.org/ver10/schema πŸ¦‹

that's it. that's the vibe. it's a type class, it holds the data, it slays.


πŸŽ€ PROPERTIES πŸŽ€

the way that these properties are just there for you to grab πŸ‘‘ you access every single one of them with the get_PROPERTY / set_PROPERTY methods, like the little icons they are:

  • Imaging
  • Extension

periodt. those are the two.


πŸ’… METHODS πŸ’…

new

Constructor energy fr fr 🌸 you can hand it a data structure, and here's the exact shape it wants β€” every field, every nested type, every comment, copied character for character because we do not play fast and loose with the facts:

 { # 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
   },
 },
bestie this is deeply nested β€” like, Extension inside Extension inside Extension levels of nested πŸ™ˆ so if you're building this hash by hand, take a breath, match your braces, and don't lose your place. the comments are there to hold your hand, not to be skipped πŸ’€

πŸ‘‘ AUTHOR πŸ‘‘

  • Generated by SOAP::WSDL

it wasn't hand-written by a person, it was generated, and honestly? iconic behaviour for a type class ✨


and that's a wrap, bestie 🫢 this page was hanging out in the User Contributed Perl Documentation section, running on perl v5.40.1, dated 2026-02-01 🌈 go forth, build your VideoSourceExtension, and remember β€” get/set those properties, keep your nested braces balanced, and you'll be main character energy all day long πŸ’–πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from