ONVIF::...bilities(3)
π NAME π
okay bestie, gather round β this is ONVIF::Media::Types::CodingCapabilities, straight out of the User Contributed Perl Documentation corner of the perl universe. it's a Perl data type class, and it's basically the β¨main characterβ¨ of "what can this display service actually do with audio and video."
π¦ DESCRIPTION π¦
so like β this is a Perl data type class for the XML Schema defined complexType CodingCapabilities, and that bad boy lives in the namespace http://www.onvif.org/ver10/schema. no cap.
and what does it do? this type contains the Audio and Video coding capabilities of a display service. that's it, that's the vibe. it's giving "capability check" energy π
πΈ PROPERTIES πΈ
these are the properties you can get at with the get_PROPERTY / set_PROPERTY methods, fr fr:
AudioEncodingCapabilitiesAudioDecodingCapabilitiesVideoDecodingCapabilities
like, three of them. short list, iconic list π
π₯ METHODS π₯
β new
constructor time, bestie. the following data structure may be passed to new() β and yes, I'm giving you the whole thing verbatim because every single line matters:
{ # ONVIF::Media::Types::CodingCapabilities
AudioEncodingCapabilities => { # ONVIF::Media::Types::AudioEncoderConfigurationOptions
Options => { # ONVIF::Media::Types::AudioEncoderConfigurationOption
Encoding => $some_value, # AudioEncoding
BitrateList => { # ONVIF::Media::Types::IntList
Items => $some_value, # int
},
SampleRateList => { # ONVIF::Media::Types::IntList
Items => $some_value, # int
},
},
},
AudioDecodingCapabilities => { # ONVIF::Media::Types::AudioDecoderConfigurationOptions
AACDecOptions => { # ONVIF::Media::Types::AACDecOptions
Bitrate => { # ONVIF::Media::Types::IntList
Items => $some_value, # int
},
SampleRateRange => { # ONVIF::Media::Types::IntList
Items => $some_value, # int
},
},
G711DecOptions => { # ONVIF::Media::Types::G711DecOptions
Bitrate => { # ONVIF::Media::Types::IntList
Items => $some_value, # int
},
SampleRateRange => { # ONVIF::Media::Types::IntList
Items => $some_value, # int
},
},
G726DecOptions => { # ONVIF::Media::Types::G726DecOptions
Bitrate => { # ONVIF::Media::Types::IntList
Items => $some_value, # int
},
SampleRateRange => { # ONVIF::Media::Types::IntList
Items => $some_value, # int
},
},
Extension => { # ONVIF::Media::Types::AudioDecoderConfigurationOptionsExtension
},
},
VideoDecodingCapabilities => { # ONVIF::Media::Types::VideoDecoderConfigurationOptions
JpegDecOptions => { # ONVIF::Media::Types::JpegDecOptions
ResolutionsAvailable => { # ONVIF::Media::Types::VideoResolution
Width => $some_value, # int
Height => $some_value, # int
},
SupportedInputBitrate => { # ONVIF::Media::Types::IntRange
Min => $some_value, # int
Max => $some_value, # int
},
SupportedFrameRate => { # ONVIF::Media::Types::IntRange
Min => $some_value, # int
Max => $some_value, # int
},
},
H264DecOptions => { # ONVIF::Media::Types::H264DecOptions
ResolutionsAvailable => { # ONVIF::Media::Types::VideoResolution
Width => $some_value, # int
Height => $some_value, # int
},
SupportedH264Profiles => $some_value, # H264Profile
SupportedInputBitrate => { # ONVIF::Media::Types::IntRange
Min => $some_value, # int
Max => $some_value, # int
},
SupportedFrameRate => { # ONVIF::Media::Types::IntRange
Min => $some_value, # int
Max => $some_value, # int
},
},
Mpeg4DecOptions => { # ONVIF::Media::Types::Mpeg4DecOptions
ResolutionsAvailable => { # ONVIF::Media::Types::VideoResolution
Width => $some_value, # int
Height => $some_value, # int
},
SupportedMpeg4Profiles => $some_value, # Mpeg4Profile
SupportedInputBitrate => { # ONVIF::Media::Types::IntRange
Min => $some_value, # int
Max => $some_value, # int
},
SupportedFrameRate => { # ONVIF::Media::Types::IntRange
Min => $some_value, # int
Max => $some_value, # int
},
},
Extension => { # ONVIF::Media::Types::VideoDecoderConfigurationOptionsExtension
},
},
},
likeβ¦ look at that nesting. it's giving russian dolls but make it code πͺπ and no, don't skip any of it β every $some_value and every # int comment is literally load-bearing.
π AUTHOR π
generated by SOAP::WSDL. that's the whole author section. slay, automated generation β¨
π«Ά and that's the whole page, bestie β no notes, no cap, 10/10 would read again.
see you in the next manpage π
cute little sign-off: this doc is from perl v5.42.3, dated 1980-01-01, and yes that date is ancient enough to be vintage πβ¨
π¦ where this page comes from
- nixpkgs unstable: zoneminder 1.38.6
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms