ONVIF::...taStream(3)

πŸ“¦ version 1.38.6, in nixpkgs unstable

πŸ’– NAME πŸ’–

ONVIF::Analytics::Types::MetadataStream β€” say it with me bestie, it's a whole mouthful but we got this 🫢


✨ DESCRIPTION ✨

Okay so picture this: it's a Perl data type class for the XML Schema defined complexType MetadataStream, and it lives in the namespace http://www.onvif.org/ver10/schema. That's it, that's the vibe. It's giving "I'm a type, I'm structured, I know what I am" πŸ’…

🌸 PROPERTIES 🌸

These are the properties you can get at and set, and the way you do that is with the get_PROPERTY / set_PROPERTY methods. Very demure, very mindful:

  • VideoAnalytics β€” the video analytics one πŸŽ₯
  • PTZ β€” pan, tilt, zoom, the classics
  • Event β€” events!! literally
  • Extension β€” the extension slot, for when you need more

πŸ”₯ METHODS πŸ”₯

⭐ new

Bestie this is the constructor. And the data structure you're allowed to pass to new() is genuinely enormous, so buckle up, here it is in all its glory πŸ‘‘

 { # ONVIF::Analytics::Types::MetadataStream
   # One of the following elements.
   # No occurrence checks yet, so be sure to pass just one...
   VideoAnalytics =>    { # ONVIF::Analytics::Types::VideoAnalyticsStream
     # One of the following elements.
     # No occurrence checks yet, so be sure to pass just one...
     Frame =>  { # ONVIF::Analytics::Types::Frame
       PTZStatus =>  { # ONVIF::Analytics::Types::PTZStatus
         Position =>  { # ONVIF::Analytics::Types::PTZVector
           PanTilt => ,
           Zoom => ,
         },
         MoveStatus =>  { # ONVIF::Analytics::Types::PTZMoveStatus
           PanTilt => $some_value, # MoveStatus
           Zoom => $some_value, # MoveStatus
         },
         Error =>  $some_value, # string
         UtcTime =>  $some_value, # dateTime
       },
       Transformation =>  { # ONVIF::Analytics::Types::Transformation
         Translate => ,
         Scale => ,
         Extension =>  { # ONVIF::Analytics::Types::TransformationExtension
         },
       },
       Object =>  { # ONVIF::Analytics::Types::Object
         Appearance =>  { # ONVIF::Analytics::Types::Appearance
           Transformation =>  { # ONVIF::Analytics::Types::Transformation
             Translate => ,
             Scale => ,
             Extension =>  { # ONVIF::Analytics::Types::TransformationExtension
             },
           },
           Shape =>  { # ONVIF::Analytics::Types::ShapeDescriptor
             BoundingBox => ,
             CenterOfGravity => ,
             Polygon =>  { # ONVIF::Analytics::Types::Polygon
               Point => ,
             },
             Extension =>  { # ONVIF::Analytics::Types::ShapeDescriptorExtension
             },
           },
           Color =>  { # ONVIF::Analytics::Types::ColorDescriptor
             ColorCluster =>  {
               Color => ,
               Weight =>  $some_value, # float
               Covariance => ,
             },
             Extension =>  { # ONVIF::Analytics::Types::ColorDescriptorExtension
             },
           },
           Class =>  { # ONVIF::Analytics::Types::ClassDescriptor
             ClassCandidate =>  {
               Type => $some_value, # ClassType
               Likelihood =>  $some_value, # float
             },
             Extension =>  { # ONVIF::Analytics::Types::ClassDescriptorExtension
               OtherTypes =>  { # ONVIF::Analytics::Types::OtherType
                 Type =>  $some_value, # string
                 Likelihood =>  $some_value, # float
               },
               Extension =>  { # ONVIF::Analytics::Types::ClassDescriptorExtension2
               },
             },
           },
           Extension =>  { # ONVIF::Analytics::Types::AppearanceExtension
           },
         },
         Behaviour =>  { # ONVIF::Analytics::Types::Behaviour
           Removed =>  {
           },
           Idle =>  {
           },
           Extension =>  { # ONVIF::Analytics::Types::BehaviourExtension
           },
         },
         Extension =>  { # ONVIF::Analytics::Types::ObjectExtension
         },
       },
       ObjectTree =>  { # ONVIF::Analytics::Types::ObjectTree
         Rename =>  { # ONVIF::Analytics::Types::Rename
           from => ,
           to => ,
         },
         Split =>  { # ONVIF::Analytics::Types::Split
           from => ,
           to => ,
         },
         Merge =>  { # ONVIF::Analytics::Types::Merge
           from => ,
           to => ,
         },
         Delete => ,
         Extension =>  { # ONVIF::Analytics::Types::ObjectTreeExtension
         },
       },
       Extension =>  { # ONVIF::Analytics::Types::FrameExtension
         MotionInCells =>  { # ONVIF::Analytics::Types::MotionInCells
         },
         Extension =>  { # ONVIF::Analytics::Types::FrameExtension2
         },
       },
     },
     Extension =>  { # ONVIF::Analytics::Types::VideoAnalyticsStreamExtension
     },
   },
   PTZ =>    { # ONVIF::Analytics::Types::PTZStream
     # One of the following elements.
     # No occurrence checks yet, so be sure to pass just one...
     PTZStatus =>  { # ONVIF::Analytics::Types::PTZStatus
       Position =>  { # ONVIF::Analytics::Types::PTZVector
         PanTilt => ,
         Zoom => ,
       },
       MoveStatus =>  { # ONVIF::Analytics::Types::PTZMoveStatus
         PanTilt => $some_value, # MoveStatus
         Zoom => $some_value, # MoveStatus
       },
       Error =>  $some_value, # string
       UtcTime =>  $some_value, # dateTime
     },
     Extension =>  { # ONVIF::Analytics::Types::PTZStreamExtension
     },
   },
   Event =>  $some_value, # anyType
   Extension =>  { # ONVIF::Analytics::Types::MetadataStreamExtension
     AudioAnalyticsStream =>  { # ONVIF::Analytics::Types::AudioAnalyticsStream
       AudioDescriptor =>  { # ONVIF::Analytics::Types::AudioDescriptor
       },
       Extension =>  { # ONVIF::Analytics::Types::AudioAnalyticsStreamExtension
       },
     },
     Extension =>  { # ONVIF::Analytics::Types::MetadataStreamExtension2
     },
   },
 },
🚨 Okay important thing, don't skip this: both the top-level MetadataStream and VideoAnalyticsStream are marked "One of the following elements." with "No occurrence checks yet, so be sure to pass just one..." β€” so like, the module is NOT gonna hold your hand and count your elements for you. You have to pass just one of them. No cap, it says it twice, it means it πŸ™ˆ

πŸŽ€ AUTHOR πŸŽ€

Generated by SOAP::WSDL β€” yeah bestie, a machine wrote this one, and honestly? It ate πŸ’…


and that's the whole page, mwah πŸ’‹ brought to you by perl v5.42.3, dated 1980-01-01, and the ONVIF::...taStream(3) page in the User Contributed Perl Documentation β€” see you in the group chat, love u πŸ¦‹πŸ’œ

πŸ“¦ where this page comes from