Skip to content

Commit

Permalink
Merge pull request onvif#174 from onvif/21.12
Browse files Browse the repository at this point in the history
Merge 21.12 to master
  • Loading branch information
HansBusch authored Dec 17, 2021
2 parents 521411a + f42f30c commit 0dfaf1c
Show file tree
Hide file tree
Showing 22 changed files with 1,358 additions and 354 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ This repository is dedicated to future extensions of the ONVIF Network Interface
- Network Interface Specification Documents
- Schemas and wsdl files

Note that officially released specifications are avialable at [onvif.org](https://www.onvif.org/profiles/specifications/).
Note that officially released specifications are available at [onvif.org](https://www.onvif.org/profiles/specifications/).

You may browse the repository for proposals and corrections that have been assigned to a release.

Expand Down
390 changes: 272 additions & 118 deletions doc/Analytics.xml

Large diffs are not rendered by default.

16 changes: 12 additions & 4 deletions doc/AppMgmt.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
<?xml-stylesheet href="docbook.xsl" type="text/xsl" ?>
<book xmlns="http://docbook.org/ns/docbook" version="5.0">
<info>
<title>Applicaton Management Service Specification</title>
<title>Application Management Service Specification</title>
<titleabbrev>App Mgmt</titleabbrev>
<releaseinfo>21.06</releaseinfo>
<releaseinfo>21.12</releaseinfo>
<author>
<orgname>ONVIF™</orgname>
<uri>www.onvif.org</uri>
</author>
<pubdate> June, 2021</pubdate>
<pubdate> December, 2021</pubdate>
<mediaobject>
<imageobject>
<imagedata fileref="media/logo.png" contentwidth="60mm"/>
Expand Down Expand Up @@ -56,6 +56,14 @@
</author>
<revremark>Update backup and restore. Add configuration URI.</revremark>
</revision>
<revision>
<revnumber>21.12</revnumber>
<date>Dec-2021</date>
<author>
<personname>Fredrik Svensson</personname>
</author>
<revremark>Fix inconsistencies between appmgmt schema and doc.</revremark>
</revision>
</revhistory>
</info>
<chapter>
Expand Down Expand Up @@ -517,7 +525,7 @@
</section>
</section>
<section>
<title>GetCapabilities</title>
<title>GetServiceCapabilities</title>
<para>The capabilities reflect optional functions and functionality of a service. The information is static and does not change during device operation.</para>
<variablelist role="op">
<varlistentry>
Expand Down
363 changes: 359 additions & 4 deletions doc/Core.xml

Large diffs are not rendered by default.

75 changes: 72 additions & 3 deletions doc/ExportFileFormat.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@
<info>
<title>Export File Format Specification</title>
<titleabbrev>ExportFileFormat</titleabbrev>
<releaseinfo>21.06</releaseinfo>
<releaseinfo>21.12</releaseinfo>
<author>
<orgname>ONVIF™</orgname>
<uri>www.onvif.org</uri>
</author>
<pubdate>June, 2021</pubdate>
<pubdate>December, 2021</pubdate>
<mediaobject>
<imageobject>
<imagedata fileref="media/logo.png" contentwidth="60mm"/>
Expand Down Expand Up @@ -94,6 +94,14 @@
</author>
<revremark>Move sigC definition to 5.4. Remove obsolete UUID notion.</revremark>
</revision>
<revision>
<revnumber>21.12</revnumber>
<date>Dec-2021</date>
<author>
<personname>Hans Busch</personname>
</author>
<revremark>Add timed metadata.</revremark>
</revision>
</revhistory>
</info>
<chapter>
Expand All @@ -104,6 +112,8 @@
<title>Normative references</title>
<para>ONVIF<superscript>TM</superscript> Core Specification</para>
<para role="reference">&lt;​<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.onvif.org/specs/core/ONVIF-Core-Specification.pdf"></link>&gt;</para>
<para>ONVIF<superscript>TM</superscript> Streaming Specification</para>
<para role="reference">&lt;​<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.onvif.org/specs/stream/ONVIF-Streaming-Spec.pdf"></link>&gt;</para>
<para>ISO/IEC 14496-12 Information technology — Coding of audiovisual objects – Part 12: ISO base media file format</para>
<para role="reference">&lt;​<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.iso.org/obp/ui/#iso:std:iso-iec:14496:-12:ed-5:v1:en"></link>&gt;</para>
<para>ISO/IEC 23000-10 Information technology – Multimedia application format – Part 10: Surveillance application format</para>
Expand Down Expand Up @@ -338,6 +348,43 @@ class CorrectStartTimeBox extends Box (‘cstb’) {
</varlistentry>
</variablelist>
</section>
<section>
<title>Timed metadata</title>
<para>ONVIF metadata supports transport of frame related scene description, events and PTZ
information. This section defines how such information can be stored in export files.</para>
<para>ISO/IEC 14496-12 Base File Format defines the box requirements for timed XML metadata. This specification defines how to interpret the metx box.</para>
<programlisting><![CDATA[aligned(8)
class XMLMetaDataSampleEntry() extends MetaDataSampleEntry (‘metx’) {
string content_encoding; // optional
string namespace;
string schema_location; // optional
BitRateBox(); // optional
)]]></programlisting>
<variablelist>
<varlistentry>
<term>content_encoding</term>
<listitem><para>Defaults to 'xml'. Options defined by ONVIF are 'gzip' and 'exi'.</para></listitem>
</varlistentry>
<varlistentry>
<term>namespace</term>
<listitem><para>For ONVIF compliant metadata this parameter shall be set to "http://www.onvif.org/ver10/schema".</para></listitem>
</varlistentry>
<varlistentry>
<term>schema_location</term>
<listitem><para>Not used.</para></listitem>
</varlistentry>
<varlistentry>
<term>BitRateBox</term>
<listitem><para>Not used.</para></listitem>
</varlistentry>
</variablelist>
<para>An ONVIF compliant device shall describe a timed metadata track containing ONVIF
metadata as defined by the ONVIF Streaming Specification using a XMLMetaDataSampleEntry box. </para>
<para>Content compression shall be signaled via the content_encoding field. See the ONVIF
Streaming Specification for compression data format.</para>
<para>Note, XML documents should not be preceeded by an XML declaration since both version and
encoding are well defined. </para>
</section>
<section>
<title>Signature</title>
<section xml:id="_Ref341257518">
Expand Down Expand Up @@ -568,7 +615,9 @@ class AdditionalUserInformationBox
</appendix>
<appendix>
<title>Box Structure (informative)</title>
<para>The diagram below provides an overview on required boxes and their referencing for a Video stream with Audio. In order to simplify the example, it shows the content of a single fragment while a real file would contain numerous fragments.</para>
<para>The diagram below provides an overview on required boxes and their referencing for a video
stream with audio and timed metadata. In order to simplify the example, it shows the content
of a single fragment while a real file would contain numerous fragments.</para>
<programlisting>
<emphasis role="bold">ftyp</emphasis><superscript>1</superscript> File brand ‘isom’.
<emphasis role="bold">moov</emphasis><superscript>1</superscript> File wide definitions
Expand Down Expand Up @@ -606,6 +655,22 @@ class AdditionalUserInformationBox
<emphasis role="bold">stts</emphasis><superscript>1</superscript> Sample index by time
<emphasis role="bold">stsc</emphasis><superscript>1</superscript> Sample to chunk mapping
<emphasis role="bold">stco</emphasis><superscript>1</superscript> List of Chunk offsets inside 'mdat' relative to file begin
<emphasis role="bold">trak</emphasis><superscript>1</superscript> Third track with timed metadata
<emphasis role="bold">tkhd</emphasis><superscript>1</superscript> Track header with creation time, timescale, duration, track ID
<emphasis role="bold">mdia</emphasis><superscript>1</superscript>
<emphasis role="bold">mdhd</emphasis><superscript>1</superscript> Media header with creation time, timescale, duration and others
<emphasis role="bold">hdlr</emphasis><superscript>1</superscript> Signals that this is a metadata track (type is 'meta')
<emphasis role="bold">minf</emphasis><superscript>1</superscript> Contains creation time, timescale, duration and others
<emphasis role="bold">nmhd</emphasis><superscript>1</superscript> Null media handler box
<emphasis role="bold">dinf</emphasis><superscript>1</superscript> Data location information.
<emphasis role="bold">dref</emphasis><superscript>1</superscript>
<emphasis role="bold">url</emphasis><superscript>1</superscript> Data location flag in file must be set
<emphasis role="bold">stbl</emphasis><superscript>1</superscript> Container with sample descriptions.
<emphasis role="bold">stsd</emphasis><superscript>1</superscript> Codec information
<emphasis role="bold">metx</emphasis><superscript>1</superscript> Metadata format information
<emphasis role="bold">stts</emphasis><superscript>1</superscript> Sample index by time
<emphasis role="bold">stsc</emphasis><superscript>1</superscript> Sample to chunk mapping
<emphasis role="bold">stco</emphasis><superscript>1</superscript> List of Chunk offsets inside 'mdat' relative to file begin
<emphasis role="bold">mdat</emphasis><superscript>1</superscript> Raw Video and Audio of first fragment (moov)
<emphasis role="bold">moof</emphasis><superscript>1</superscript> Fragment
<emphasis role="bold">mfhd</emphasis><superscript>1</superscript> Contains creation time, timescale, duration and others
Expand All @@ -617,6 +682,10 @@ class AdditionalUserInformationBox
<emphasis role="bold">tfhd</emphasis><superscript>1</superscript> Sample information
<emphasis role="bold">tfdt</emphasis><superscript>1</superscript> Track fragment decode time
<emphasis role="bold">trun</emphasis><superscript>1</superscript> Access to raw data in mdat box
<emphasis role="bold">traf</emphasis><superscript>1</superscript> Third track with timed metadata
<emphasis role="bold">tfhd</emphasis><superscript>1</superscript> Sample information
<emphasis role="bold">tfdt</emphasis><superscript>1</superscript> Track fragment decode time
<emphasis role="bold">trun</emphasis><superscript>1</superscript> Access to raw data in mdat box
<emphasis role="bold">mdat</emphasis><superscript>1</superscript> Raw Video and Audio of this
<emphasis role="bold">meta</emphasis><superscript>1</superscript> File level meta information
<emphasis role="bold">hdlr</emphasis><superscript>1</superscript>
Expand Down
20 changes: 14 additions & 6 deletions doc/Media.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@
<info>
<title>Media Service Specification</title>
<titleabbrev>Media</titleabbrev>
<releaseinfo>20.06</releaseinfo>
<releaseinfo>21.12</releaseinfo>
<author>
<orgname>ONVIF™</orgname>
<uri>www.onvif.org</uri>
</author>
<pubdate>June, 2020</pubdate>
<pubdate>December, 2021</pubdate>
<mediaobject>
<imageobject>
<imagedata fileref="media/logo.png" contentwidth="60mm" />
<imagedata fileref="media/logo.png" contentwidth="60mm"/>
</imageobject>
</mediaobject>
<copyright>
Expand Down Expand Up @@ -198,6 +198,14 @@ Change Request 2430, 2479</revremark>
</author>
<revremark>Change Request 2571</revremark>
</revision>
<revision>
<revnumber>21.12</revnumber>
<date>Dec-2021</date>
<author>
<personname>Oksana Tyushkina</personname>
</author>
<revremark>Fix typo in commands names</revremark>
</revision>
</revhistory>
</info>
<chapter>
Expand Down Expand Up @@ -2225,7 +2233,7 @@ The ForcePersistence element is obsolete and should always assumed to be true.
</variablelist>
</section>
<section>
<title>SetAudioSsourceConfiguration</title>
<title>SetAudioSourceConfiguration</title>
<para>This operation modifies an audio source configuration. The ForcePersistence flag indicates if the changes shall remain after reboot of the device. Running streams using this configuration may be immediately updated according to the new settings, but the changes are not guaranteed to take effect unless the client requests a new stream URI and restarts any affected stream. If the new settings invalidate any parameters already negotiated using RTSP, for example by changing codec type, the device must not apply these settings to existing streams. Instead it must either continue to stream using the old settings or stop sending data on the affected streams.</para>
<para>Client methods for changing a running stream are out of scope for this specification. A device that supports audio streaming from device to client shall support the configuration of audio source parameters through the SetAudioSourceConfiguration command.</para>
<variablelist role="op">
Expand Down Expand Up @@ -2432,7 +2440,7 @@ The ForcePersistence element is obsolete and should always assumed to be true.
</variablelist>
</section>
<section>
<title>SetAudioEncoderConfigurations</title>
<title>SetAudioEncoderConfiguration</title>
<para>This operation modifies an audio encoder configuration. The ForcePersistence flag indicates if the changes shall remain after reboot of the device. Changes in the Multicast settings shall always be persistent. Running streams using this configuration may be immediately updated according to the new settings. The changes are not guaranteed to take effect unless the client requests a new stream URI and restarts any affected streams. Client methods for changing a running stream are out of scope for this specification. A device that supports audio streaming from device to client shall support the configuration of audio encoder parameters through the SetAudioEncoderConfiguration command.</para>
<variablelist role="op">
<varlistentry>
Expand Down Expand Up @@ -2549,7 +2557,7 @@ The ForcePersistence element is obsolete and should always assumed to be true.
</variablelist>
</section>
<section>
<title>GetCcompatibleVideoAnalyticsConfigurations</title>
<title>GetCompatibleVideoAnalyticsConfigurations</title>
<para>This operation requests all video analytic configurations of the device that are compatible with a certain media profile. Each of the returned configurations shall be a valid input parameter for the AddVideoAnalyticsConfiguration command on the media profile. The result varies depending on the capabilities, configurations and settings in the device. A device that supports video analytics shall support the listing of compatible (with a specific profile) video analytics configuration through the GetCompatibleVideoAnalyticsConfigurations command.</para>
<variablelist role="op">
<varlistentry>
Expand Down
Loading

0 comments on commit 0dfaf1c

Please sign in to comment.