ONVIF:...ration(3pm)

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

πŸ’– NAME πŸ’–

ok so bestie, meet ONVIF::Analytics::Types::VideoEncoderConfiguration β€” it's a Perl data type class, and it lives in the User Contributed Perl Documentation section (section 3pm, iykyk). she's giving very specific, very structured, very "I know exactly what I am" energy. πŸ’…


🌸 DESCRIPTION 🌸

Okay so here's the tea: this is a Perl data type class for the XML Schema defined complexType VideoEncoderConfiguration, and it comes from the namespace http://www.onvif.org/ver10/schema. that's it, that's the whole vibe. she represents one complexType and she does it beautifully. ✨

πŸŽ€ PROPERTIES πŸŽ€

these are the properties you can reach with the get_PROPERTY / set_PROPERTY methods β€” like, you call get_Encoding or set_Encoding, that pattern, you get it. here's the full list, no skips, no cuts, we don't do that here:

  • Encoding
  • Resolution
  • Quality
  • RateControl
  • MPEG4
  • H264
  • Multicast
  • SessionTimeout

eight of them. count 'em. ate. πŸ‘‘


πŸ¦‹ METHODS πŸ¦‹

✨ new ✨

the constructor!! literally the main character of this whole page. the following data structure may be passed to new(), and bestie, I am copying this exactly because every single field matters:

 { # ONVIF::Analytics::Types::VideoEncoderConfiguration
   Encoding => $some_value, # VideoEncoding
   Resolution =>  { # ONVIF::Analytics::Types::VideoResolution
     Width =>  $some_value, # int
     Height =>  $some_value, # int
   },
   Quality =>  $some_value, # float
   RateControl =>  { # ONVIF::Analytics::Types::VideoRateControl
     FrameRateLimit =>  $some_value, # int
     EncodingInterval =>  $some_value, # int
     BitrateLimit =>  $some_value, # int
   },
   MPEG4 =>  { # ONVIF::Analytics::Types::Mpeg4Configuration
     GovLength =>  $some_value, # int
     Mpeg4Profile => $some_value, # Mpeg4Profile
   },
   H264 =>  { # ONVIF::Analytics::Types::H264Configuration
     GovLength =>  $some_value, # int
     H264Profile => $some_value, # H264Profile
   },
   Multicast =>  { # ONVIF::Analytics::Types::MulticastConfiguration
     Address =>  { # ONVIF::Analytics::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
 },

look at those nested hashes. she's structured. she's nested. she knows what she wants and what she wants is a Resolution with a Width and a Height, a RateControl with a FrameRateLimit, an EncodingInterval and a BitrateLimit, an MPEG4 block with a GovLength and an Mpeg4Profile, an H264 block with a GovLength and an H264Profile, and a Multicast block with an Address (which itself has a Type, an IPv4Address and an IPv6Address), a Port, a TTL and an AutoStart. plus Quality and SessionTimeout just vibing at the top level. it's giving organized. it's giving intentional. 🫢

ngl the comments next to each $some_value are the type hints β€” # VideoEncoding, # int, # float, # Mpeg4Profile, # H264Profile, # IPType, # IPv4Address, # IPv6Address, # boolean, # duration. don't sleep on those, they tell you what goes where. πŸ’€

πŸ’œ AUTHOR πŸ’œ

generated by SOAP::WSDL. iconic behavior honestly, let the machines do the typing. πŸ€–βœ¨


and that's the whole page bestie!! πŸŽ€ this was pulled from the User Contributed Perl Documentation for perl v5.40.1, dated 2026-02-01, under the title ONVIF:...ration(3pm). slay, bye, go build your video encoder config πŸŒˆπŸ’–

πŸ“¦ where this page comes from