rfc8846.alt-original | rfc8846.txt | |||
---|---|---|---|---|
CLUE Working Group R. Presta | Internet Engineering Task Force (IETF) R. Presta | |||
Internet-Draft S P. Romano | Request for Comments: 8846 S P. Romano | |||
Intended status: Standards Track University of Napoli | Category: Standards Track University of Napoli | |||
Expires: February 14, 2017 August 13, 2016 | ISSN: 2070-1721 January 2021 | |||
An XML Schema for the CLUE data model | An XML Schema for the Controlling Multiple Streams for Telepresence | |||
draft-ietf-clue-data-model-schema-17 | (CLUE) Data Model | |||
Abstract | Abstract | |||
This document provides an XML schema file for the definition of CLUE | This document provides an XML schema file for the definition of CLUE | |||
data model types. The term "CLUE" stands for "ControLling mUltiple | data model types. The term "CLUE" stands for "Controlling Multiple | |||
streams for tElepresence" and is the name of the IETF working group | Streams for Telepresence" and is the name of the IETF working group | |||
in which this document, as well as other companion documents, has | in which this document, as well as other companion documents, has | |||
been developed. The document defines a coherent structure for | been developed. The document defines a coherent structure for | |||
information associated with the description of a telepresence | information associated with the description of a telepresence | |||
scenario. | scenario. | |||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This is an Internet Standards Track document. | |||
provisions of BCP 78 and BCP 79. | ||||
Internet-Drafts are working documents of the Internet Engineering | ||||
Task Force (IETF). Note that other groups may also distribute | ||||
working documents as Internet-Drafts. The list of current Internet- | ||||
Drafts is at http://datatracker.ietf.org/drafts/current/. | ||||
Internet-Drafts are draft documents valid for a maximum of six months | This document is a product of the Internet Engineering Task Force | |||
and may be updated, replaced, or obsoleted by other documents at any | (IETF). It represents the consensus of the IETF community. It has | |||
time. It is inappropriate to use Internet-Drafts as reference | received public review and has been approved for publication by the | |||
material or to cite them other than as "work in progress." | Internet Engineering Steering Group (IESG). Further information on | |||
Internet Standards is available in Section 2 of RFC 7841. | ||||
This Internet-Draft will expire on February 14, 2017. | Information about the current status of this document, any errata, | |||
and how to provide feedback on it may be obtained at | ||||
https://www.rfc-editor.org/info/rfc8846. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2016 IETF Trust and the persons identified as the | Copyright (c) 2021 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (https://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 1. Introduction | |||
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 2. Terminology | |||
3. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 3. Definitions | |||
4. XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . . 7 | 4. XML Schema | |||
5. <mediaCaptures> . . . . . . . . . . . . . . . . . . . . . . . 19 | 5. <mediaCaptures> | |||
6. <encodingGroups> . . . . . . . . . . . . . . . . . . . . . . . 19 | 6. <encodingGroups> | |||
7. <captureScenes> . . . . . . . . . . . . . . . . . . . . . . . 19 | 7. <captureScenes> | |||
8. <simultaneousSets> . . . . . . . . . . . . . . . . . . . . . . 19 | 8. <simultaneousSets> | |||
9. <globalViews> . . . . . . . . . . . . . . . . . . . . . . . . 19 | 9. <globalViews> | |||
10. <captureEncodings> . . . . . . . . . . . . . . . . . . . . . . 19 | 10. <captureEncodings> | |||
11. <mediaCapture> . . . . . . . . . . . . . . . . . . . . . . . . 19 | 11. <mediaCapture> | |||
11.1. captureID attribute . . . . . . . . . . . . . . . . . . . 22 | 11.1. captureID Attribute | |||
11.2. mediaType attribute . . . . . . . . . . . . . . . . . . . 22 | 11.2. mediaType Attribute | |||
11.3. <captureSceneIDREF> . . . . . . . . . . . . . . . . . . . 22 | 11.3. <captureSceneIDREF> | |||
11.4. <encGroupIDREF> . . . . . . . . . . . . . . . . . . . . . 22 | 11.4. <encGroupIDREF> | |||
11.5. <spatialInformation> . . . . . . . . . . . . . . . . . . 23 | 11.5. <spatialInformation> | |||
11.5.1. <captureOrigin> . . . . . . . . . . . . . . . . . . . 24 | 11.5.1. <captureOrigin> | |||
11.5.2. <captureArea> . . . . . . . . . . . . . . . . . . . . 25 | 11.5.2. <captureArea> | |||
11.6. <nonSpatiallyDefinable> . . . . . . . . . . . . . . . . . 26 | 11.6. <nonSpatiallyDefinable> | |||
11.7. <content> . . . . . . . . . . . . . . . . . . . . . . . . 26 | 11.7. <content> | |||
11.8. <synchronizationID> . . . . . . . . . . . . . . . . . . . 26 | 11.8. <synchronizationID> | |||
11.9. <allowSubsetChoice> . . . . . . . . . . . . . . . . . . . 27 | 11.9. <allowSubsetChoice> | |||
11.10. <policy> . . . . . . . . . . . . . . . . . . . . . . . . 27 | 11.10. <policy> | |||
11.11. <maxCaptures> . . . . . . . . . . . . . . . . . . . . . . 28 | 11.11. <maxCaptures> | |||
11.12. <individual> . . . . . . . . . . . . . . . . . . . . . . 29 | 11.12. <individual> | |||
11.13. <description> . . . . . . . . . . . . . . . . . . . . . . 29 | 11.13. <description> | |||
11.14. <priority> . . . . . . . . . . . . . . . . . . . . . . . 29 | 11.14. <priority> | |||
11.15. <lang> . . . . . . . . . . . . . . . . . . . . . . . . . 30 | 11.15. <lang> | |||
11.16. <mobility> . . . . . . . . . . . . . . . . . . . . . . . 30 | 11.16. <mobility> | |||
11.17. <relatedTo> . . . . . . . . . . . . . . . . . . . . . . . 30 | 11.17. <relatedTo> | |||
11.18. <view> . . . . . . . . . . . . . . . . . . . . . . . . . 30 | 11.18. <view> | |||
11.19. <presentation> . . . . . . . . . . . . . . . . . . . . . 31 | 11.19. <presentation> | |||
11.20. <embeddedText> . . . . . . . . . . . . . . . . . . . . . 31 | 11.20. <embeddedText> | |||
11.21. <capturedPeople> . . . . . . . . . . . . . . . . . . . . 32 | 11.21. <capturedPeople> | |||
11.21.1. <personIDREF> . . . . . . . . . . . . . . . . . . . . 32 | 11.21.1. <personIDREF> | |||
12. Audio captures . . . . . . . . . . . . . . . . . . . . . . . . 32 | 12. Audio Captures | |||
12.1. <sensitivityPattern> . . . . . . . . . . . . . . . . . . 33 | 12.1. <sensitivityPattern> | |||
13. Video captures . . . . . . . . . . . . . . . . . . . . . . . . 33 | 13. Video Captures | |||
14. Text captures . . . . . . . . . . . . . . . . . . . . . . . . 34 | 14. Text Captures | |||
15. Other capture types . . . . . . . . . . . . . . . . . . . . . 34 | 15. Other Capture Types | |||
16. <captureScene> . . . . . . . . . . . . . . . . . . . . . . . . 35 | 16. <captureScene> | |||
16.1. <sceneInformation> . . . . . . . . . . . . . . . . . . . 36 | 16.1. <sceneInformation> | |||
16.2. <sceneViews> . . . . . . . . . . . . . . . . . . . . . . 36 | 16.2. <sceneViews> | |||
16.3. sceneID attribute . . . . . . . . . . . . . . . . . . . . 36 | 16.3. sceneID Attribute | |||
16.4. scale attribute . . . . . . . . . . . . . . . . . . . . . 36 | 16.4. scale Attribute | |||
17. <sceneView> . . . . . . . . . . . . . . . . . . . . . . . . . 37 | 17. <sceneView> | |||
17.1. <mediaCaptureIDs> . . . . . . . . . . . . . . . . . . . . 38 | 17.1. <mediaCaptureIDs> | |||
17.2. sceneViewID attribute . . . . . . . . . . . . . . . . . . 38 | 17.2. sceneViewID Attribute | |||
18. <encodingGroup> . . . . . . . . . . . . . . . . . . . . . . . 38 | 18. <encodingGroup> | |||
18.1. <maxGroupBandwidth> . . . . . . . . . . . . . . . . . . . 39 | 18.1. <maxGroupBandwidth> | |||
18.2. <encodingIDList> . . . . . . . . . . . . . . . . . . . . 39 | 18.2. <encodingIDList> | |||
18.3. encodingGroupID attribute . . . . . . . . . . . . . . . . 39 | 18.3. encodingGroupID Attribute | |||
19. <simultaneousSet> . . . . . . . . . . . . . . . . . . . . . . 39 | 19. <simultaneousSet> | |||
19.1. setID attribute . . . . . . . . . . . . . . . . . . . . . 40 | 19.1. setID Attribute | |||
19.2. mediaType attribute . . . . . . . . . . . . . . . . . . . 40 | 19.2. mediaType Attribute | |||
19.3. <mediaCaptureIDREF> . . . . . . . . . . . . . . . . . . . 41 | 19.3. <mediaCaptureIDREF> | |||
19.4. <sceneViewIDREF> . . . . . . . . . . . . . . . . . . . . 41 | 19.4. <sceneViewIDREF> | |||
19.5. <captureSceneIDREF> . . . . . . . . . . . . . . . . . . . 41 | 19.5. <captureSceneIDREF> | |||
20. <globalView> . . . . . . . . . . . . . . . . . . . . . . . . . 41 | 20. <globalView> | |||
21. <people> . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 | 21. <people> | |||
21.1. <person> . . . . . . . . . . . . . . . . . . . . . . . . 42 | 21.1. <person> | |||
21.1.1. personID attribute . . . . . . . . . . . . . . . . . 42 | 21.1.1. personID Attribute | |||
21.1.2. <personInfo> . . . . . . . . . . . . . . . . . . . . 42 | 21.1.2. <personInfo> | |||
21.1.3. <personType> . . . . . . . . . . . . . . . . . . . . 43 | 21.1.3. <personType> | |||
22. <captureEncoding> . . . . . . . . . . . . . . . . . . . . . . 43 | 22. <captureEncoding> | |||
22.1. <captureID> . . . . . . . . . . . . . . . . . . . . . . . 44 | 22.1. <captureID> | |||
22.2. <encodingID> . . . . . . . . . . . . . . . . . . . . . . 44 | 22.2. <encodingID> | |||
22.3. <configuredContent> . . . . . . . . . . . . . . . . . . . 44 | 22.3. <configuredContent> | |||
23. <clueInfo> . . . . . . . . . . . . . . . . . . . . . . . . . . 44 | 23. <clueInfo> | |||
24. XML Schema extensibility . . . . . . . . . . . . . . . . . . . 45 | 24. XML Schema Extensibility | |||
24.1. Example of extension . . . . . . . . . . . . . . . . . . 46 | 24.1. Example of Extension | |||
25. Security considerations . . . . . . . . . . . . . . . . . . . 48 | 25. Security Considerations | |||
26. IANA considerations . . . . . . . . . . . . . . . . . . . . . 49 | 26. IANA Considerations | |||
26.1. XML namespace registration . . . . . . . . . . . . . . . 49 | 26.1. XML Namespace Registration | |||
26.2. XML Schema registration . . . . . . . . . . . . . . . . . 50 | 26.2. XML Schema Registration | |||
26.3. MIME Media Type Registration for | 26.3. Media Type Registration for "application/clue_info+xml" | |||
"application/clue_info+xml" . . . . . . . . . . . . . . . 50 | 26.4. Registry for Acceptable <view> Values | |||
26.4. Registry for acceptable <view> values . . . . . . . . . . 51 | 26.5. Registry for Acceptable <presentation> Values | |||
26.5. Registry for acceptable <presentation> values . . . . . . 51 | 26.6. Registry for Acceptable <sensitivityPattern> Values | |||
26.6. Registry for acceptable <sensitivityPattern> values . . 51 | 26.7. Registry for Acceptable <personType> Values | |||
26.7. Registry for acceptable <personType> values . . . . . . . 52 | 27. Sample XML File | |||
27. Sample XML file . . . . . . . . . . . . . . . . . . . . . . . 52 | 28. MCC Example | |||
28. MCC example . . . . . . . . . . . . . . . . . . . . . . . . . 60 | 29. References | |||
43. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 74 | 29.1. Normative References | |||
44. References . . . . . . . . . . . . . . . . . . . . . . . . . . 74 | 29.2. Informative References | |||
44.1. Normative References . . . . . . . . . . . . . . . . . . 74 | Acknowledgements | |||
44.2. Informative References . . . . . . . . . . . . . . . . . 76 | Authors' Addresses | |||
1. Introduction | 1. Introduction | |||
This document provides an XML schema file for the definition of CLUE | This document provides an XML schema file for the definition of CLUE | |||
data model types. For the benefit of the reader, the term 'CLUE' | data model types. For the benefit of the reader, the term "CLUE" | |||
stands for "ControLling mUltiple streams for tElepresence" and is the | stands for "Controlling Multiple Streams for Telepresence" and is the | |||
name of the IETF working group in which this document, as well as | name of the IETF working group in which this document, as well as | |||
other companion documents, has been developed. A thorough definition | other companion documents, has been developed. A thorough definition | |||
of the CLUE framework can be found in [I-D.ietf-clue-framework]. | of the CLUE framework can be found in [RFC8845]. | |||
The schema is based on information contained in | The schema is based on information contained in [RFC8845]. It | |||
[I-D.ietf-clue-framework]. It encodes information and constraints | encodes information and constraints defined in the aforementioned | |||
defined in the aforementioned document in order to provide a formal | document in order to provide a formal representation of the concepts | |||
representation of the concepts therein presented. | therein presented. | |||
The document aims at the definition of a coherent structure for | The document specifies the definition of a coherent structure for | |||
information associated with the description of a telepresence | information associated with the description of a telepresence | |||
scenario. Such information is used within the CLUE protocol messages | scenario. Such information is used within the CLUE protocol messages | |||
([I-D.ietf-clue-protocol]) enabling the dialogue between a Media | [RFC8847], enabling the dialogue between a Media Provider and a Media | |||
Provider and a Media Consumer. CLUE protocol messages, indeed, are | Consumer. CLUE protocol messages, indeed, are XML messages allowing | |||
XML messages allowing (i) a Media Provider to advertise its | (i) a Media Provider to advertise its telepresence capabilities in | |||
telepresence capabilities in terms of media captures, capture scenes, | terms of media captures, capture scenes, and other features | |||
and other features envisioned in the CLUE framework, according to the | envisioned in the CLUE framework, according to the format herein | |||
format herein defined and (ii) a Media Consumer to request the | defined and (ii) a Media Consumer to request the desired telepresence | |||
desired telepresence options in the form of capture encodings, | options in the form of capture encodings, represented as described in | |||
represented as described in this document. | this document. | |||
2. Terminology | 2. Terminology | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
document are to be interpreted as described in [RFC2119]. | "OPTIONAL" in this document are to be interpreted as described in | |||
BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all | ||||
capitals, as shown here. | ||||
3. Definitions | 3. Definitions | |||
This document refers to the same definitions used in | This document refers to the same definitions used in [RFC8845], | |||
[I-D.ietf-clue-framework], except for the "CLUE Participant" | except for the "CLUE Participant" definition. We briefly recall | |||
definition. We briefly recall herein some of the main terms used in | herein some of the main terms used in the document. | |||
the document. | ||||
Audio Capture: Media Capture for audio. Denoted as ACn in the | Audio Capture: Media Capture for audio. Denoted as "ACn" in the | |||
examples in this document. | examples in this document. | |||
Capture: Same as Media Capture. | Capture: Same as Media Capture. | |||
Capture Device: A device that converts physical input, such as | Capture Device: A device that converts physical input, such as | |||
audio, video or text, into an electrical signal, in most cases to | audio, video, or text, into an electrical signal, in most cases to | |||
be fed into a media encoder. | be fed into a media encoder. | |||
Capture Encoding: A specific encoding of a Media Capture, to be sent | Capture Encoding: A specific encoding of a Media Capture, to be sent | |||
by a Media Provider to a Media Consumer via RTP. | by a Media Provider to a Media Consumer via RTP. | |||
Capture Scene: A structure representing a spatial region captured by | Capture Scene: A structure representing a spatial region captured by | |||
one or more Capture Devices, each capturing media representing a | one or more Capture Devices, each capturing media representing a | |||
portion of the region. The spatial region represented by a | portion of the region. The spatial region represented by a | |||
Capture Scene MAY correspond to a real region in physical space, | Capture Scene MAY correspond to a real region in physical space, | |||
such as a room. A Capture Scene includes attributes and one or | such as a room. A Capture Scene includes attributes and one or | |||
more Capture Scene Views, with each view including one or more | more Capture Scene Views, with each view including one or more | |||
Media Captures. | Media Captures. | |||
Capture Scene View: A list of Media Captures of the same media type | Capture Scene View (CSV): A list of Media Captures of the same media | |||
that together form one way to represent the entire Capture Scene. | type that together form one way to represent the entire Capture | |||
Scene. | ||||
CLUE Participant: This term is imported from the CLUE protocol | CLUE Participant: This term is imported from the CLUE protocol | |||
([I-D.ietf-clue-protocol]) document. | document [RFC8847]. | |||
Consumer: Short for Media Consumer. | Consumer: Short for Media Consumer. | |||
Encoding or Individual Encoding: A set of parameters representing a | Encoding or Individual Encoding: A set of parameters representing a | |||
way to encode a Media Capture to become a Capture Encoding. | way to encode a Media Capture to become a Capture Encoding. | |||
Encoding Group: A set of encoding parameters representing a total | Encoding Group: A set of encoding parameters representing a total | |||
media encoding capability to be sub-divided across potentially | media encoding capability to be subdivided across potentially | |||
multiple Individual Encodings. | multiple Individual Encodings. | |||
Endpoint A CLUE-capable device which is the logical point of final | Endpoint: A CLUE-capable device that is the logical point of final | |||
termination through receiving, decoding and rendering, and/or | termination through receiving, decoding and rendering, and/or | |||
initiation through capturing, encoding, and sending of media | initiation through capturing, encoding, and sending of media | |||
streams. An endpoint consists of one or more physical devices | streams. An endpoint consists of one or more physical devices | |||
which source and sink media streams, and exactly one [RFC4353] | that source and sink media streams, and exactly one participant | |||
Participant (which, in turn, includes exactly one SIP User Agent). | [RFC4353] (which, in turn, includes exactly one SIP User Agent). | |||
Endpoints can be anything from multiscreen/multicamera rooms to | Endpoints can be anything from multiscreen/multicamera rooms to | |||
handheld devices. | handheld devices. | |||
Media: Any data that, after suitable encoding, can be conveyed over | Media: Any data that, after suitable encoding, can be conveyed over | |||
RTP, including audio, video or timed text. | RTP, including audio, video, or timed text. | |||
Media Capture: A source of Media, such as from one or more Capture | Media Capture: A source of Media, such as from one or more Capture | |||
Devices or constructed from other Media streams. | Devices or constructed from other media streams. | |||
Media Consumer: A CLUE-capable device that intends to receive | Media Consumer: A CLUE-capable device that intends to receive | |||
Capture Encodings. | Capture Encodings. | |||
Media Provider: A CLUE-capable device that intends to send Capture | Media Provider: A CLUE-capable device that intends to send Capture | |||
Encodings. | Encodings. | |||
Multiple Content Capture: A Capture that mixes and/or switches other | Multiple Content Capture (MCC): A Capture that mixes and/or switches | |||
Captures of a single type (e.g., all audio or all video.) | other Captures of a single type (for example, all audio or all | |||
Particular Media Captures may or may not be present in the | video). Particular Media Captures may or may not be present in | |||
resultant Capture Encoding depending on time or space. Denoted as | the resultant Capture Encoding depending on time or space. | |||
MCCn in the example cases in this document. | Denoted as "MCCn" in the example cases in this document. | |||
Multipoint Control Unit (MCU): A CLUE-capable device that connects | Multipoint Control Unit (MCU): A CLUE-capable device that connects | |||
two or more endpoints together into one single multimedia | two or more endpoints together into one single multimedia | |||
conference [RFC7667]. An MCU includes an [RFC4353] like Mixer, | conference [RFC7667]. An MCU includes a Mixer, similar to those | |||
without the [RFC4353] requirement to send media to each | in [RFC4353], but without the requirement to send media to each | |||
participant. | participant. | |||
Plane of Interest: The spatial plane containing the most relevant | Plane of Interest: The spatial plane within a scene containing the | |||
subject matter. | most-relevant subject matter. | |||
Provider: Same as Media Provider. | Provider: Same as a Media Provider. | |||
Render: The process of reproducing the received Streams like, for | Render: The process of generating a representation from Media, such | |||
instance, displaying of the remote video on the Media Consumer's | as displayed motion video or sound emitted from loudspeakers. | |||
screens, or playing of the remote audio through loudspeakers. | ||||
Scene: Same as Capture Scene. | Scene: Same as a Capture Scene. | |||
Simultaneous Transmission Set: A set of Media Captures that can be | Simultaneous Transmission Set: A set of Media Captures that can be | |||
transmitted simultaneously from a Media Provider. | transmitted simultaneously from a Media Provider. | |||
Single Media Capture: A capture which contains media from a single | Single Media Capture: A capture that contains media from a single | |||
source capture device, e.g., an audio capture from a single | source capture device, e.g., an audio capture from a single | |||
microphone, a video capture from a single camera. | microphone or a video capture from a single camera. | |||
Spatial Relation: The arrangement in space of two objects, in | Spatial Relation: The arrangement of two objects in space, in | |||
contrast to relation in time or other relationships. | contrast to relation in time or other relationships. | |||
Stream: A Capture Encoding sent from a Media Provider to a Media | Stream: A Capture Encoding sent from a Media Provider to a Media | |||
Consumer via RTP [RFC3550]. | Consumer via RTP [RFC3550]. | |||
Stream Characteristics: The union of the features used to describe a | Stream Characteristics: The media stream attributes commonly used in | |||
Stream in the CLUE environment and in the SIP-SDP environment. | non-CLUE SIP/SDP environments (such as media codec, bitrate, | |||
resolution, profile/level, etc.) as well as CLUE-specific | ||||
attributes, such as the Capture ID or a spatial location. | ||||
Video Capture: A Media Capture for video. | Video Capture: A Media Capture for video. | |||
4. XML Schema | 4. XML Schema | |||
This section contains the CLUE data model schema definition. | This section contains the XML schema for the CLUE data model | |||
definition. | ||||
The element and attribute definitions are formal representations of | The element and attribute definitions are formal representations of | |||
the concepts needed to describe the capabilities of a Media Provider | the concepts needed to describe the capabilities of a Media Provider | |||
and the streams that are requested by a Media Consumer given the | and the streams that are requested by a Media Consumer given the | |||
Media Provider's ADVERTISEMENT ([I-D.ietf-clue-protocol]). | Media Provider's ADVERTISEMENT [RFC8847]. | |||
The main groups of information are: | The main groups of information are: | |||
<mediaCaptures>: the list of media captures available (Section 5) | <mediaCaptures>: the list of media captures available (Section 5) | |||
<encodingGroups>: the list of encoding groups (Section 6) | ||||
<captureScenes>: the list of capture scenes (Section 7) | ||||
<simultaneousSets>: the list of simultaneous transmission sets | <encodingGroups>: the list of encoding groups (Section 6) | |||
(Section 8) | ||||
<globalViews>: the list of global views sets (Section 9) | <captureScenes>: the list of capture scenes (Section 7) | |||
<people>: meta data about the participants represented in the | <simultaneousSets>: the list of simultaneous transmission sets | |||
telepresence session (Section 21) | (Section 8) | |||
<captureEncodings>: the list of instantiated capture encodings | <globalViews>: the list of global views sets (Section 9) | |||
(Section 10) | ||||
All of the above refers to concepts that have been introduced in | <people>: metadata about the participants represented in the | |||
[I-D.ietf-clue-framework] and further detailed in this document. | telepresence session (Section 21) | |||
<?xml version="1.0" encoding="UTF-8" ?> | <captureEncodings>: the list of instantiated capture encodings | |||
<xs:schema | (Section 10) | |||
targetNamespace="urn:ietf:params:xml:ns:clue-info" | ||||
xmlns:tns="urn:ietf:params:xml:ns:clue-info" | ||||
xmlns:xs="http://www.w3.org/2001/XMLSchema" | ||||
xmlns="urn:ietf:params:xml:ns:clue-info" | ||||
xmlns:xcard="urn:ietf:params:xml:ns:vcard-4.0" | ||||
elementFormDefault="qualified" | ||||
attributeFormDefault="unqualified" | ||||
version="1.0"> | ||||
<!-- Import xcard XML schema --> | All of the above refer to concepts that have been introduced in | |||
<xs:import namespace="urn:ietf:params:xml:ns:vcard-4.0" | [RFC8845] and further detailed in this document. | |||
schemaLocation= | ||||
"http://www.iana.org/assignments/xml-registry/schema/vcard-4.0.xsd"/> | ||||
<!-- ELEMENT DEFINITIONS --> | <?xml version="1.0" encoding="UTF-8" ?> | |||
<xs:element name="mediaCaptures" type="mediaCapturesType"/> | <xs:schema | |||
<xs:element name="encodingGroups" type="encodingGroupsType"/> | targetNamespace="urn:ietf:params:xml:ns:clue-info" | |||
<xs:element name="captureScenes" type="captureScenesType"/> | xmlns:tns="urn:ietf:params:xml:ns:clue-info" | |||
<xs:element name="simultaneousSets" type="simultaneousSetsType"/> | xmlns:xs="http://www.w3.org/2001/XMLSchema" | |||
<xs:element name="globalViews" type="globalViewsType"/> | xmlns="urn:ietf:params:xml:ns:clue-info" | |||
<xs:element name="people" type="peopleType"/> | xmlns:xcard="urn:ietf:params:xml:ns:vcard-4.0" | |||
elementFormDefault="qualified" | ||||
attributeFormDefault="unqualified" | ||||
version="1.0"> | ||||
<xs:element name="captureEncodings" type="captureEncodingsType"/> | <!-- Import xCard XML schema --> | |||
<xs:import namespace="urn:ietf:params:xml:ns:vcard-4.0" | ||||
schemaLocation= | ||||
"https://www.iana.org/assignments/xml-registry/schema/ | ||||
vcard-4.0.xsd"/> | ||||
<!-- MEDIA CAPTURES TYPE --> | <!-- ELEMENT DEFINITIONS --> | |||
<!-- envelope of media captures --> | <xs:element name="mediaCaptures" type="mediaCapturesType"/> | |||
<xs:complexType name="mediaCapturesType"> | <xs:element name="encodingGroups" type="encodingGroupsType"/> | |||
<xs:sequence> | <xs:element name="captureScenes" type="captureScenesType"/> | |||
<xs:element name="mediaCapture" type="mediaCaptureType" | <xs:element name="simultaneousSets" type="simultaneousSetsType"/> | |||
maxOccurs="unbounded"/> | <xs:element name="globalViews" type="globalViewsType"/> | |||
</xs:sequence> | <xs:element name="people" type="peopleType"/> | |||
</xs:complexType> | ||||
<!-- DESCRIPTION element --> | <xs:element name="captureEncodings" type="captureEncodingsType"/> | |||
<xs:element name="description"> | ||||
<xs:complexType> | ||||
<xs:simpleContent> | ||||
<xs:extension base="xs:string"> | ||||
<xs:attribute name="lang" type="xs:language"/> | ||||
</xs:extension> | ||||
</xs:simpleContent> | ||||
</xs:complexType> | ||||
</xs:element> | ||||
<!-- MEDIA CAPTURE TYPE --> | <!-- MEDIA CAPTURES TYPE --> | |||
<xs:complexType name="mediaCaptureType" abstract="true"> | <!-- envelope of media captures --> | |||
<xs:sequence> | <xs:complexType name="mediaCapturesType"> | |||
<!-- mandatory fields --> | <xs:sequence> | |||
<xs:element name="captureSceneIDREF" type="xs:IDREF"/> | <xs:element name="mediaCapture" type="mediaCaptureType" | |||
<xs:choice> | maxOccurs="unbounded"/> | |||
<xs:sequence> | </xs:sequence> | |||
<xs:element name="spatialInformation" | </xs:complexType> | |||
type="tns:spatialInformationType"/> | ||||
</xs:sequence> | ||||
<xs:element name="nonSpatiallyDefinable" type="xs:boolean" | ||||
fixed="true"/> | ||||
</xs:choice> | ||||
<!-- for handling multi-content captures: --> | ||||
<xs:choice> | ||||
<xs:sequence> | ||||
<xs:element name="synchronizationID" type="xs:ID" | ||||
minOccurs="0"/> | ||||
<xs:element name="content" type="contentType" minOccurs="0"/> | ||||
<xs:element name="policy" type="policyType" minOccurs="0"/> | ||||
<xs:element name="maxCaptures" type="maxCapturesType" | ||||
minOccurs="0"/> | ||||
<xs:element name="allowSubsetChoice" type="xs:boolean" | <!-- DESCRIPTION element --> | |||
minOccurs="0"/> | <xs:element name="description"> | |||
</xs:sequence> | <xs:complexType> | |||
<xs:element name="individual" type="xs:boolean" fixed="true"/> | <xs:simpleContent> | |||
</xs:choice> | <xs:extension base="xs:string"> | |||
<!-- optional fields --> | <xs:attribute name="lang" type="xs:language"/> | |||
<xs:element name="encGroupIDREF" type="xs:IDREF" minOccurs="0"/> | </xs:extension> | |||
<xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | </xs:simpleContent> | |||
<xs:element name="priority" type="xs:unsignedInt" minOccurs="0"/> | </xs:complexType> | |||
<xs:element name="lang" type="xs:language" minOccurs="0" | </xs:element> | |||
maxOccurs="unbounded"/> | ||||
<xs:element name="mobility" type="mobilityType" minOccurs="0" /> | ||||
<xs:element ref="presentation" minOccurs="0" /> | ||||
<xs:element ref="embeddedText" minOccurs="0" /> | ||||
<xs:element ref="view" minOccurs="0" /> | ||||
<xs:element name="capturedPeople" type="capturedPeopleType" | ||||
minOccurs="0"/> | ||||
<xs:element name="relatedTo" type="xs:IDREF" minOccurs="0"/> | ||||
</xs:sequence> | ||||
<xs:attribute name="captureID" type="xs:ID" use="required"/> | ||||
<xs:attribute name="mediaType" type="xs:string" use="required"/> | ||||
</xs:complexType> | <!-- MEDIA CAPTURE TYPE --> | |||
<xs:complexType name="mediaCaptureType" abstract="true"> | ||||
<xs:sequence> | ||||
<!-- mandatory fields --> | ||||
<xs:element name="captureSceneIDREF" type="xs:IDREF"/> | ||||
<xs:choice> | ||||
<xs:sequence> | ||||
<xs:element name="spatialInformation" | ||||
type="tns:spatialInformationType"/> | ||||
</xs:sequence> | ||||
<xs:element name="nonSpatiallyDefinable" type="xs:boolean" | ||||
fixed="true"/> | ||||
</xs:choice> | ||||
<!-- for handling multicontent captures: --> | ||||
<xs:choice> | ||||
<xs:sequence> | ||||
<xs:element name="synchronizationID" type="xs:ID" | ||||
minOccurs="0"/> | ||||
<xs:element name="content" type="contentType" minOccurs="0"/> | ||||
<xs:element name="policy" type="policyType" minOccurs="0"/> | ||||
<xs:element name="maxCaptures" type="maxCapturesType" | ||||
minOccurs="0"/> | ||||
<xs:element name="allowSubsetChoice" type="xs:boolean" | ||||
minOccurs="0"/> | ||||
</xs:sequence> | ||||
<xs:element name="individual" type="xs:boolean" fixed="true"/> | ||||
</xs:choice> | ||||
<!-- optional fields --> | ||||
<xs:element name="encGroupIDREF" type="xs:IDREF" minOccurs="0"/> | ||||
<xs:element ref="description" minOccurs="0" | ||||
maxOccurs="unbounded"/> | ||||
<xs:element name="priority" type="xs:unsignedInt" minOccurs="0"/> | ||||
<xs:element name="lang" type="xs:language" minOccurs="0" | ||||
maxOccurs="unbounded"/> | ||||
<xs:element name="mobility" type="mobilityType" | ||||
minOccurs="0" /> | ||||
<xs:element ref="presentation" minOccurs="0" /> | ||||
<xs:element ref="embeddedText" minOccurs="0" /> | ||||
<xs:element ref="view" minOccurs="0" /> | ||||
<xs:element name="capturedPeople" type="capturedPeopleType" | ||||
minOccurs="0"/> | ||||
<xs:element name="relatedTo" type="xs:IDREF" minOccurs="0"/> | ||||
</xs:sequence> | ||||
<xs:attribute name="captureID" type="xs:ID" use="required"/> | ||||
<xs:attribute name="mediaType" type="xs:string" use="required"/> | ||||
<!-- POLICY TYPE --> | </xs:complexType> | |||
<xs:simpleType name="policyType"> | ||||
<xs:restriction base="xs:string"> | ||||
<xs:pattern value="([a-zA-Z0-9])+[:]([0-9])+"/> | ||||
</xs:restriction> | ||||
</xs:simpleType> | ||||
<!-- CONTENT TYPE --> | <!-- POLICY TYPE --> | |||
<xs:complexType name="contentType"> | <xs:simpleType name="policyType"> | |||
<xs:sequence> | <xs:restriction base="xs:string"> | |||
<xs:element name="mediaCaptureIDREF" type="xs:IDREF" | <xs:pattern value="([a-zA-Z0-9])+[:]([0-9])+"/> | |||
minOccurs="0" maxOccurs="unbounded"/> | </xs:restriction> | |||
<xs:element name="sceneViewIDREF" type="xs:IDREF" | </xs:simpleType> | |||
minOccurs="0" maxOccurs="unbounded"/> | ||||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | ||||
maxOccurs="unbounded"/> | ||||
</xs:sequence> | ||||
<xs:anyAttribute namespace="##other" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- MAX CAPTURES TYPE --> | <!-- CONTENT TYPE --> | |||
<xs:simpleType name="positiveShort"> | <xs:complexType name="contentType"> | |||
<xs:restriction base="xs:unsignedShort"> | <xs:sequence> | |||
<xs:minInclusive value="1"> | <xs:element name="mediaCaptureIDREF" type="xs:string" | |||
</xs:minInclusive> | minOccurs="0" maxOccurs="unbounded"/> | |||
</xs:restriction> | <xs:element name="sceneViewIDREF" type="xs:string" | |||
</xs:simpleType> | minOccurs="0" maxOccurs="unbounded"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | ||||
maxOccurs="unbounded"/> | ||||
</xs:sequence> | ||||
<xs:anyAttribute namespace="##other" processContents="lax"/> | ||||
</xs:complexType> | ||||
<xs:complexType name="maxCapturesType"> | <!-- MAX CAPTURES TYPE --> | |||
<xs:simpleContent> | <xs:simpleType name="positiveShort"> | |||
<xs:extension base="positiveShort"> | <xs:restriction base="xs:unsignedShort"> | |||
<xs:attribute name="exactNumber" | <xs:minInclusive value="1"> | |||
type="xs:boolean"/> | </xs:minInclusive> | |||
</xs:extension> | </xs:restriction> | |||
</xs:simpleContent> | </xs:simpleType> | |||
</xs:complexType> | ||||
<!-- CAPTURED PEOPLE TYPE --> | <xs:complexType name="maxCapturesType"> | |||
<xs:complexType name="capturedPeopleType"> | <xs:simpleContent> | |||
<xs:sequence> | <xs:extension base="positiveShort"> | |||
<xs:element name="personIDREF" type="xs:IDREF" maxOccurs="unbounded"/> | <xs:attribute name="exactNumber" | |||
</xs:sequence> | type="xs:boolean"/> | |||
</xs:complexType> | </xs:extension> | |||
</xs:simpleContent> | ||||
</xs:complexType> | ||||
<!-- PEOPLE TYPE --> | <!-- CAPTURED PEOPLE TYPE --> | |||
<xs:complexType name="peopleType"> | <xs:complexType name="capturedPeopleType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="person" type="personType" maxOccurs="unbounded"/> | <xs:element name="personIDREF" type="xs:IDREF" | |||
</xs:sequence> | maxOccurs="unbounded"/> | |||
</xs:complexType> | </xs:sequence> | |||
</xs:complexType> | ||||
<!-- PERSON TYPE --> | <!-- PEOPLE TYPE --> | |||
<xs:complexType name="personType"> | <xs:complexType name="peopleType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="personInfo" type="xcard:vcardType" maxOccurs="1" | <xs:element name="person" type="personType" maxOccurs="unbounded"/> | |||
minOccurs="0"/> | </xs:sequence> | |||
<xs:element ref="personType" minOccurs="0" maxOccurs="unbounded" /> | </xs:complexType> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | ||||
maxOccurs="unbounded"/> | ||||
</xs:sequence> | ||||
<xs:attribute name="personID" type="xs:ID" use="required"/> | ||||
<xs:anyAttribute namespace="##other" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- PERSON TYPE ELEMENT --> | <!-- PERSON TYPE --> | |||
<xs:element name="personType" type="xs:string"> | <xs:complexType name="personType"> | |||
<xs:annotation> | <xs:sequence> | |||
<xs:documentation> | <xs:element name="personInfo" type="xcard:vcardType" | |||
Acceptable values (enumerations) for this type are managed | maxOccurs="1" minOccurs="0"/> | |||
by IANA in the "CLUE Schema <personType> registry", | <xs:element ref="personType" minOccurs="0" | |||
accessible at TBD-IANA. | maxOccurs="unbounded" /> | |||
</xs:documentation> | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | ||||
</xs:sequence> | ||||
<xs:attribute name="personID" type="xs:ID" use="required"/> | ||||
<xs:anyAttribute namespace="##other" processContents="lax"/> | ||||
</xs:complexType> | ||||
</xs:annotation> | <!-- PERSON TYPE ELEMENT --> | |||
</xs:element> | <xs:element name="personType" type="xs:string"> | |||
<xs:annotation> | ||||
<xs:documentation> | ||||
Acceptable values (enumerations) for this type are managed | ||||
by IANA in the "CLUE Schema <personType>" registry, | ||||
accessible at https://www.iana.org/assignments/clue. | ||||
</xs:documentation> | ||||
</xs:annotation> | ||||
</xs:element> | ||||
<!-- VIEW ELEMENT --> | <!-- VIEW ELEMENT --> | |||
<xs:element name="view" type="xs:string"> | <xs:element name="view" type="xs:string"> | |||
<xs:annotation> | <xs:annotation> | |||
<xs:documentation> | <xs:documentation> | |||
Acceptable values (enumerations) for this type are managed | Acceptable values (enumerations) for this type are managed | |||
by IANA in the "CLUE Schema <view> registry", | by IANA in the "CLUE Schema <view>" registry, | |||
accessible at TBD-IANA. | accessible at https://www.iana.org/assignments/clue. | |||
</xs:documentation> | </xs:documentation> | |||
</xs:annotation> | </xs:annotation> | |||
</xs:element> | </xs:element> | |||
<!-- PRESENTATION ELEMENT --> | <!-- PRESENTATION ELEMENT --> | |||
<xs:element name="presentation" type="xs:string"> | <xs:element name="presentation" type="xs:string"> | |||
<xs:annotation> | <xs:annotation> | |||
<xs:documentation> | <xs:documentation> | |||
Acceptable values (enumerations) for this type are managed | Acceptable values (enumerations) for this type are managed | |||
by IANA in the "CLUE Schema <presentation> registry", | by IANA in the "CLUE Schema <presentation>" registry, | |||
accessible at TBD-IANA. | accessible at https://www.iana.org/assignments/clue. | |||
</xs:documentation> | </xs:documentation> | |||
</xs:annotation> | </xs:annotation> | |||
</xs:element> | </xs:element> | |||
<!-- SPATIAL INFORMATION TYPE --> | <!-- SPATIAL INFORMATION TYPE --> | |||
<xs:complexType name="spatialInformationType"> | <xs:complexType name="spatialInformationType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="captureOrigin" type="captureOriginType" | <xs:element name="captureOrigin" type="captureOriginType" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
<xs:element name="captureArea" type="captureAreaType" minOccurs="0"/> | <xs:element name="captureArea" type="captureAreaType" | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | minOccurs="0"/> | |||
maxOccurs="unbounded"/> | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
</xs:sequence> | maxOccurs="unbounded"/> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | </xs:sequence> | |||
</xs:complexType> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:complexType> | ||||
<!-- POINT TYPE --> | <!-- POINT TYPE --> | |||
<xs:complexType name="pointType"> | <xs:complexType name="pointType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="x" type="xs:decimal"/> | <xs:element name="x" type="xs:decimal"/> | |||
<xs:element name="y" type="xs:decimal"/> | <xs:element name="y" type="xs:decimal"/> | |||
<xs:element name="z" type="xs:decimal"/> | <xs:element name="z" type="xs:decimal"/> | |||
</xs:sequence> | </xs:sequence> | |||
</xs:complexType> | </xs:complexType> | |||
<!-- CAPTURE ORIGIN TYPE --> | <!-- CAPTURE ORIGIN TYPE --> | |||
<xs:complexType name="captureOriginType"> | <xs:complexType name="captureOriginType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="capturePoint" type="pointType"></xs:element> | <xs:element name="capturePoint" type="pointType"></xs:element> | |||
<xs:element name="lineOfCapturePoint" type="pointType" | <xs:element name="lineOfCapturePoint" type="pointType" | |||
minOccurs="0"> | minOccurs="0"> | |||
</xs:element> | </xs:element> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##any" processContents="lax"/> | <xs:anyAttribute namespace="##any" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
<!-- CAPTURE AREA TYPE --> | <!-- CAPTURE AREA TYPE --> | |||
<xs:complexType name="captureAreaType"> | <xs:complexType name="captureAreaType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="bottomLeft" type="pointType"/> | <xs:element name="bottomLeft" type="pointType"/> | |||
<xs:element name="bottomRight" type="pointType"/> | <xs:element name="bottomRight" type="pointType"/> | |||
<xs:element name="topLeft" type="pointType"/> | <xs:element name="topLeft" type="pointType"/> | |||
<xs:element name="topRight" type="pointType"/> | <xs:element name="topRight" type="pointType"/> | |||
</xs:sequence> | </xs:sequence> | |||
</xs:complexType> | </xs:complexType> | |||
<!-- MOBILITY TYPE --> | <!-- MOBILITY TYPE --> | |||
<xs:simpleType name="mobilityType"> | <xs:simpleType name="mobilityType"> | |||
<xs:restriction base="xs:string"> | <xs:restriction base="xs:string"> | |||
<xs:enumeration value="static" /> | <xs:enumeration value="static" /> | |||
<xs:enumeration value="dynamic" /> | <xs:enumeration value="dynamic" /> | |||
<xs:enumeration value="highly-dynamic" /> | <xs:enumeration value="highly-dynamic" /> | |||
</xs:restriction> | </xs:restriction> | |||
</xs:simpleType> | </xs:simpleType> | |||
<!-- TEXT CAPTURE TYPE --> | <!-- TEXT CAPTURE TYPE --> | |||
<xs:complexType name="textCaptureType"> | <xs:complexType name="textCaptureType"> | |||
<xs:complexContent> | <xs:complexContent> | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:extension> | </xs:extension> | |||
</xs:complexContent> | </xs:complexContent> | |||
</xs:complexType> | </xs:complexType> | |||
<!-- OTHER CAPTURE TYPE --> | <!-- OTHER CAPTURE TYPE --> | |||
<xs:complexType name="otherCaptureType"> | <xs:complexType name="otherCaptureType"> | |||
<xs:complexContent> | <xs:complexContent> | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:extension> | </xs:extension> | |||
</xs:complexContent> | </xs:complexContent> | |||
</xs:complexType> | </xs:complexType> | |||
<!-- AUDIO CAPTURE TYPE --> | <!-- AUDIO CAPTURE TYPE --> | |||
<xs:complexType name="audioCaptureType"> | <xs:complexType name="audioCaptureType"> | |||
<xs:complexContent> | <xs:complexContent> | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element ref="sensitivityPattern" minOccurs="0" /> | <xs:element ref="sensitivityPattern" minOccurs="0" /> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:extension> | </xs:extension> | |||
</xs:complexContent> | </xs:complexContent> | |||
</xs:complexType> | </xs:complexType> | |||
<!-- SENSITIVITY PATTERN ELEMENT --> | <!-- SENSITIVITY PATTERN ELEMENT --> | |||
<xs:element name="sensitivityPattern" type="xs:string"> | <xs:element name="sensitivityPattern" type="xs:string"> | |||
<xs:annotation> | <xs:annotation> | |||
<xs:documentation> | <xs:documentation> | |||
Acceptable values (enumerations) for this type are managed by IANA | Acceptable values (enumerations) for this type are managed by | |||
in the "CLUE Schema <sensitivityPattern> registry", accessible | IANA in the "CLUE Schema <sensitivityPattern>" registry, | |||
at TBD-IANA. | accessible at https://www.iana.org/assignments/clue. | |||
</xs:documentation> | </xs:documentation> | |||
</xs:annotation> | </xs:annotation> | |||
</xs:element> | </xs:element> | |||
<!-- VIDEO CAPTURE TYPE --> | <!-- VIDEO CAPTURE TYPE --> | |||
<xs:complexType name="videoCaptureType"> | <xs:complexType name="videoCaptureType"> | |||
<xs:complexContent> | <xs:complexContent> | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:extension> | </xs:extension> | |||
</xs:complexContent> | </xs:complexContent> | |||
</xs:complexType> | ||||
</xs:complexType> | <!-- EMBEDDED TEXT ELEMENT --> | |||
<xs:element name="embeddedText"> | ||||
<xs:complexType> | ||||
<xs:simpleContent> | ||||
<xs:extension base="xs:boolean"> | ||||
<xs:attribute name="lang" type="xs:language"/> | ||||
</xs:extension> | ||||
</xs:simpleContent> | ||||
</xs:complexType> | ||||
</xs:element> | ||||
<!-- EMBEDDED TEXT ELEMENT --> | <!-- CAPTURE SCENES TYPE --> | |||
<xs:element name="embeddedText"> | <!-- envelope of capture scenes --> | |||
<xs:complexType> | <xs:complexType name="captureScenesType"> | |||
<xs:simpleContent> | <xs:sequence> | |||
<xs:extension base="xs:boolean"> | <xs:element name="captureScene" type="captureSceneType" | |||
<xs:attribute name="lang" type="xs:language"/> | maxOccurs="unbounded"/> | |||
</xs:extension> | </xs:sequence> | |||
</xs:simpleContent> | </xs:complexType> | |||
</xs:complexType> | ||||
</xs:element> | ||||
<!-- CAPTURE SCENES TYPE --> | <!-- CAPTURE SCENE TYPE --> | |||
<!-- envelope of capture scenes --> | <xs:complexType name="captureSceneType"> | |||
<xs:complexType name="captureScenesType"> | <xs:sequence> | |||
<xs:sequence> | <xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | |||
<xs:element name="captureScene" type="captureSceneType" | <xs:element name="sceneInformation" type="xcard:vcardType" | |||
maxOccurs="unbounded"/> | minOccurs="0"/> | |||
</xs:sequence> | <xs:element name="sceneViews" type="sceneViewsType" minOccurs="0"/> | |||
</xs:complexType> | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | ||||
</xs:sequence> | ||||
<xs:attribute name="sceneID" type="xs:ID" use="required"/> | ||||
<xs:attribute name="scale" type="scaleType" use="required"/> | ||||
<xs:anyAttribute namespace="##other" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- CAPTURE SCENE TYPE --> | <!-- SCALE TYPE --> | |||
<xs:complexType name="captureSceneType"> | <xs:simpleType name="scaleType"> | |||
<xs:sequence> | <xs:restriction base="xs:string"> | |||
<xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | <xs:enumeration value="mm"/> | |||
<xs:element name="sceneInformation" type="xcard:vcardType" | <xs:enumeration value="unknown"/> | |||
minOccurs="0"/> | <xs:enumeration value="noscale"/> | |||
<xs:element name="sceneViews" type="sceneViewsType" minOccurs="0"/> | </xs:restriction> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | </xs:simpleType> | |||
maxOccurs="unbounded"/> | ||||
</xs:sequence> | ||||
<xs:attribute name="sceneID" type="xs:ID" use="required"/> | ||||
<xs:attribute name="scale" type="scaleType" use="required"/> | ||||
<xs:anyAttribute namespace="##other" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- SCALE TYPE --> | <!-- SCENE VIEWS TYPE --> | |||
<xs:simpleType name="scaleType"> | <!-- envelope of scene views of a capture scene --> | |||
<xs:restriction base="xs:string"> | <xs:complexType name="sceneViewsType"> | |||
<xs:enumeration value="mm"/> | <xs:sequence> | |||
<xs:enumeration value="unknown"/> | <xs:element name="sceneView" type="sceneViewType" | |||
<xs:enumeration value="noscale"/> | maxOccurs="unbounded"/> | |||
</xs:restriction> | </xs:sequence> | |||
</xs:simpleType> | </xs:complexType> | |||
<!-- SCENE VIEWS TYPE --> | <!-- SCENE VIEW TYPE --> | |||
<!-- envelope of scene views of a capture scene --> | <xs:complexType name="sceneViewType"> | |||
<xs:complexType name="sceneViewsType"> | <xs:sequence> | |||
<xs:sequence> | <xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | |||
<xs:element name="sceneView" type="sceneViewType" | <xs:element name="mediaCaptureIDs" type="captureIDListType"/> | |||
maxOccurs="unbounded"/> | </xs:sequence> | |||
</xs:sequence> | <xs:attribute name="sceneViewID" type="xs:ID" use="required"/> | |||
</xs:complexType> | </xs:complexType> | |||
<!-- SCENE VIEW TYPE --> | <!-- CAPTURE ID LIST TYPE --> | |||
<xs:complexType name="sceneViewType"> | <xs:complexType name="captureIDListType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | <xs:element name="mediaCaptureIDREF" type="xs:IDREF" | |||
<xs:element name="mediaCaptureIDs" type="captureIDListType"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="sceneViewID" type="xs:ID" use="required"/> | </xs:complexType> | |||
</xs:complexType> | ||||
<!-- CAPTURE ID LIST TYPE --> | <!-- ENCODING GROUPS TYPE --> | |||
<xs:complexType name="captureIDListType"> | <xs:complexType name="encodingGroupsType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="mediaCaptureIDREF" type="xs:IDREF" | <xs:element name="encodingGroup" type="tns:encodingGroupType" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
</xs:complexType> | </xs:complexType> | |||
<!-- ENCODING GROUPS TYPE --> | <!-- ENCODING GROUP TYPE --> | |||
<xs:complexType name="encodingGroupsType"> | <xs:complexType name="encodingGroupType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="encodingGroup" type="tns:encodingGroupType" | <xs:element name="maxGroupBandwidth" type="xs:unsignedLong"/> | |||
maxOccurs="unbounded"/> | <xs:element name="encodingIDList" type="encodingIDListType"/> | |||
</xs:sequence> | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
</xs:complexType> | maxOccurs="unbounded"/> | |||
</xs:sequence> | ||||
<xs:attribute name="encodingGroupID" type="xs:ID" use="required"/> | ||||
<xs:anyAttribute namespace="##any" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- ENCODING GROUP TYPE --> | <!-- ENCODING ID LIST TYPE --> | |||
<xs:complexType name="encodingGroupType"> | <xs:complexType name="encodingIDListType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="maxGroupBandwidth" type="xs:unsignedLong"/> | <xs:element name="encodingID" type="xs:string" | |||
<xs:element name="encodingIDList" type="encodingIDListType"/> | maxOccurs="unbounded"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | </xs:sequence> | |||
maxOccurs="unbounded"/> | </xs:complexType> | |||
</xs:sequence> | ||||
<xs:attribute name="encodingGroupID" type="xs:ID" use="required"/> | ||||
<xs:anyAttribute namespace="##any" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- ENCODING ID LIST TYPE --> | <!-- SIMULTANEOUS SETS TYPE --> | |||
<xs:complexType name="encodingIDListType"> | <xs:complexType name="simultaneousSetsType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="encodingID" type="xs:string" maxOccurs="unbounded"/> | <xs:element name="simultaneousSet" type="simultaneousSetType" | |||
</xs:sequence> | maxOccurs="unbounded"/> | |||
</xs:complexType> | </xs:sequence> | |||
</xs:complexType> | ||||
<!-- SIMULTANEOUS SETS TYPE --> | <!-- SIMULTANEOUS SET TYPE --> | |||
<xs:complexType name="simultaneousSetsType"> | <xs:complexType name="simultaneousSetType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="simultaneousSet" type="simultaneousSetType" | <xs:element name="mediaCaptureIDREF" type="xs:IDREF" | |||
maxOccurs="unbounded"/> | minOccurs="0" maxOccurs="unbounded"/> | |||
</xs:sequence> | <xs:element name="sceneViewIDREF" type="xs:IDREF" | |||
</xs:complexType> | minOccurs="0" maxOccurs="unbounded"/> | |||
<xs:element name="captureSceneIDREF" type="xs:IDREF" | ||||
minOccurs="0" maxOccurs="unbounded"/> | ||||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | ||||
maxOccurs="unbounded"/> | ||||
</xs:sequence> | ||||
<xs:attribute name="setID" type="xs:ID" use="required"/> | ||||
<xs:attribute name="mediaType" type="xs:string"/> | ||||
<xs:anyAttribute namespace="##any" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- SIMULTANEOUS SET TYPE --> | <!-- GLOBAL VIEWS TYPE --> | |||
<xs:complexType name="simultaneousSetType"> | <xs:complexType name="globalViewsType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="mediaCaptureIDREF" type="xs:IDREF" | <xs:element name="globalView" type="globalViewType" | |||
minOccurs="0" maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
<xs:element name="sceneViewIDREF" type="xs:IDREF" | </xs:sequence> | |||
minOccurs="0" maxOccurs="unbounded"/> | </xs:complexType> | |||
<xs:element name="captureSceneIDREF" type="xs:IDREF" | ||||
minOccurs="0" maxOccurs="unbounded"/> | ||||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | ||||
maxOccurs="unbounded"/> | ||||
</xs:sequence> | ||||
<xs:attribute name="setID" type="xs:ID" use="required"/> | ||||
<xs:attribute name="mediaType" type="xs:string"/> | ||||
<xs:anyAttribute namespace="##any" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- GLOBAL VIEWS TYPE --> | <!-- GLOBAL VIEW TYPE --> | |||
<xs:complexType name="globalViewsType"> | <xs:complexType name="globalViewType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="globalView" type="globalViewType" | <xs:element name="sceneViewIDREF" type="xs:IDREF" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
</xs:complexType> | maxOccurs="unbounded"/> | |||
</xs:sequence> | ||||
<xs:attribute name="globalViewID" type="xs:ID"/> | ||||
<xs:anyAttribute namespace="##any" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- GLOBAL VIEW TYPE --> | <!-- CAPTURE ENCODINGS TYPE --> | |||
<xs:complexType name="globalViewType"> | <xs:complexType name="captureEncodingsType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="sceneViewIDREF" type="xs:IDREF" | <xs:element name="captureEncoding" type="captureEncodingType" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | </xs:sequence> | |||
maxOccurs="unbounded"/> | </xs:complexType> | |||
</xs:sequence> | ||||
<xs:attribute name="globalViewID" type="xs:ID"/> | ||||
<xs:anyAttribute namespace="##any" processContents="lax"/> | ||||
</xs:complexType> | ||||
<!-- CAPTURE ENCODINGS TYPE --> | ||||
<xs:complexType name="captureEncodingsType"> | ||||
<xs:sequence> | ||||
<xs:element name="captureEncoding" type="captureEncodingType" | ||||
maxOccurs="unbounded"/> | ||||
</xs:sequence> | ||||
</xs:complexType> | ||||
<!-- CAPTURE ENCODING TYPE --> | <!-- CAPTURE ENCODING TYPE --> | |||
<xs:complexType name="captureEncodingType"> | <xs:complexType name="captureEncodingType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="captureID" type="xs:string"/> | <xs:element name="captureID" type="xs:string"/> | |||
<xs:element name="encodingID" type="xs:string"/> | <xs:element name="encodingID" type="xs:string"/> | |||
<xs:element name="configuredContent" type="contentType" | <xs:element name="configuredContent" type="contentType" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="ID" type="xs:ID" use="required"/> | <xs:attribute name="ID" type="xs:ID" use="required"/> | |||
<xs:anyAttribute namespace="##any" processContents="lax"/> | <xs:anyAttribute namespace="##any" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
<!-- CLUE INFO ELEMENT --> | <!-- CLUE INFO ELEMENT --> | |||
<xs:element name="clueInfo" type="clueInfoType"/> | <xs:element name="clueInfo" type="clueInfoType"/> | |||
<!-- CLUE INFO TYPE --> | <!-- CLUE INFO TYPE --> | |||
<xs:complexType name="clueInfoType"> | <xs:complexType name="clueInfoType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element ref="mediaCaptures"/> | <xs:element ref="mediaCaptures"/> | |||
<xs:element ref="encodingGroups"/> | <xs:element ref="encodingGroups"/> | |||
<xs:element ref="captureScenes"/> | <xs:element ref="captureScenes"/> | |||
<xs:element ref="simultaneousSets" minOccurs="0"/> | <xs:element ref="simultaneousSets" minOccurs="0"/> | |||
<xs:element ref="globalViews" minOccurs="0"/> | <xs:element ref="globalViews" minOccurs="0"/> | |||
<xs:element ref="people" minOccurs="0"/> | <xs:element ref="people" minOccurs="0"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="clueInfoID" type="xs:ID" use="required"/> | <xs:attribute name="clueInfoID" type="xs:ID" use="required"/> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
</xs:schema> | </xs:schema> | |||
Following sections describe the XML schema in more detail. As a | The following sections describe the XML schema in more detail. As a | |||
general remark, please notice that optional elements that don't | general remark, please notice that optional elements that don't | |||
define what their absence means are intended to be associated with | define what their absence means are intended to be associated with | |||
undefined properties. | undefined properties. | |||
5. <mediaCaptures> | 5. <mediaCaptures> | |||
<mediaCaptures> represents the list of one or more media captures | <mediaCaptures> represents the list of one or more media captures | |||
available at the Media Provider's side. Each media capture is | available at the Media Provider's side. Each media capture is | |||
represented by a <mediaCapture> element (Section 11). | represented by a <mediaCapture> element (Section 11). | |||
6. <encodingGroups> | 6. <encodingGroups> | |||
<encodingGroups> represents the list of the encoding groups organized | <encodingGroups> represents the list of the encoding groups organized | |||
on the Media Provider's side. Each encoding group is represented by | on the Media Provider's side. Each encoding group is represented by | |||
an <encodingGroup> element (Section 18). | an <encodingGroup> element (Section 18). | |||
7. <captureScenes> | 7. <captureScenes> | |||
<captureScenes> represents the list of the capture scenes organized | <captureScenes> represents the list of the capture scenes organized | |||
on the Media Provider's side. Each capture scene is represented by a | on the Media Provider's side. Each capture scene is represented by a | |||
<captureScene> element. (Section 16). | <captureScene> element (Section 16). | |||
8. <simultaneousSets> | 8. <simultaneousSets> | |||
<simultaneousSets> contains the simultaneous sets indicated by the | <simultaneousSets> contains the simultaneous sets indicated by the | |||
Media Provider. Each simultaneous set is represented by a | Media Provider. Each simultaneous set is represented by a | |||
<simultaneousSet> element. (Section 19). | <simultaneousSet> element (Section 19). | |||
9. <globalViews> | 9. <globalViews> | |||
<globalViews> contains a set of alternative representations of all | <globalViews> contains a set of alternative representations of all | |||
the scenes that are offered by a Media Provider to a Media Consumer. | the scenes that are offered by a Media Provider to a Media Consumer. | |||
Each alternative is named "global view" and it is represented by a | Each alternative is named "global view", and it is represented by a | |||
<globalView> element. (Section 20). | <globalView> element (Section 20). | |||
10. <captureEncodings> | 10. <captureEncodings> | |||
<captureEncodings> is a list of capture encodings. It can represent | <captureEncodings> is a list of capture encodings. It can represent | |||
the list of the desired capture encodings indicated by the Media | the list of the desired capture encodings indicated by the Media | |||
Consumer or the list of instantiated captures on the provider's side. | Consumer or the list of instantiated captures on the provider's side. | |||
Each capture encoding is represented by a <captureEncoding> element. | Each capture encoding is represented by a <captureEncoding> element | |||
(Section 22). | (Section 22). | |||
11. <mediaCapture> | 11. <mediaCapture> | |||
A Media Capture is the fundamental representation of a media flow | A media capture is the fundamental representation of a media flow | |||
that is available on the provider's side. Media captures are | that is available on the provider's side. Media captures are | |||
characterized (i) by a set of features that are independent from the | characterized by (i) a set of features that are independent from the | |||
specific type of medium, and (ii) by a set of features that are | specific type of medium and (ii) a set of features that are media | |||
media-specific. The features that are common to all media types | specific. The features that are common to all media types appear | |||
appear within the media capture type, that has been designed as an | within the media capture type, which has been designed as an abstract | |||
abstract complex type. Media-specific captures, such as video | complex type. Media-specific captures, such as video captures, audio | |||
captures, audio captures and others, are specializations of that | captures, and others, are specializations of that abstract media | |||
abstract media capture type, as in a typical generalization- | capture type, as in a typical generalization-specialization | |||
specialization hierarchy. | hierarchy. | |||
The following is the XML Schema definition of the media capture type: | The following is the XML schema definition of the media capture type: | |||
<!-- MEDIA CAPTURE TYPE --> | <!-- MEDIA CAPTURE TYPE --> | |||
<xs:complexType name="mediaCaptureType" abstract="true"> | <xs:complexType name="mediaCaptureType" abstract="true"> | |||
<xs:sequence> | <xs:sequence> | |||
<!-- mandatory fields --> | <!-- mandatory fields --> | |||
<xs:element name="captureSceneIDREF" type="xs:IDREF"/> | <xs:element name="captureSceneIDREF" type="xs:IDREF"/> | |||
<xs:choice> | <xs:choice> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="spatialInformation" | <xs:element name="spatialInformation" | |||
type="tns:spatialInformationType"/> | type="tns:spatialInformationType"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:element name="nonSpatiallyDefinable" type="xs:boolean" | <xs:element name="nonSpatiallyDefinable" type="xs:boolean" | |||
fixed="true"/> | fixed="true"/> | |||
</xs:choice> | </xs:choice> | |||
<!-- for handling multi-content captures: --> | <!-- for handling multicontent captures: --> | |||
<xs:choice> | <xs:choice> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="synchronizationID" type="xs:ID" | <xs:element name="synchronizationID" type="xs:ID" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
<xs:element name="content" type="contentType" minOccurs="0"/> | <xs:element name="content" type="contentType" minOccurs="0"/> | |||
<xs:element name="policy" type="policyType" minOccurs="0"/> | <xs:element name="policy" type="policyType" minOccurs="0"/> | |||
<xs:element name="maxCaptures" type="maxCapturesType" | <xs:element name="maxCaptures" type="maxCapturesType" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
<xs:element name="allowSubsetChoice" type="xs:boolean" | <xs:element name="allowSubsetChoice" type="xs:boolean" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:element name="individual" type="xs:boolean" fixed="true"/> | <xs:element name="individual" type="xs:boolean" fixed="true"/> | |||
</xs:choice> | </xs:choice> | |||
<!-- optional fields --> | <!-- optional fields --> | |||
<xs:element name="encGroupIDREF" type="xs:IDREF" minOccurs="0"/> | <xs:element name="encGroupIDREF" type="xs:IDREF" minOccurs="0"/> | |||
<xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | <xs:element ref="description" minOccurs="0" | |||
<xs:element name="priority" type="xs:unsignedInt" minOccurs="0"/> | maxOccurs="unbounded"/> | |||
<xs:element name="lang" type="xs:language" minOccurs="0" | <xs:element name="priority" type="xs:unsignedInt" minOccurs="0"/> | |||
maxOccurs="unbounded"/> | <xs:element name="lang" type="xs:language" minOccurs="0" | |||
<xs:element name="mobility" type="mobilityType" minOccurs="0" /> | maxOccurs="unbounded"/> | |||
<xs:element ref="presentation" minOccurs="0" /> | <xs:element name="mobility" type="mobilityType" minOccurs="0" /> | |||
<xs:element ref="embeddedText" minOccurs="0" /> | <xs:element ref="presentation" minOccurs="0" /> | |||
<xs:element ref="view" minOccurs="0" /> | <xs:element ref="embeddedText" minOccurs="0" /> | |||
<xs:element name="capturedPeople" type="capturedPeopleType" | <xs:element ref="view" minOccurs="0" /> | |||
minOccurs="0"/> | <xs:element name="capturedPeople" type="capturedPeopleType" | |||
<xs:element name="relatedTo" type="xs:IDREF" minOccurs="0"/> | minOccurs="0"/> | |||
</xs:sequence> | <xs:element name="relatedTo" type="xs:IDREF" minOccurs="0"/> | |||
<xs:attribute name="captureID" type="xs:ID" use="required"/> | </xs:sequence> | |||
<xs:attribute name="mediaType" type="xs:string" use="required"/> | <xs:attribute name="captureID" type="xs:ID" use="required"/> | |||
</xs:complexType> | <xs:attribute name="mediaType" type="xs:string" use="required"/> | |||
</xs:complexType> | ||||
11.1. captureID attribute | 11.1. captureID Attribute | |||
The "captureID" attribute is a mandatory field containing the | The "captureID" attribute is a mandatory field containing the | |||
identifier of the media capture. Such an identifier serves as the | identifier of the media capture. Such an identifier serves as the | |||
way the capture is referenced from other data model elements (e.g., | way the capture is referenced from other data model elements (e.g., | |||
simultaneous sets, capture encodings, and others via | simultaneous sets, capture encodings, and others via | |||
<mediaCaptureIDREF>). | <mediaCaptureIDREF>). | |||
11.2. mediaType attribute | 11.2. mediaType Attribute | |||
The "mediaType" attribute is a mandatory attribute specifying the | The "mediaType" attribute is a mandatory attribute specifying the | |||
media type of the capture. Common standard values are "audio", | media type of the capture. Common standard values are "audio", | |||
"video", "text", as defined in [RFC6838]. Other values can be | "video", and "text", as defined in [RFC6838]. Other values can be | |||
provided. It is assumed that implementations agree on the | provided. It is assumed that implementations agree on the | |||
interpretation of those other values. The "mediaType" attribute is | interpretation of those other values. The "mediaType" attribute is | |||
as generic as possible. Here is why: (i) the basic media capture | as generic as possible. Here is why: (i) the basic media capture | |||
type is an abstract one; (ii) "concrete" definitions for the standard | type is an abstract one; (ii) "concrete" definitions for the standard | |||
([RFC6838]) audio, video and text capture types have been specified; | audio, video, and text capture types [RFC6838] have been specified; | |||
(iii) a generic "otherCaptureType" type has been defined; (iv) the | (iii) a generic "otherCaptureType" type has been defined; and (iv) | |||
"mediaType" attribute has been generically defined as a string, with | the "mediaType" attribute has been generically defined as a string, | |||
no particular template. From the considerations above, it is clear | with no particular template. From the considerations above, it is | |||
that if one chooses to rely on a brand new media type and wants to | clear that if one chooses to rely on a brand new media type and wants | |||
interoperate with others, an application-level agreement is needed on | to interoperate with others, an application-level agreement is needed | |||
how to interpret such information. | on how to interpret such information. | |||
11.3. <captureSceneIDREF> | 11.3. <captureSceneIDREF> | |||
<captureSceneIDREF> is a mandatory field containing the value of the | <captureSceneIDREF> is a mandatory field containing the value of the | |||
identifier of the capture scene the media capture is defined in, | identifier of the capture scene the media capture is defined in, | |||
i.e., the value of the sceneID (Section 16.3) attribute of that | i.e., the value of the sceneID attribute (Section 16.3) of that | |||
capture scene. Indeed, each media capture MUST be defined within one | capture scene. Indeed, each media capture MUST be defined within one | |||
and only one capture scene. When a media capture is spatially | and only one capture scene. When a media capture is spatially | |||
definable, some spatial information is provided along with it in the | definable, some spatial information is provided along with it in the | |||
form of point coordinates (see Section 11.5). Such coordinates refer | form of point coordinates (see Section 11.5). Such coordinates refer | |||
to the space of coordinates defined for the capture scene containing | to the space of coordinates defined for the capture scene containing | |||
the capture. | the capture. | |||
11.4. <encGroupIDREF> | 11.4. <encGroupIDREF> | |||
<encGroupIDREF> is an optional field containing the identifier of the | <encGroupIDREF> is an optional field containing the identifier of the | |||
encoding group the media capture is associated with, i.e., the value | encoding group the media capture is associated with, i.e., the value | |||
of the encodingGroupID (Section 18.3) attribute of that encoding | of the encodingGroupID attribute (Section 18.3) of that encoding | |||
group. Media captures that are not associated with any encoding | group. Media captures that are not associated with any encoding | |||
group can not be instantiated as media streams. | group cannot be instantiated as media streams. | |||
11.5. <spatialInformation> | 11.5. <spatialInformation> | |||
Media captures are divided into two categories: (i) non spatially | Media captures are divided into two categories: (i) non spatially | |||
definable captures and (ii) spatially definable captures. | definable captures and (ii) spatially definable captures. | |||
Captures are spatially definable when at least (i) it is possible to | Captures are spatially definable when at least it is possible to | |||
provide the coordinates of the device position within the | provide (i) the coordinates of the device position within the | |||
telepresence room of origin (capture point) together with its | telepresence room of origin (capture point) together with its | |||
capturing direction specified by a second point (point on line of | capturing direction specified by a second point (point on line of | |||
capture), or (ii) it is possible to provide the represented area | capture) or (ii) the represented area within the telepresence room, | |||
within the telepresence room, by listing the coordinates of the four | by listing the coordinates of the four coplanar points identifying | |||
co-planar points identifying the plane of interest (area of capture). | the plane of interest (area of capture). The coordinates of the | |||
The coordinates of the above mentioned points MUST be expressed | above mentioned points MUST be expressed according to the coordinate | |||
according to the coordinate space of the capture scene the media | space of the capture scene the media captures belong to. | |||
captures belongs to. | ||||
Non spatially definable captures cannot be characterized within the | Non spatially definable captures cannot be characterized within the | |||
physical space of the telepresence room of origin. Captures of this | physical space of the telepresence room of origin. Captures of this | |||
kind are for example those related to recordings, text captures, | kind are, for example, those related to recordings, text captures, | |||
DVDs, registered presentations, or external streams that are played | DVDs, registered presentations, or external streams that are played | |||
in the telepresence room and transmitted to remote sites. | in the telepresence room and transmitted to remote sites. | |||
Spatially definable captures represent a part of the telepresence | Spatially definable captures represent a part of the telepresence | |||
room. The captured part of the telepresence room is described by | room. The captured part of the telepresence room is described by | |||
means of the <spatialInformation> element. By comparing the | means of the <spatialInformation> element. By comparing the | |||
<spatialInformation> element of different media captures within the | <spatialInformation> element of different media captures within the | |||
same capture scene, a consumer can better determine the spatial | same capture scene, a consumer can better determine the spatial | |||
relationships between them and render them correctly. Non spatially | relationships between them and render them correctly. Non spatially | |||
definable captures do not embed such element in their XML | definable captures do not embed such elements in their XML | |||
description: they are instead characterized by having the | description: they are instead characterized by having the | |||
<nonSpatiallyDefinable> tag set to "true" (see Section 11.6). | <nonSpatiallyDefinable> tag set to "true" (see Section 11.6). | |||
The definition of the spatial information type is the following: | The definition of the spatial information type is the following: | |||
<!-- SPATIAL INFORMATION TYPE --> | <!-- SPATIAL INFORMATION TYPE --> | |||
<xs:complexType name="spatialInformationType"> | <xs:complexType name="spatialInformationType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="captureOrigin" type="captureOriginType" | <xs:element name="captureOrigin" type="captureOriginType" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
<xs:element name="captureArea" type="captureAreaType" minOccurs="0"/> | <xs:element name="captureArea" type="captureAreaType" | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | minOccurs="0"/> | |||
maxOccurs="unbounded"/> | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
</xs:sequence> | maxOccurs="unbounded"/> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | </xs:sequence> | |||
</xs:complexType> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:complexType> | ||||
The <captureOrigin> contains the coordinates of the capture device | The <captureOrigin> contains the coordinates of the capture device | |||
that is taking the capture (i.e., the capture point), as well as, | that is taking the capture (i.e., the capture point) as well as, | |||
optionally, the pointing direction (i.e., the point on line of | optionally, the pointing direction (i.e., the point on line of | |||
capture) (see Section 11.5.1). | capture); see Section 11.5.1. | |||
The <captureArea> is an optional field containing four points | The <captureArea> is an optional field containing four points | |||
defining the captured area covered by the capture (see | defining the captured area covered by the capture (see | |||
Section 11.5.2). | Section 11.5.2). | |||
The scale of the points coordinates is specified in the scale | The scale of the points coordinates is specified in the scale | |||
(Section 16.4) attribute of the capture scene the media capture | attribute (Section 16.4) of the capture scene the media capture | |||
belongs to. Indeed, all the spatially definable media captures | belongs to. Indeed, all the spatially definable media captures | |||
referring to the same capture scene share the same coordinate system | referring to the same capture scene share the same coordinate system | |||
and express their spatial information according to the same scale. | and express their spatial information according to the same scale. | |||
11.5.1. <captureOrigin> | 11.5.1. <captureOrigin> | |||
The <captureOrigin> element is used to represent the position and | The <captureOrigin> element is used to represent the position and | |||
optionally the line of capture of a capture device. <captureOrigin> | optionally the line of capture of a capture device. <captureOrigin> | |||
MUST be included in spatially definable audio captures, while it is | MUST be included in spatially definable audio captures, while it is | |||
optional for spatially definable video captures. | optional for spatially definable video captures. | |||
The XML Schema definition of the <captureOrigin> element type is the | The XML schema definition of the <captureOrigin> element type is the | |||
following: | following: | |||
<!-- CAPTURE ORIGIN TYPE --> | <!-- CAPTURE ORIGIN TYPE --> | |||
<xs:complexType name="captureOriginType"> | <xs:complexType name="captureOriginType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="capturePoint" type="pointType"/> | <xs:element name="capturePoint" type="pointType"/> | |||
<xs:element name="lineOfCapturePoint" type="pointType" | <xs:element name="lineOfCapturePoint" type="pointType" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##any" processContents="lax"/> | <xs:anyAttribute namespace="##any" processContents="lax"/> | |||
skipping to change at page 25, line 4 ¶ | skipping to change at line 1044 ¶ | |||
</xs:complexType> | </xs:complexType> | |||
<!-- POINT TYPE --> | <!-- POINT TYPE --> | |||
<xs:complexType name="pointType"> | <xs:complexType name="pointType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="x" type="xs:decimal"/> | <xs:element name="x" type="xs:decimal"/> | |||
<xs:element name="y" type="xs:decimal"/> | <xs:element name="y" type="xs:decimal"/> | |||
<xs:element name="z" type="xs:decimal"/> | <xs:element name="z" type="xs:decimal"/> | |||
</xs:sequence> | </xs:sequence> | |||
</xs:complexType> | </xs:complexType> | |||
The point type contains three spatial coordinates (x,y,z) | The point type contains three spatial coordinates (x,y,z) | |||
representing a point in the space associated with a certain capture | representing a point in the space associated with a certain capture | |||
scene. | scene. | |||
The <captureOrigin> element includes a mandatory <capturePoint> | The <captureOrigin> element includes a mandatory <capturePoint> | |||
element and an optional <lineOfCapturePoint> element, both of the | element and an optional <lineOfCapturePoint> element, both of the | |||
type "pointType". <capturePoint> specifies the three coordinates | type "pointType". <capturePoint> specifies the three coordinates | |||
identifying the position of the capture device. <lineOfCapturePoint> | identifying the position of the capture device. <lineOfCapturePoint> | |||
is another pointType element representing the "point on line of | is another pointType element representing the "point on line of | |||
capture", that gives the pointing direction of the capture device. | capture", which gives the pointing direction of the capture device. | |||
The coordinates of the point on line of capture MUST NOT be identical | The coordinates of the point on line of capture MUST NOT be identical | |||
to the capture point coordinates. For a spatially definable video | to the capture point coordinates. For a spatially definable video | |||
capture, if the point on line of capture is provided, it MUST belong | capture, if the point on line of capture is provided, it MUST belong | |||
to the region between the point of capture and the capture area. For | to the region between the point of capture and the capture area. For | |||
a spatially definable audio capture, if the point on line of capture | a spatially definable audio capture, if the point on line of capture | |||
is not provided, the sensitivity pattern should be considered | is not provided, the sensitivity pattern should be considered | |||
omnidirectional. | omnidirectional. | |||
11.5.2. <captureArea> | 11.5.2. <captureArea> | |||
<captureArea> is an optional element that can be contained within the | <captureArea> is an optional element that can be contained within the | |||
spatial information associated with a media capture. It represents | spatial information associated with a media capture. It represents | |||
the spatial area captured by the media capture. <captureArea> MUST be | the spatial area captured by the media capture. <captureArea> MUST be | |||
included in the spatial information of spatially definable video | included in the spatial information of spatially definable video | |||
captures, while it MUST NOT be associated with audio captures. | captures, while it MUST NOT be associated with audio captures. | |||
The XML representation of that area is provided through a set of four | The XML representation of that area is provided through a set of four | |||
point-type elements, <bottomLeft>, <bottomRight>, <topLeft>, and | point-type elements, <bottomLeft>, <bottomRight>, <topLeft>, and | |||
<topRight> that MUST be co-planar. The four coplanar points are | <topRight>, that MUST be coplanar. The four coplanar points are | |||
identified from the perspective of the capture device. The XML | identified from the perspective of the capture device. The XML | |||
schema definition is the following: | schema definition is the following: | |||
<!-- CAPTURE AREA TYPE --> | <!-- CAPTURE AREA TYPE --> | |||
<xs:complexType name="captureAreaType"> | <xs:complexType name="captureAreaType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="bottomLeft" type="pointType"/> | <xs:element name="bottomLeft" type="pointType"/> | |||
<xs:element name="bottomRight" type="pointType"/> | <xs:element name="bottomRight" type="pointType"/> | |||
<xs:element name="topLeft" type="pointType"/> | <xs:element name="topLeft" type="pointType"/> | |||
<xs:element name="topRight" type="pointType"/> | <xs:element name="topRight" type="pointType"/> | |||
</xs:sequence> | </xs:sequence> | |||
</xs:complexType> | </xs:complexType> | |||
11.6. <nonSpatiallyDefinable> | 11.6. <nonSpatiallyDefinable> | |||
When media captures are non spatially definable, they MUST be marked | When media captures are non spatially definable, they MUST be marked | |||
with the boolean <nonSpatiallyDefinable> element set to "true" and no | with the boolean <nonSpatiallyDefinable> element set to "true", and | |||
<spatialInformation> MUST be provided. Indeed, | no <spatialInformation> MUST be provided. Indeed, | |||
<nonSpatiallyDefinable> and <spatialInformation> are mutually | <nonSpatiallyDefinable> and <spatialInformation> are mutually | |||
exclusive tags, according to the <choice> section within the XML | exclusive tags, according to the <choice> section within the XML | |||
Schema definition of the media capture type. | schema definition of the media capture type. | |||
11.7. <content> | 11.7. <content> | |||
A media capture can be (i) an individual media capture or (ii) a | A media capture can be (i) an individual media capture or (ii) an | |||
multiple content capture (MCC). A multiple content capture is made | MCC. An MCC is made by different captures that can be arranged | |||
by different captures that can be arranged spatially (by a | spatially (by a composition operation), or temporally (by a switching | |||
composition operation), or temporally (by a switching operation), or | operation), or that can result from the orchestration of both the | |||
that can result from the orchestration of both the techniques. If a | techniques. If a media capture is an MCC, then it MAY show in its | |||
media capture is an MCC, then it MAY show in its XML data model | XML data model representation the <content> element. It is composed | |||
representation the <content> element. It is composed by a list of | by a list of media capture identifiers ("mediaCaptureIDREF") and | |||
media capture identifiers ("mediaCaptureIDREF") and capture scene | capture scene view identifiers ("sceneViewIDREF"), where the latter | |||
view identifiers ("sceneViewIDREF"), where the latter ones are used | ones are used as shortcuts to refer to multiple capture identifiers. | |||
as shortcuts to refer to multiple capture identifiers. The | The referenced captures are used to create the MCC according to a | |||
referenced captures are used to create the MCC according to a certain | certain strategy. If the <content> element does not appear in an | |||
strategy. If the <content> element does not appear in a MCC, or it | MCC, or it has no child elements, then the MCC is assumed to be made | |||
has no child elements, then the MCC is assumed to be made of multiple | of multiple sources, but no information regarding those sources is | |||
sources but no information regarding those sources is provided. | provided. | |||
<!-- CONTENT TYPE --> | <!-- CONTENT TYPE --> | |||
<xs:complexType name="contentType"> | <xs:complexType name="contentType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="mediaCaptureIDREF" type="xs:IDREF" | <xs:element name="mediaCaptureIDREF" type="xs:string" | |||
minOccurs="0" maxOccurs="unbounded"/> | minOccurs="0" maxOccurs="unbounded"/> | |||
<xs:element name="sceneViewIDREF" type="xs:IDREF" | <xs:element name="sceneViewIDREF" type="xs:string" | |||
minOccurs="0" maxOccurs="unbounded"/> | minOccurs="0" maxOccurs="unbounded"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
11.8. <synchronizationID> | 11.8. <synchronizationID> | |||
<synchronizationID> is an optional element for multiple content | <synchronizationID> is an optional element for multiple content | |||
captures that contains a numeric identifier. Multiple content | captures that contains a numeric identifier. Multiple content | |||
captures marked with the same identifier in the <synchronizationID> | captures marked with the same identifier in the <synchronizationID> | |||
contain at all times captures coming from the same sources. It is | contain at all times captures coming from the same sources. It is | |||
the Media Provider that determines what the source for the captures | the Media Provider that determines what the source is for the | |||
is. In this way, the Media Provider can choose how to group together | captures. In this way, the Media Provider can choose how to group | |||
single captures for the purpose of keeping them synchronized | together single captures for the purpose of keeping them synchronized | |||
according to the <synchronizationID> element. | according to the <synchronizationID> element. | |||
11.9. <allowSubsetChoice> | 11.9. <allowSubsetChoice> | |||
<allowSubsetChoice> is an optional boolean element for multiple | <allowSubsetChoice> is an optional boolean element for multiple | |||
content captures. It indicates whether or not the Provider allows | content captures. It indicates whether or not the Provider allows | |||
the Consumer to choose a specific subset of the captures referenced | the Consumer to choose a specific subset of the captures referenced | |||
by the MCC. If this attribute is true, and the MCC references other | by the MCC. If this attribute is true, and the MCC references other | |||
captures, then the Consumer MAY specify in a CONFIGURE message a | captures, then the Consumer MAY specify in a CONFIGURE message a | |||
specific subset of those captures to be included in the MCC, and the | specific subset of those captures to be included in the MCC, and the | |||
skipping to change at page 27, line 42 ¶ | skipping to change at line 1170 ¶ | |||
etc.). The XML schema defining the type of the <policy> element is | etc.). The XML schema defining the type of the <policy> element is | |||
the following: | the following: | |||
<!-- POLICY TYPE --> | <!-- POLICY TYPE --> | |||
<xs:simpleType name="policyType"> | <xs:simpleType name="policyType"> | |||
<xs:restriction base="xs:string"> | <xs:restriction base="xs:string"> | |||
<xs:pattern value="([a-zA-Z0-9])+[:]([0-9])+"/> | <xs:pattern value="([a-zA-Z0-9])+[:]([0-9])+"/> | |||
</xs:restriction> | </xs:restriction> | |||
</xs:simpleType> | </xs:simpleType> | |||
At the time of writing, only two switching policies are defined in | At the time of writing, only two switching policies are defined; they | |||
[I-D.ietf-clue-framework]: | are in [RFC8845] as follows: | |||
SoundLevel: the content of the MCC is determined by a sound level | ||||
detection algorithm. The loudest (active) speaker (or a previous | ||||
speaker, depending on the index value) is contained in the MCC. | ||||
Index 0 represents the most current instance of the policy, i.e., | ||||
the currently active speaker, 1 represents the previous instance, | ||||
i.e., the previous active speaker, and so on. | ||||
RoundRobin: the content of the MCC is determined by a time based | | SoundLevel: This indicates that the content of the MCC is | |||
algorithm. | | determined by a sound-level-detection algorithm. The loudest | |||
| (active) speaker (or a previous speaker, depending on the index | ||||
| value) is contained in the MCC. | ||||
| | ||||
| RoundRobin: This indicates that the content of the MCC is | ||||
| determined by a time-based algorithm. For example, the | ||||
| Provider provides content from a particular source for a period | ||||
| of time and then provides content from another source, and so | ||||
| on. | ||||
Other values for the <policy> element can be used. In this case, it | Other values for the <policy> element can be used. In this case, it | |||
is assumed that implementations agree on the meaning of those other | is assumed that implementations agree on the meaning of those other | |||
values and/or those new switching policies are defined in later | values and/or those new switching policies are defined in later | |||
documents. | documents. | |||
11.11. <maxCaptures> | 11.11. <maxCaptures> | |||
<maxCaptures> is an optional element that can be used only for | <maxCaptures> is an optional element that can be used only for MCCs. | |||
multiple content captures (MCC). It provides information about the | It provides information about the number of media captures that can | |||
number of media captures that can be represented in the multiple | be represented in the multiple content capture at a time. If | |||
content capture at a time. If <maxCaptures> is not provided, all the | <maxCaptures> is not provided, all the media captures listed in the | |||
media captures listed in the <content> element can appear at a time | <content> element can appear at a time in the capture encoding. The | |||
in the capture encoding. The type definition is provided below. | type definition is provided below. | |||
<!-- MAX CAPTURES TYPE --> | <!-- MAX CAPTURES TYPE --> | |||
<xs:simpleType name="positiveShort"> | <xs:simpleType name="positiveShort"> | |||
<xs:restriction base="xs:unsignedShort"> | <xs:restriction base="xs:unsignedShort"> | |||
<xs:minInclusive value="1"> | <xs:minInclusive value="1"> | |||
</xs:minInclusive> | </xs:minInclusive> | |||
</xs:restriction> | </xs:restriction> | |||
</xs:simpleType> | </xs:simpleType> | |||
<xs:complexType name="maxCapturesType"> | <xs:complexType name="maxCapturesType"> | |||
skipping to change at page 29, line 12 ¶ | skipping to change at line 1232 ¶ | |||
single one of its constituent captures at a time. On the other hand, | single one of its constituent captures at a time. On the other hand, | |||
if the <maxCaptures> value is set to 4 and the exactNumber attribute | if the <maxCaptures> value is set to 4 and the exactNumber attribute | |||
is set to "true", it would mean that the media stream received from | is set to "true", it would mean that the media stream received from | |||
the MCC will always contain a mix of audio from exactly four of its | the MCC will always contain a mix of audio from exactly four of its | |||
constituent captures. | constituent captures. | |||
11.12. <individual> | 11.12. <individual> | |||
<individual> is a boolean element that MUST be used for single- | <individual> is a boolean element that MUST be used for single- | |||
content captures. Its value is fixed and set to "true". Such | content captures. Its value is fixed and set to "true". Such | |||
element indicates the capture that is being described is not a | element indicates the capture that is being described is not an MCC. | |||
multiple content capture. Indeed, <individual> and the | Indeed, <individual> and the aforementioned tags related to MCC | |||
aforementioned tags related to MCC attributes (from Section 11.7 to | attributes (from Sections 11.7 to 11.11) are mutually exclusive, | |||
Section 11.11) are mutually exclusive, according to the <choice> | according to the <choice> section within the XML schema definition of | |||
section within the XML Schema definition of the media capture type. | the media capture type. | |||
11.13. <description> | 11.13. <description> | |||
<description> is used to provide human-readable textual information. | <description> is used to provide human-readable textual information. | |||
This element is included in the XML definition of media captures, | This element is included in the XML definition of media captures, | |||
capture scenes and capture scene views to the aim of providing human- | capture scenes, and capture scene views to provide human-readable | |||
readable description of, respectively, media captures, capture scenes | descriptions of, respectively, media captures, capture scenes, and | |||
and capture scene views. According to the data model definition of a | capture scene views. According to the data model definition of a | |||
media capture (Section 11)), zero or more <description> elements can | media capture (Section 11)), zero or more <description> elements can | |||
be used, each providing information in a different language. The | be used, each providing information in a different language. The | |||
<description> element definition is the following: | <description> element definition is the following: | |||
<!-- DESCRIPTION element --> | <!-- DESCRIPTION element --> | |||
<xs:element name="description"> | <xs:element name="description"> | |||
<xs:complexType> | <xs:complexType> | |||
<xs:simpleContent> | <xs:simpleContent> | |||
<xs:extension base="xs:string"> | <xs:extension base="xs:string"> | |||
<xs:attribute name="lang" type="xs:language"/> | <xs:attribute name="lang" type="xs:language"/> | |||
skipping to change at page 30, line 24 ¶ | skipping to change at line 1289 ¶ | |||
description of a media capture. Each such element has to be | description of a media capture. Each such element has to be | |||
compliant with the Language-Tag ABNF production from [RFC5646]. | compliant with the Language-Tag ABNF production from [RFC5646]. | |||
11.16. <mobility> | 11.16. <mobility> | |||
<mobility> is an optional element indicating whether or not the | <mobility> is an optional element indicating whether or not the | |||
capture device originating the capture may move during the | capture device originating the capture may move during the | |||
telepresence session. That optional element can assume one of the | telepresence session. That optional element can assume one of the | |||
three following values: | three following values: | |||
static SHOULD NOT change for the duration of the CLUE session, | static: SHOULD NOT change for the duration of the CLUE session, | |||
across multiple ADVERTISEMENT messages. | across multiple ADVERTISEMENT messages. | |||
dynamic MAY change in each new ADVERTISEMENT message. Can be | dynamic: MAY change in each new ADVERTISEMENT message. Can be | |||
assumed to remain unchanged until there is a new ADVERTISEMENT | assumed to remain unchanged until there is a new ADVERTISEMENT | |||
message. | message. | |||
highly-dynamic MAY change dynamically, even between consecutive | highly-dynamic: MAY change dynamically, even between consecutive | |||
ADVERTISEMENT messages. The spatial information provided in an | ADVERTISEMENT messages. The spatial information provided in an | |||
ADVERTISEMENT message is simply a snapshot of the current values | ADVERTISEMENT message is simply a snapshot of the current | |||
at the time when the message is sent. | values at the time when the message is sent. | |||
11.17. <relatedTo> | 11.17. <relatedTo> | |||
The optional <relatedTo> element contains the value of the captureID | The optional <relatedTo> element contains the value of the captureID | |||
attribute (Section 11.1) of the media capture to which the considered | attribute (Section 11.1) of the media capture to which the considered | |||
media capture refers. The media capture marked with a <relatedTo> | media capture refers. The media capture marked with a <relatedTo> | |||
element can be for example the translation of the referred media | element can be, for example, the translation of the referred media | |||
capture in a different language. | capture in a different language. | |||
11.18. <view> | 11.18. <view> | |||
The <view> element is an optional tag describing what is represented | The <view> element is an optional tag describing what is represented | |||
in the spatial area covered by a media capture. It has been | in the spatial area covered by a media capture. It has been | |||
specified as a simple string with an annotation pointing to an ad hoc | specified as a simple string with an annotation pointing to an IANA | |||
defined IANA registry: | registry that is defined ad hoc: | |||
<!-- VIEW ELEMENT --> | <!-- VIEW ELEMENT --> | |||
<xs:element name="view" type="xs:string"> | <xs:element name="view" type="xs:string"> | |||
<xs:annotation> | <xs:annotation> | |||
<xs:documentation> | <xs:documentation> | |||
Acceptable values (enumerations) for this type are managed | Acceptable values (enumerations) for this type are managed | |||
by IANA in the "CLUE Schema <view> registry", | by IANA in the "CLUE Schema <view>" registry, | |||
accessible at TBD-IANA. | accessible at https://www.iana.org/assignments/clue. | |||
</xs:documentation> | </xs:documentation> | |||
</xs:annotation> | </xs:annotation> | |||
</xs:element> | </xs:element> | |||
The current possible values, as per the CLUE framework document | The current possible values, as per the CLUE framework document | |||
[I-D.ietf-clue-framework], are: "room", "table", "lectern", | [RFC8845], are: "room", "table", "lectern", "individual", and | |||
"individual", and "audience". | "audience". | |||
11.19. <presentation> | 11.19. <presentation> | |||
The <presentation> element is an optional tag used for media captures | The <presentation> element is an optional tag used for media captures | |||
conveying information about presentations within the telepresence | conveying information about presentations within the telepresence | |||
session. It has been specified as a simple string with an annotation | session. It has been specified as a simple string with an annotation | |||
pointing to an ad hoc defined IANA registry: | pointing to an IANA registry that is defined ad hoc: | |||
<!-- PRESENTATION ELEMENT --> | <!-- PRESENTATION ELEMENT --> | |||
<xs:element name="presentation" type="xs:string"> | <xs:element name="presentation" type="xs:string"> | |||
<xs:annotation> | <xs:annotation> | |||
<xs:documentation> | <xs:documentation> | |||
Acceptable values (enumerations) for this type are managed | Acceptable values (enumerations) for this type are managed | |||
by IANA in the "CLUE Schema <presentation> registry", | by IANA in the "CLUE Schema <presentation>" registry, | |||
accessible at TBD-IANA. | accessible at https://www.iana.org/assignments/clue. | |||
</xs:documentation> | </xs:documentation> | |||
</xs:annotation> | </xs:annotation> | |||
</xs:element> | </xs:element> | |||
The current possible values, as per the CLUE framework document | The current possible values, as per the CLUE framework document | |||
[I-D.ietf-clue-framework], are "slides" and "images". | [RFC8845], are "slides" and "images". | |||
11.20. <embeddedText> | 11.20. <embeddedText> | |||
The <embeddedText> element is a boolean element indicating that there | The <embeddedText> element is a boolean element indicating that there | |||
is text embedded in the media capture (e.g., in a video capture). | is text embedded in the media capture (e.g., in a video capture). | |||
The language used in such embedded textual description is reported in | The language used in such an embedded textual description is reported | |||
<embeddedText> "lang" attribute. | in the <embeddedText> "lang" attribute. | |||
The XML Schema definition of the <embeddedText> element is: | The XML schema definition of the <embeddedText> element is: | |||
<!-- EMBEDDED TEXT ELEMENT --> | <!-- EMBEDDED TEXT ELEMENT --> | |||
<xs:element name="embeddedText"> | <xs:element name="embeddedText"> | |||
<xs:complexType> | <xs:complexType> | |||
<xs:simpleContent> | <xs:simpleContent> | |||
<xs:extension base="xs:boolean"> | <xs:extension base="xs:boolean"> | |||
<xs:attribute name="lang" type="xs:language"/> | <xs:attribute name="lang" type="xs:language"/> | |||
</xs:extension> | </xs:extension> | |||
</xs:simpleContent> | </xs:simpleContent> | |||
</xs:complexType> | </xs:complexType> | |||
</xs:element> | </xs:element> | |||
11.21. <capturedPeople> | 11.21. <capturedPeople> | |||
This optional element is used to indicate which telepresence session | This optional element is used to indicate which telepresence session | |||
participants are represented within the media captures. For each | participants are represented in within the media captures. For each | |||
participant, a <personIDREF> element is provided. | participant, a <personIDREF> element is provided. | |||
11.21.1. <personIDREF> | 11.21.1. <personIDREF> | |||
<personIDREF> contains the identifier of the represented person, | <personIDREF> contains the identifier of the represented person, | |||
i.e., the value of the related personID attribute (Section 21.1.1). | i.e., the value of the related personID attribute (Section 21.1.1). | |||
Metadata about the represented participant can be retrieved by | Metadata about the represented participant can be retrieved by | |||
accessing the <people> list (Section 21). | accessing the <people> list (Section 21). | |||
12. Audio captures | 12. Audio Captures | |||
Audio captures inherit all the features of a generic media capture | Audio captures inherit all the features of a generic media capture | |||
and present further audio-specific characteristics. The XML Schema | and present further audio-specific characteristics. The XML schema | |||
definition of the audio capture type is reported below: | definition of the audio capture type is reported below: | |||
<!-- AUDIO CAPTURE TYPE --> | <!-- AUDIO CAPTURE TYPE --> | |||
<xs:complexType name="audioCaptureType"> | <xs:complexType name="audioCaptureType"> | |||
<xs:complexContent> | <xs:complexContent> | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element ref="sensitivityPattern" minOccurs="0" /> | <xs:element ref="sensitivityPattern" minOccurs="0" /> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
skipping to change at page 33, line 4 ¶ | skipping to change at line 1404 ¶ | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element ref="sensitivityPattern" minOccurs="0" /> | <xs:element ref="sensitivityPattern" minOccurs="0" /> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:extension> | </xs:extension> | |||
</xs:complexContent> | </xs:complexContent> | |||
</xs:complexType> | </xs:complexType> | |||
An example of audio-specific information that can be included is | An example of audio-specific information that can be included is | |||
represented by the <sensitivityPattern> element. (Section 12.1). | represented by the <sensitivityPattern> element (Section 12.1). | |||
12.1. <sensitivityPattern> | 12.1. <sensitivityPattern> | |||
The <sensitivityPattern> element is an optional field describing the | The <sensitivityPattern> element is an optional field describing the | |||
characteristics of the nominal sensitivity pattern of the microphone | characteristics of the nominal sensitivity pattern of the microphone | |||
capturing the audio signal. It has been specified as a simple string | capturing the audio signal. It has been specified as a simple string | |||
with an annotation pointing to an ad hoc defined IANA registry: | with an annotation pointing to an IANA registry that is defined ad | |||
hoc: | ||||
<!-- SENSITIVITY PATTERN ELEMENT --> | <!-- SENSITIVITY PATTERN ELEMENT --> | |||
<xs:element name="sensitivityPattern" type="xs:string"> | <xs:element name="sensitivityPattern" type="xs:string"> | |||
<xs:annotation> | <xs:annotation> | |||
<xs:documentation> | <xs:documentation> | |||
Acceptable values (enumerations) for this type are managed by IANA | Acceptable values (enumerations) for this type are managed by | |||
in the "CLUE Schema <sensitivityPattern> registry", accessible | IANA in the "CLUE Schema <sensitivityPattern>" registry, | |||
at TBD-IANA. | accessible at https://www.iana.org/assignments/clue. | |||
</xs:documentation> | </xs:documentation> | |||
</xs:annotation> | </xs:annotation> | |||
</xs:element> | </xs:element> | |||
The current possible values, as per the CLUE framework document | The current possible values, as per the CLUE framework document | |||
[I-D.ietf-clue-framework], are "uni", "shotgun", "omni", "figure8", | [RFC8845], are "uni", "shotgun", "omni", "figure8", "cardioid", and | |||
"cardioid" and "hyper-cardioid". | "hyper-cardioid". | |||
13. Video captures | 13. Video Captures | |||
Video captures, similarly to audio captures, extend the information | Video captures, similarly to audio captures, extend the information | |||
of a generic media capture with video-specific features. | of a generic media capture with video-specific features. | |||
The XML Schema representation of the video capture type is provided | The XML schema representation of the video capture type is provided | |||
in the following: | in the following: | |||
<!-- VIDEO CAPTURE TYPE --> | <!-- VIDEO CAPTURE TYPE --> | |||
<xs:complexType name="videoCaptureType"> | <xs:complexType name="videoCaptureType"> | |||
<xs:complexContent> | <xs:complexContent> | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
skipping to change at page 34, line 4 ¶ | skipping to change at line 1449 ¶ | |||
<!-- VIDEO CAPTURE TYPE --> | <!-- VIDEO CAPTURE TYPE --> | |||
<xs:complexType name="videoCaptureType"> | <xs:complexType name="videoCaptureType"> | |||
<xs:complexContent> | <xs:complexContent> | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:extension> | </xs:extension> | |||
</xs:complexContent> | </xs:complexContent> | |||
</xs:complexType> | </xs:complexType> | |||
14. Text captures | 14. Text Captures | |||
Also text captures can be described by extending the generic media | Similar to audio captures and video captures, text captures can be | |||
capture information, similarly to audio captures and video captures. | described by extending the generic media capture information. | |||
There are no known properties of a text-based media which aren't | There are no known properties of a text-based media that aren't | |||
already covered by the generic mediaCaptureType. Text captures are | already covered by the generic mediaCaptureType. Text captures are | |||
hence defined as follows: | hence defined as follows: | |||
<!-- TEXT CAPTURE TYPE --> | <!-- TEXT CAPTURE TYPE --> | |||
<xs:complexType name="textCaptureType"> | <xs:complexType name="textCaptureType"> | |||
<xs:complexContent> | <xs:complexContent> | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:extension> | </xs:extension> | |||
</xs:complexContent> | </xs:complexContent> | |||
</xs:complexType> | </xs:complexType> | |||
Text captures MUST be marked as non spatially definable (i.e., they | Text captures MUST be marked as non spatially definable (i.e., they | |||
MUST present in their XML description the <nonSpatiallyDefinable> | MUST present in their XML description the <nonSpatiallyDefinable> | |||
(Section 11.6) element set to "true"). | (Section 11.6) element set to "true"). | |||
15. Other capture types | 15. Other Capture Types | |||
Other media capture types can be described by using the CLUE data | Other media capture types can be described by using the CLUE data | |||
model. They can be represented by exploiting the "otherCaptureType" | model. They can be represented by exploiting the "otherCaptureType" | |||
type. This media capture type is conceived to be filled in with | type. This media capture type is conceived to be filled in with | |||
elements defined within extensions of the current schema, i.e., with | elements defined within extensions of the current schema, i.e., with | |||
elements defined in other XML schemas (see Section 24 for an | elements defined in other XML schemas (see Section 24 for an | |||
example). The otherCaptureType inherits all the features envisioned | example). The otherCaptureType inherits all the features envisioned | |||
for the abstract mediaCaptureType. | for the abstract mediaCaptureType. | |||
The XML Schema representation of the otherCaptureType is the | The XML schema representation of the otherCaptureType is the | |||
following: | following: | |||
<!-- OTHER CAPTURE TYPE --> | <!-- OTHER CAPTURE TYPE --> | |||
<xs:complexType name="otherCaptureType"> | <xs:complexType name="otherCaptureType"> | |||
<xs:complexContent> | <xs:complexContent> | |||
<xs:extension base="tns:mediaCaptureType"> | <xs:extension base="tns:mediaCaptureType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:extension> | </xs:extension> | |||
</xs:complexContent> | </xs:complexContent> | |||
</xs:complexType> | </xs:complexType> | |||
When defining new media capture types that are going to be described | When defining new media capture types that are going to be described | |||
by means of the <otherMediaCapture> element, spatial properties of | by means of the <otherMediaCapture> element, spatial properties of | |||
such new media capture types SHOULD be defined (e.g., whether or not | such new media capture types SHOULD be defined (e.g., whether or not | |||
they are spatially definable, whether or not they should be | they are spatially definable and whether or not they should be | |||
associated with an area of capture, or other properties that may be | associated with an area of capture or other properties that may be | |||
defined). | defined). | |||
16. <captureScene> | 16. <captureScene> | |||
A Media Provider organizes the available captures in capture scenes | A Media Provider organizes the available captures in capture scenes | |||
in order to help the receiver both in the rendering and in the | in order to help the receiver in both the rendering and the selection | |||
selection of the group of captures. Capture scenes are made of media | of the group of captures. Capture scenes are made of media captures | |||
captures and capture scene views, that are sets of media captures of | and capture scene views, which are sets of media captures of the same | |||
the same media type. Each capture scene view is an alternative to | media type. Each capture scene view is an alternative to completely | |||
represent completely a capture scene for a fixed media type. | represent a capture scene for a fixed media type. | |||
The XML Schema representation of a <captureScene> element is the | The XML schema representation of a <captureScene> element is the | |||
following: | following: | |||
<!-- CAPTURE SCENE TYPE --> | <!-- CAPTURE SCENE TYPE --> | |||
<xs:complexType name="captureSceneType"> | <xs:complexType name="captureSceneType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | <xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | |||
<xs:element name="sceneInformation" type="xcard:vcardType" | <xs:element name="sceneInformation" type="xcard:vcardType" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
<xs:element name="sceneViews" type="sceneViewsType" minOccurs="0"/> | <xs:element name="sceneViews" type="sceneViewsType" minOccurs="0"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="sceneID" type="xs:ID" use="required"/> | <xs:attribute name="sceneID" type="xs:ID" use="required"/> | |||
<xs:attribute name="scale" type="scaleType" use="required"/> | <xs:attribute name="scale" type="scaleType" use="required"/> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
Each capture scene is identified by a "sceneID" attribute. The | Each capture scene is identified by a "sceneID" attribute. The | |||
<captureScene> element can contain zero or more textual <description> | <captureScene> element can contain zero or more textual <description> | |||
elements, defined as in Section 11.13. Besides <description>, there | elements, as defined in Section 11.13. Besides <description>, there | |||
is the optional <sceneInformation> element (Section 16.1), which | is the optional <sceneInformation> element (Section 16.1), which | |||
contains structured information about the scene in the vcard format, | contains structured information about the scene in the vCard format, | |||
and the optional <sceneViews> element (Section 16.2), which is the | and the optional <sceneViews> element (Section 16.2), which is the | |||
list of the capture scene views. When no <sceneViews> is provided, | list of the capture scene views. When no <sceneViews> is provided, | |||
the capture scene is assumed to be made of all the media captures | the capture scene is assumed to be made of all the media captures | |||
which contain the value of its sceneID attribute in their mandatory | that contain the value of its sceneID attribute in their mandatory | |||
captureSceneIDREF attribute. | captureSceneIDREF attribute. | |||
16.1. <sceneInformation> | 16.1. <sceneInformation> | |||
The <sceneInformation> element contains optional information about | The <sceneInformation> element contains optional information about | |||
the capture scene according to the vcard format, as specified in the | the capture scene according to the vCard format, as specified in the | |||
Xcard RFC [RFC6351]. | xCard specification [RFC6351]. | |||
16.2. <sceneViews> | 16.2. <sceneViews> | |||
The <sceneViews> element is a mandatory field of a capture scene | The <sceneViews> element is a mandatory field of a capture scene | |||
containing the list of scene views. Each scene view is represented | containing the list of scene views. Each scene view is represented | |||
by a <sceneView> element (Section 17). | by a <sceneView> element (Section 17). | |||
<!-- SCENE VIEWS TYPE --> | <!-- SCENE VIEWS TYPE --> | |||
<!-- envelope of scene views of a capture scene --> | <!-- envelope of scene views of a capture scene --> | |||
<xs:complexType name="sceneViewsType"> | <xs:complexType name="sceneViewsType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="sceneView" type="sceneViewType" | <xs:element name="sceneView" type="sceneViewType" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
</xs:complexType> | </xs:complexType> | |||
16.3. sceneID attribute | 16.3. sceneID Attribute | |||
The sceneID attribute is a mandatory attribute containing the | The sceneID attribute is a mandatory attribute containing the | |||
identifier of the capture scene. | identifier of the capture scene. | |||
16.4. scale attribute | 16.4. scale Attribute | |||
The scale attribute is a mandatory attribute that specifies the scale | The scale attribute is a mandatory attribute that specifies the scale | |||
of the coordinates provided in the spatial information of the media | of the coordinates provided in the spatial information of the media | |||
capture belonging to the considered capture scene. The scale | capture belonging to the considered capture scene. The scale | |||
attribute can assume three different values: | attribute can assume three different values: | |||
"mm" - the scale is in millimeters. Systems which know their | "mm": the scale is in millimeters. Systems that know their | |||
physical dimensions (for example professionally installed | physical dimensions (for example, professionally installed | |||
telepresence room systems) should always provide such real-world | telepresence room systems) should always provide such real- | |||
measurements. | world measurements. | |||
"unknown" - the scale is the same for every media capture in the | "unknown": the scale is the same for every media capture in the | |||
capture scene but the unity of measure is undefined. Systems | capture scene, but the unity of measure is undefined. Systems | |||
which are not aware of specific physical dimensions yet still know | that are not aware of specific physical dimensions yet still | |||
relative distances should select "unknown" in the scale attribute | know relative distances should select "unknown" in the scale | |||
of the capture scene to be described. | attribute of the capture scene to be described. | |||
"noscale" - there is no common physical scale among the media | "noscale": there is no common physical scale among the media | |||
captures of the capture scene. That means the scale could be | captures of the capture scene. That means the scale could be | |||
different for each media capture. | different for each media capture. | |||
<!-- SCALE TYPE --> | <!-- SCALE TYPE --> | |||
<xs:simpleType name="scaleType"> | <xs:simpleType name="scaleType"> | |||
<xs:restriction base="xs:string"> | <xs:restriction base="xs:string"> | |||
<xs:enumeration value="mm"/> | <xs:enumeration value="mm"/> | |||
<xs:enumeration value="unknown"/> | <xs:enumeration value="unknown"/> | |||
<xs:enumeration value="noscale"/> | <xs:enumeration value="noscale"/> | |||
</xs:restriction> | </xs:restriction> | |||
</xs:simpleType> | </xs:simpleType> | |||
skipping to change at page 38, line 4 ¶ | skipping to change at line 1622 ¶ | |||
A <sceneView> element is characterized as follows. | A <sceneView> element is characterized as follows. | |||
<!-- SCENE VIEW TYPE --> | <!-- SCENE VIEW TYPE --> | |||
<xs:complexType name="sceneViewType"> | <xs:complexType name="sceneViewType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | <xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/> | |||
<xs:element name="mediaCaptureIDs" type="captureIDListType"/> | <xs:element name="mediaCaptureIDs" type="captureIDListType"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="sceneViewID" type="xs:ID" use="required"/> | <xs:attribute name="sceneViewID" type="xs:ID" use="required"/> | |||
</xs:complexType> | </xs:complexType> | |||
One or more optional <description> elements provide human-readable | One or more optional <description> elements provide human-readable | |||
information about what the scene view contains. <description> is | information about what the scene view contains. <description> is | |||
defined as already seen in Section 11.13. | defined in Section 11.13. | |||
The remaining child elements are described in the following | The remaining child elements are described in the following | |||
subsections. | subsections. | |||
17.1. <mediaCaptureIDs> | 17.1. <mediaCaptureIDs> | |||
The <mediaCaptureIDs> is the list of the identifiers of the media | <mediaCaptureIDs> is the list of the identifiers of the media | |||
captures included in the scene view. It is an element of the | captures included in the scene view. It is an element of the | |||
captureIDListType type, which is defined as a sequence of | captureIDListType type, which is defined as a sequence of | |||
<mediaCaptureIDREF>, each containing the identifier of a media | <mediaCaptureIDREF>, each containing the identifier of a media | |||
capture listed within the <mediaCaptures> element: | capture listed within the <mediaCaptures> element: | |||
<!-- CAPTURE ID LIST TYPE --> | <!-- CAPTURE ID LIST TYPE --> | |||
<xs:complexType name="captureIDListType"> | <xs:complexType name="captureIDListType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="mediaCaptureIDREF" type="xs:IDREF" | <xs:element name="mediaCaptureIDREF" type="xs:IDREF" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
</xs:complexType> | </xs:complexType> | |||
17.2. sceneViewID attribute | 17.2. sceneViewID Attribute | |||
The sceneViewID attribute is a mandatory attribute containing the | The sceneViewID attribute is a mandatory attribute containing the | |||
identifier of the capture scene view represented by the <sceneView> | identifier of the capture scene view represented by the <sceneView> | |||
element. | element. | |||
18. <encodingGroup> | 18. <encodingGroup> | |||
The <encodingGroup> element represents an encoding group, which is | The <encodingGroup> element represents an encoding group, which is | |||
made by a set of one or more individual encodings and some parameters | made by a set of one or more individual encodings and some parameters | |||
that apply to the group as a whole. Encoding groups contain | that apply to the group as a whole. Encoding groups contain | |||
skipping to change at page 39, line 17 ¶ | skipping to change at line 1673 ¶ | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="maxGroupBandwidth" type="xs:unsignedLong"/> | <xs:element name="maxGroupBandwidth" type="xs:unsignedLong"/> | |||
<xs:element name="encodingIDList" type="encodingIDListType"/> | <xs:element name="encodingIDList" type="encodingIDListType"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="encodingGroupID" type="xs:ID" use="required"/> | <xs:attribute name="encodingGroupID" type="xs:ID" use="required"/> | |||
<xs:anyAttribute namespace="##any" processContents="lax"/> | <xs:anyAttribute namespace="##any" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
In the following, the contained elements are further described. | In the following subsections, the contained elements are further | |||
described. | ||||
18.1. <maxGroupBandwidth> | 18.1. <maxGroupBandwidth> | |||
<maxGroupBandwidth> is an optional field containing the maximum | <maxGroupBandwidth> is an optional field containing the maximum | |||
bitrate expressed in bits per second that can be shared by the | bitrate expressed in bits per second that can be shared by the | |||
individual encodings included in the encoding group. | individual encodings included in the encoding group. | |||
18.2. <encodingIDList> | 18.2. <encodingIDList> | |||
<encodingIDList> is the list of the individual encodings grouped | <encodingIDList> is the list of the individual encodings grouped | |||
together in the encoding group. Each individual encoding is | together in the encoding group. Each individual encoding is | |||
represented through its identifier contained within an <encodingID> | represented through its identifier contained within an <encodingID> | |||
element. | element. | |||
<!-- ENCODING ID LIST TYPE --> | <!-- ENCODING ID LIST TYPE --> | |||
<xs:complexType name="encodingIDListType"> | <xs:complexType name="encodingIDListType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="encodingID" type="xs:string" maxOccurs="unbounded"/> | <xs:element name="encodingID" type="xs:string" | |||
</xs:sequence> | maxOccurs="unbounded"/> | |||
</xs:complexType> | </xs:sequence> | |||
</xs:complexType> | ||||
18.3. encodingGroupID attribute | 18.3. encodingGroupID Attribute | |||
The encodingGroupID attribute contains the identifier of the encoding | The encodingGroupID attribute contains the identifier of the encoding | |||
group. | group. | |||
19. <simultaneousSet> | 19. <simultaneousSet> | |||
<simultaneousSet> represents a simultaneous transmission set, i.e., a | <simultaneousSet> represents a simultaneous transmission set, i.e., a | |||
list of captures of the same media type that can be transmitted at | list of captures of the same media type that can be transmitted at | |||
the same time by a Media Provider. There are different simultaneous | the same time by a Media Provider. There are different simultaneous | |||
transmission sets for each media type. | transmission sets for each media type. | |||
skipping to change at page 40, line 24 ¶ | skipping to change at line 1727 ¶ | |||
minOccurs="0" maxOccurs="unbounded"/> | minOccurs="0" maxOccurs="unbounded"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="setID" type="xs:ID" use="required"/> | <xs:attribute name="setID" type="xs:ID" use="required"/> | |||
<xs:attribute name="mediaType" type="xs:string"/> | <xs:attribute name="mediaType" type="xs:string"/> | |||
<xs:anyAttribute namespace="##any" processContents="lax"/> | <xs:anyAttribute namespace="##any" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
Besides the identifiers of the captures (<mediaCaptureIDREF> | Besides the identifiers of the captures (<mediaCaptureIDREF> | |||
elements), also the identifiers of capture scene views and of capture | elements), the identifiers of capture scene views and capture scenes | |||
scene can be exploited as shortcuts (<sceneViewIDREF> and | can also be exploited as shortcuts (<sceneViewIDREF> and | |||
<captureSceneIDREF> elements). As an example, let's consider the | <captureSceneIDREF> elements). As an example, let's consider the | |||
situation where there are two capture scene views (S1 and S7). S1 | situation where there are two capture scene views (S1 and S7). S1 | |||
contains captures AC11, AC12, AC13. S7 contains captures AC71, AC72. | contains captures AC11, AC12, and AC13. S7 contains captures AC71 | |||
Provided that AC11, AC12, AC13, AC71, AC72 can be simultaneously sent | and AC72. Provided that AC11, AC12, AC13, AC71, and AC72 can be | |||
to the media consumer, instead of having 5 <mediaCaptureIDREF> | simultaneously sent to the Media Consumer, instead of having 5 | |||
elements listed in the simultaneous set (i.e., one | <mediaCaptureIDREF> elements listed in the simultaneous set (i.e., | |||
<mediaCaptureIDREF> for AC11, one for AC12, and so on), there can be | one <mediaCaptureIDREF> for AC11, one for AC12, and so on), there can | |||
just two <sceneViewIDREF> elements (one for S1 and one for S7). | be just two <sceneViewIDREF> elements (one for S1 and one for S7). | |||
19.1. setID attribute | 19.1. setID Attribute | |||
The "setID" attribute is a mandatory field containing the identifier | The "setID" attribute is a mandatory field containing the identifier | |||
of the simultaneous set. | of the simultaneous set. | |||
19.2. mediaType attribute | 19.2. mediaType Attribute | |||
The "mediaType" attribute is an optional attribute containing the | The "mediaType" attribute is an optional attribute containing the | |||
media type of the captures referenced by the simultaneous set. | media type of the captures referenced by the simultaneous set. | |||
When only capture scene identifiers are listed within a simultaneous | When only capture scene identifiers are listed within a simultaneous | |||
set, the media type attribute MUST appear in the XML description in | set, the media type attribute MUST appear in the XML description in | |||
order to determine which media captures can be simultaneously sent | order to determine which media captures can be simultaneously sent | |||
together. | together. | |||
19.3. <mediaCaptureIDREF> | 19.3. <mediaCaptureIDREF> | |||
skipping to change at page 41, line 46 ¶ | skipping to change at line 1794 ¶ | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="globalViewID" type="xs:ID"/> | <xs:attribute name="globalViewID" type="xs:ID"/> | |||
<xs:anyAttribute namespace="##any" processContents="lax"/> | <xs:anyAttribute namespace="##any" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
21. <people> | 21. <people> | |||
Information about the participants that are represented in the media | Information about the participants that are represented in the media | |||
captures is conveyed via the <people> element. As it can be seen | captures is conveyed via the <people> element. As it can be seen | |||
from the XML Schema depicted below, for each participant, a <person> | from the XML schema depicted below, for each participant, a <person> | |||
element is provided. | element is provided. | |||
<!-- PEOPLE TYPE --> | <!-- PEOPLE TYPE --> | |||
<xs:complexType name="peopleType"> | <xs:complexType name="peopleType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="person" type="personType" maxOccurs="unbounded"/> | <xs:element name="person" type="personType" maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
</xs:complexType> | </xs:complexType> | |||
21.1. <person> | 21.1. <person> | |||
<person> includes all the metadata related to a person represented | <person> includes all the metadata related to a person represented | |||
within one or more media captures. Such element provides the vcard | within one or more media captures. Such element provides the vCard | |||
of the subject (via the <personInfo> element, see Section 21.1.2) and | of the subject (via the <personInfo> element; see Section 21.1.2) and | |||
his conference role(s) (via one or more <personType> elements, see | its conference role(s) (via one or more <personType> elements; see | |||
Section 21.1.3). Furthermore, it has a mandatory "personID" | Section 21.1.3). Furthermore, it has a mandatory "personID" | |||
attribute (Section 21.1.1). | attribute (Section 21.1.1). | |||
<!-- PERSON TYPE --> | <!-- PERSON TYPE --> | |||
<xs:complexType name="personType"> | <xs:complexType name="personType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="personInfo" type="xcard:vcardType" maxOccurs="1" | <xs:element name="personInfo" type="xcard:vcardType" maxOccurs="1" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
<xs:element ref="personType" minOccurs="0" maxOccurs="unbounded" /> | <xs:element ref="personType" minOccurs="0" maxOccurs="unbounded" /> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="personID" type="xs:ID" use="required"/> | <xs:attribute name="personID" type="xs:ID" use="required"/> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
21.1.1. personID attribute | 21.1.1. personID Attribute | |||
The "personID" attribute carries the identifier of a represented | The "personID" attribute carries the identifier of a represented | |||
person. Such an identifier can be used to refer to the participant, | person. Such an identifier can be used to refer to the participant, | |||
as in the <capturedPeople> element in the media captures | as in the <capturedPeople> element in the media captures | |||
representation (Section 11.21). | representation (Section 11.21). | |||
21.1.2. <personInfo> | 21.1.2. <personInfo> | |||
The <personInfo> element is the XML representation of all the fields | The <personInfo> element is the XML representation of all the fields | |||
composing a vcard as specified in the Xcard RFC [RFC6351]. The | composing a vCard as specified in the xCard document [RFC6351]. The | |||
vcardType is imported by the Xcard XML Schema provided in Appendix A | vcardType is imported by the xCard XML schema provided in Appendix A | |||
of [I-D.ietf-ecrit-additional-data]. As such schema specifies, the | of [RFC7852]. As such schema specifies, the <fn> element within | |||
<fn> element within <vcard> is mandatory. | <vcard> is mandatory. | |||
21.1.3. <personType> | 21.1.3. <personType> | |||
The value of the <personType> element determines the role of the | The value of the <personType> element determines the role of the | |||
represented participant within the telepresence session organization. | represented participant within the telepresence session organization. | |||
It has been specified as a simple string with an annotation pointing | It has been specified as a simple string with an annotation pointing | |||
to an ad hoc defined IANA registry: | to an IANA registry that is defined ad hoc: | |||
<!-- PERSON TYPE ELEMENT --> | <!-- PERSON TYPE ELEMENT --> | |||
<xs:element name="personType" type="xs:string"> | <xs:element name="personType" type="xs:string"> | |||
<xs:annotation> | <xs:annotation> | |||
<xs:documentation> | <xs:documentation> | |||
Acceptable values (enumerations) for this type are managed | Acceptable values (enumerations) for this type are managed | |||
by IANA in the "CLUE Schema <personType> registry", | by IANA in the "CLUE Schema <personType>" registry, | |||
accessible at TBD-IANA. | accessible at https://www.iana.org/assignments/clue. | |||
</xs:documentation> | </xs:documentation> | |||
</xs:annotation> | </xs:annotation> | |||
</xs:element> | </xs:element> | |||
The current possible values, as per the CLUE framework document | The current possible values, as per the CLUE framework document | |||
[I-D.ietf-clue-framework], are: "presenter", "timekeeper", | [RFC8845], are: "presenter", "timekeeper", "attendee", "minute | |||
"attendee", "minute taker", "translator", "chairman", "vice- | taker", "translator", "chairman", "vice-chairman", and "observer". | |||
chairman", "observer". | ||||
A participant can play more than one conference role. In that case, | A participant can play more than one conference role. In that case, | |||
more than one <personType> element will appear in his description. | more than one <personType> element will appear in its description. | |||
22. <captureEncoding> | 22. <captureEncoding> | |||
A capture encoding is given from the association of a media capture | A capture encoding is given from the association of a media capture | |||
with an individual encoding, to form a capture stream as defined in | with an individual encoding, to form a capture stream as defined in | |||
[I-D.ietf-clue-framework]. Capture encodings are used within | [RFC8845]. Capture encodings are used within CONFIGURE messages from | |||
CONFIGURE messages from a Media Consumer to a Media Provider for | a Media Consumer to a Media Provider for representing the streams | |||
representing the streams desired by the Media Consumer. For each | desired by the Media Consumer. For each desired stream, the Media | |||
desired stream, the Media Consumer needs to be allowed to specify: | Consumer needs to be allowed to specify: (i) the capture identifier | |||
(i) the capture identifier of the desired capture that has been | of the desired capture that has been advertised by the Media | |||
advertised by the Media Provider; (ii) the encoding identifier of the | Provider; (ii) the encoding identifier of the encoding to use, among | |||
encoding to use, among those advertised by the Media Provider; (iii) | those advertised by the Media Provider; and (iii) optionally, in case | |||
optionally, in case of multi-content captures, the list of the | of multicontent captures, the list of the capture identifiers of the | |||
capture identifiers of the desired captures. All the mentioned | desired captures. All the mentioned identifiers are intended to be | |||
identifiers are intended to be included in the ADVERTISEMENT message | included in the ADVERTISEMENT message that the CONFIGURE message | |||
that the CONFIGURE message refers to. The XML model of | refers to. The XML model of <captureEncoding> is provided in the | |||
<captureEncoding> is provided in the following. | following. | |||
<!-- CAPTURE ENCODING TYPE --> | <!-- CAPTURE ENCODING TYPE --> | |||
<xs:complexType name="captureEncodingType"> | <xs:complexType name="captureEncodingType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element name="captureID" type="xs:string"/> | <xs:element name="captureID" type="xs:string"/> | |||
<xs:element name="encodingID" type="xs:string"/> | <xs:element name="encodingID" type="xs:string"/> | |||
<xs:element name="configuredContent" type="contentType" | <xs:element name="configuredContent" type="contentType" | |||
minOccurs="0"/> | minOccurs="0"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
skipping to change at page 44, line 31 ¶ | skipping to change at line 1909 ¶ | |||
<captureID> is the mandatory element containing the identifier of the | <captureID> is the mandatory element containing the identifier of the | |||
media capture that has been encoded to form the capture encoding. | media capture that has been encoded to form the capture encoding. | |||
22.2. <encodingID> | 22.2. <encodingID> | |||
<encodingID> is the mandatory element containing the identifier of | <encodingID> is the mandatory element containing the identifier of | |||
the applied individual encoding. | the applied individual encoding. | |||
22.3. <configuredContent> | 22.3. <configuredContent> | |||
<configuredContent> is an optional element to be used in case of | <configuredContent> is an optional element to be used in case of the | |||
configuration of MCC. It contains the list of capture identifiers | configuration of MCC. It contains the list of capture identifiers | |||
and capture scene view identifiers the Media Consumer wants within | and capture scene view identifiers the Media Consumer wants within | |||
the MCC. That element is structured as the <content> element used to | the MCC. That element is structured as the <content> element used to | |||
describe the content of an MCC. The total number of media captures | describe the content of an MCC. The total number of media captures | |||
listed in the <configuredContent> MUST be lower than or equal to the | listed in the <configuredContent> MUST be lower than or equal to the | |||
value carried within the <maxCaptures> attribute of the MCC. | value carried within the <maxCaptures> attribute of the MCC. | |||
23. <clueInfo> | 23. <clueInfo> | |||
The <clueInfo> element includes all the information needed to | The <clueInfo> element includes all the information needed to | |||
represent the Media Provider's description of its telepresence | represent the Media Provider's description of its telepresence | |||
capabilities according to the CLUE framework. Indeed, it is made by: | capabilities according to the CLUE framework. Indeed, it is made by: | |||
the list of the available media captures (<mediaCaptures> | * the list of the available media captures (see "<mediaCaptures>", | |||
(Section 5)) | Section 5) | |||
the list of encoding groups (<encodingGroups> (Section 6)) | * the list of encoding groups (see "<encodingGroups>", Section 6) | |||
the list of capture scenes (<captureScenes> (Section 7)) | ||||
the list of simultaneous transmission sets (<simultaneousSets> | * the list of capture scenes (see "<captureScenes>", Section 7) | |||
(Section 8)) | ||||
the list of global views sets (<globalViews> (Section 9)) | * the list of simultaneous transmission sets (see | |||
"<simultaneousSets>", Section 8) | ||||
meta data about the participants represented in the telepresence | * the list of global views sets (see "<globalViews>", Section 9) | |||
session (<people> (Section 21)) | ||||
It has been conceived only for data model testing purposes and, | * metadata about the participants represented in the telepresence | |||
session (see "<people>", Section 21) | ||||
It has been conceived only for data model testing purposes, and | ||||
though it resembles the body of an ADVERTISEMENT message, it is not | though it resembles the body of an ADVERTISEMENT message, it is not | |||
actually used in the CLUE protocol message definitions. The | actually used in the CLUE protocol message definitions. The | |||
telepresence capabilities descriptions compliant to this data model | telepresence capabilities descriptions compliant to this data model | |||
specification that can be found in Section 27 and Section 28 are | specification that can be found in Sections 27 and 28 are provided by | |||
provided by using the <clueInfo> element. | using the <clueInfo> element. | |||
<!-- CLUE INFO TYPE --> | <!-- CLUE INFO TYPE --> | |||
<xs:complexType name="clueInfoType"> | <xs:complexType name="clueInfoType"> | |||
<xs:sequence> | <xs:sequence> | |||
<xs:element ref="mediaCaptures"/> | <xs:element ref="mediaCaptures"/> | |||
<xs:element ref="encodingGroups"/> | <xs:element ref="encodingGroups"/> | |||
<xs:element ref="captureScenes"/> | <xs:element ref="captureScenes"/> | |||
<xs:element ref="simultaneousSets" minOccurs="0"/> | <xs:element ref="simultaneousSets" minOccurs="0"/> | |||
<xs:element ref="globalViews" minOccurs="0"/> | <xs:element ref="globalViews" minOccurs="0"/> | |||
<xs:element ref="people" minOccurs="0"/> | <xs:element ref="people" minOccurs="0"/> | |||
<xs:any namespace="##other" processContents="lax" minOccurs="0" | <xs:any namespace="##other" processContents="lax" minOccurs="0" | |||
maxOccurs="unbounded"/> | maxOccurs="unbounded"/> | |||
</xs:sequence> | </xs:sequence> | |||
<xs:attribute name="clueInfoID" type="xs:ID" use="required"/> | <xs:attribute name="clueInfoID" type="xs:ID" use="required"/> | |||
<xs:anyAttribute namespace="##other" processContents="lax"/> | <xs:anyAttribute namespace="##other" processContents="lax"/> | |||
</xs:complexType> | </xs:complexType> | |||
24. XML Schema extensibility | 24. XML Schema Extensibility | |||
The telepresence data model defined in this document is meant to be | The telepresence data model defined in this document is meant to be | |||
extensible. Extensions are accomplished by defining elements or | extensible. Extensions are accomplished by defining elements or | |||
attributes qualified by namespaces other than | attributes qualified by namespaces other than | |||
"urn:ietf:params:xml:ns:clue-info" and | "urn:ietf:params:xml:ns:clue-info" and "urn:ietf:params:xml:ns:vcard- | |||
"urn:ietf:params:xml:ns:vcard-4.0" for use wherever the schema allows | 4.0" for use wherever the schema allows such extensions (i.e., where | |||
such extensions (i.e., where the XML Schema definition specifies | the XML schema definition specifies "anyAttribute" or "anyElement"). | |||
"anyAttribute" or "anyElement"). Elements or attributes from unknown | Elements or attributes from unknown namespaces MUST be ignored. | |||
namespaces MUST be ignored. Extensibility was purposefully favored | Extensibility was purposefully favored as much as possible based on | |||
as much as possible based on expectations about custom | expectations about custom implementations. Hence, the schema offers | |||
implementations. Hence, the schema offers people enough flexibility | people enough flexibility as to define custom extensions, without | |||
as to define custom extensions, without losing compliance with the | losing compliance with the standard. This is achieved by leveraging | |||
standard. This is achieved by leveraging <xs:any> elements and <xs: | <xs:any> elements and <xs:anyAttribute> attributes, which is a common | |||
anyAttribute> attributes, which is a common approach with schemas, | approach with schemas, while still matching the Unique Particle | |||
still matching the UPA (Unique Particle Attribution) constraint. | Attribution (UPA) constraint. | |||
24.1. Example of extension | 24.1. Example of Extension | |||
When extending the CLUE data model, a new schema with a new namespace | When extending the CLUE data model, a new schema with a new namespace | |||
associated with it needs to be specified. | associated with it needs to be specified. | |||
In the following, an example of extension is provided. The extension | In the following, an example of extension is provided. The extension | |||
defines a new audio capture attribute ("newAudioFeature") and an | defines a new audio capture attribute ("newAudioFeature") and an | |||
attribute for characterizing the captures belonging to an | attribute for characterizing the captures belonging to an | |||
"otherCaptureType" defined by the user. An XML document compliant | "otherCaptureType" defined by the user. An XML document compliant | |||
with the extension is also included. The XML file results validated | with the extension is also included. The XML file results are | |||
against the current CLUE data model schema. | validated against the current XML schema for the CLUE data model. | |||
<?xml version="1.0" encoding="UTF-8" ?> | <?xml version="1.0" encoding="UTF-8" ?> | |||
<xs:schema | <xs:schema | |||
targetNamespace="urn:ietf:params:xml:ns:clue-info-ext" | targetNamespace="urn:ietf:params:xml:ns:clue-info-ext" | |||
xmlns:tns="urn:ietf:params:xml:ns:clue-info-ext" | xmlns:tns="urn:ietf:params:xml:ns:clue-info-ext" | |||
xmlns:clue-ext="urn:ietf:params:xml:ns:clue-info-ext" | xmlns:clue-ext="urn:ietf:params:xml:ns:clue-info-ext" | |||
xmlns:xs="http://www.w3.org/2001/XMLSchema" | xmlns:xs="http://www.w3.org/2001/XMLSchema" | |||
xmlns="urn:ietf:params:xml:ns:clue-info-ext" | xmlns="urn:ietf:params:xml:ns:clue-info-ext" | |||
xmlns:xcard="urn:ietf:params:xml:ns:vcard-4.0" | xmlns:xcard="urn:ietf:params:xml:ns:vcard-4.0" | |||
xmlns:info="urn:ietf:params:xml:ns:clue-info" | xmlns:info="urn:ietf:params:xml:ns:clue-info" | |||
elementFormDefault="qualified" | elementFormDefault="qualified" | |||
attributeFormDefault="unqualified"> | attributeFormDefault="unqualified"> | |||
<!-- Import xcard XML schema --> | <!-- Import xCard XML schema --> | |||
<xs:import namespace="urn:ietf:params:xml:ns:vcard-4.0" | <xs:import namespace="urn:ietf:params:xml:ns:vcard-4.0" | |||
schemaLocation= | schemaLocation= | |||
"http://www.iana.org/assignments/xml-registry/schema/vcard-4.0.xsd"/> | "https://www.iana.org/assignments/xml-registry/schema/ | |||
vcard-4.0.xsd"/> | ||||
<!-- Import CLUE XML schema --> | <!-- Import CLUE XML schema --> | |||
<xs:import namespace="urn:ietf:params:xml:ns:clue-info" | <xs:import namespace="urn:ietf:params:xml:ns:clue-info" | |||
schemaLocation="clue-data-model-schema.xsd"/> | schemaLocation="clue-data-model-schema.xsd"/> | |||
<!-- ELEMENT DEFINITIONS --> | <!-- ELEMENT DEFINITIONS --> | |||
<xs:element name="newAudioFeature" type="xs:string"/> | <xs:element name="newAudioFeature" type="xs:string"/> | |||
<xs:element name="otherMediaCaptureTypeFeature" type="xs:string"/> | <xs:element name="otherMediaCaptureTypeFeature" type="xs:string"/> | |||
</xs:schema> | ||||
</xs:schema> | ||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |||
<clueInfo xmlns="urn:ietf:params:xml:ns:clue-info" | <clueInfo xmlns="urn:ietf:params:xml:ns:clue-info" | |||
xmlns:ns2="urn:ietf:params:xml:ns:vcard-4.0" | xmlns:ns2="urn:ietf:params:xml:ns:vcard-4.0" | |||
xmlns:ns3="urn:ietf:params:xml:ns:clue-info-ext" | xmlns:ns3="urn:ietf:params:xml:ns:clue-info-ext" | |||
clueInfoID="NapoliRoom"> | clueInfoID="NapoliRoom"> | |||
<mediaCaptures> | <mediaCaptures> | |||
<mediaCapture | <mediaCapture | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
xsi:type="audioCaptureType" | xsi:type="audioCaptureType" | |||
captureID="AC0" | captureID="AC0" | |||
skipping to change at page 48, line 5 ¶ | skipping to change at line 2062 ¶ | |||
<encodingID>ENC4</encodingID> | <encodingID>ENC4</encodingID> | |||
<encodingID>ENC5</encodingID> | <encodingID>ENC5</encodingID> | |||
</encodingIDList> | </encodingIDList> | |||
</encodingGroup> | </encodingGroup> | |||
</encodingGroups> | </encodingGroups> | |||
<captureScenes> | <captureScenes> | |||
<captureScene scale="unknown" sceneID="CS1"/> | <captureScene scale="unknown" sceneID="CS1"/> | |||
</captureScenes> | </captureScenes> | |||
</clueInfo> | </clueInfo> | |||
25. Security considerations | 25. Security Considerations | |||
This document defines an XML Schema data model for telepresence | This document defines, through an XML schema, a data model for | |||
scenarios. The modeled information is identified in the CLUE | telepresence scenarios. The modeled information is identified in the | |||
framework as necessary in order to enable a full-fledged media stream | CLUE framework as necessary in order to enable a full-fledged media | |||
negotiation and rendering. Indeed, the XML elements herein defined | stream negotiation and rendering. Indeed, the XML elements herein | |||
are used within CLUE protocol messages to describe both the media | defined are used within CLUE protocol messages to describe both the | |||
streams representing the Media Provider's telepresence offer and the | media streams representing the Media Provider's telepresence offer | |||
desired selection requested by the Media Consumer. Security concerns | and the desired selection requested by the Media Consumer. Security | |||
described in [I-D.ietf-clue-framework], Section 15, apply to this | concerns described in [RFC8845], Section 15 apply to this document. | |||
document. | ||||
Data model information carried within CLUE messages SHOULD be | Data model information carried within CLUE messages SHOULD be | |||
accessed only by authenticated endpoints. Indeed, authenticated | accessed only by authenticated endpoints. Indeed, authenticated | |||
access is strongly advisable, especially if you convey information | access is strongly advisable, especially if you convey information | |||
about individuals (<personalInfo>) and/or scenes | about individuals (<personalInfo>) and/or scenes | |||
(<sceneInformation>). There might be more exceptions, depending on | (<sceneInformation>). There might be more exceptions, depending on | |||
the level of criticality that is associated with the setup and | the level of criticality that is associated with the setup and | |||
configuration of a specific session. In principle, one might even | configuration of a specific session. In principle, one might even | |||
decide that no protection at all is needed for a particular session; | decide that no protection at all is needed for a particular session; | |||
here is why authentication has not been identified as a mandatory | here is why authentication has not been identified as a mandatory | |||
requirement. | requirement. | |||
Going deeper into details, some information published by the Media | Going deeper into details, some information published by the Media | |||
Provider might reveal sensitive data about who and what is | Provider might reveal sensitive data about who and what is | |||
represented in the transmitted streams. The vCard included in the | represented in the transmitted streams. The vCard included in the | |||
<personInfo> elements (Section 21.1) mandatorily contains the | <personInfo> elements (Section 21.1) mandatorily contains the | |||
identity of the represented person. Optionally vCards can also carry | identity of the represented person. Optionally, vCards can also | |||
the person's contact addresses, together with his/her photo and other | carry the person's contact addresses, together with their photo and | |||
personal data. Similar privacy-critical information can be conveyed | other personal data. Similar privacy-critical information can be | |||
by means of <sceneInformation> elements (Section 16.1) describing the | conveyed by means of <sceneInformation> elements (Section 16.1) | |||
capture scenes. The <description> elements (Section 11.13) also can | describing the capture scenes. The <description> elements | |||
specify details about the content of media captures, capture scenes | (Section 11.13) also can specify details about the content of media | |||
and scene views that should be protected. | captures, capture scenes, and scene views that should be protected. | |||
Integrity attacks to the data model information encapsulated in CLUE | Integrity attacks to the data model information encapsulated in CLUE | |||
messages can invalidate the success of the telepresence session's | messages can invalidate the success of the telepresence session's | |||
setup by misleading the Media Consumer's and Media Provider's | setup by misleading the Media Consumer's and Media Provider's | |||
interpretation of the offered and desired media streams. | interpretation of the offered and desired media streams. | |||
The assurance of the authenticated access and of the integrity of the | The assurance of the authenticated access and of the integrity of the | |||
data model information is up to the involved transport mechanisms, | data model information is up to the involved transport mechanisms, | |||
namely the CLUE protocol [I-D.ietf-clue-protocol] and the CLUE data | namely the CLUE protocol [RFC8847] and the CLUE data channel | |||
channel [I-D.ietf-clue-datachannel]. | [RFC8850]. | |||
XML parsers need to be robust with respect to malformed documents. | XML parsers need to be robust with respect to malformed documents. | |||
Reading malformed documents from unknown or untrusted sources could | Reading malformed documents from unknown or untrusted sources could | |||
result in an attacker gaining privileges of the user running the XML | result in an attacker gaining privileges of the user running the XML | |||
parser. In an extreme situation, the entire machine could be | parser. In an extreme situation, the entire machine could be | |||
compromised. | compromised. | |||
26. IANA considerations | 26. IANA Considerations | |||
This document registers a new XML namespace, a new XML schema, the | This document registers a new XML namespace, a new XML schema, the | |||
MIME type for the schema and four new registries associated, | media type for the schema, and four new registries associated, | |||
respectively, with acceptable <view>, <presentation>, | respectively, with acceptable <view>, <presentation>, | |||
<sensitivityPattern> and <personType> values. | <sensitivityPattern>, and <personType> values. | |||
26.1. XML namespace registration | 26.1. XML Namespace Registration | |||
URI: urn:ietf:params:xml:ns:clue-info | URI: urn:ietf:params:xml:ns:clue-info | |||
Registrant Contact: IETF CLUE Working Group <clue@ietf.org>, Roberta | Registrant Contact: IETF CLUE Working Group <clue@ietf.org>, Roberta | |||
Presta <roberta.presta@unina.it> | Presta <roberta.presta@unina.it> | |||
XML: | XML: | |||
BEGIN | <CODE BEGINS> | |||
<?xml version="1.0"?> | <?xml version="1.0"?> | |||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" | |||
"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd"> | "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd"> | |||
<html xmlns="http://www.w3.org/1999/xhtml"> | <html xmlns="http://www.w3.org/1999/xhtml"> | |||
<head> | <head> | |||
<meta http-equiv="content-type" | <meta http-equiv="content-type" | |||
content="text/html;charset=iso-8859-1"/> | content="text/html;charset=iso-8859-1"/> | |||
<title> CLUE Data Model Namespace</title> | <title>CLUE Data Model Namespace</title> | |||
</head> | </head> | |||
<body> | <body> | |||
<h1>Namespace for CLUE Data Model</h1> | <h1>Namespace for CLUE Data Model</h1> | |||
<h2>urn:ietf:params:xml:ns:clue-info</h2> | <h2>urn:ietf:params:xml:ns:clue-info</h2> | |||
<p>See | <p>See | |||
<a href="http://www.rfc-editor.org/rfc/rfcXXXX.txt"> RFC XXXX</a>. | <a href="https://www.rfc-editor.org/rfc/rfc8846.txt">RFC 8846</a>. | |||
<!--[[NOTE TO IANA/RFC-EDITOR: Please update RFC URL | ||||
and replace XXXX with the RFC number for this specification.]]--> | ||||
</p> | </p> | |||
</body> | </body> | |||
</html> | </html> | |||
<CODE ENDS> | ||||
END | 26.2. XML Schema Registration | |||
26.2. XML Schema registration | ||||
This section registers an XML schema per the guidelines in [RFC3688]. | This section registers an XML schema per the guidelines in [RFC3688]. | |||
URI: urn:ietf:params:xml:schema:clue-info | URI: urn:ietf:params:xml:schema:clue-info | |||
Registrant Contact: CLUE working group (clue@ietf.org), Roberta | Registrant Contact: CLUE Working Group (clue@ietf.org), Roberta | |||
Presta (roberta.presta@unina.it). | Presta (roberta.presta@unina.it). | |||
Schema: The XML for this schema can be found as the entirety of | Schema: The XML for this schema can be found in its entirety in | |||
Section 4 of this document. | Section 4 of this document. | |||
26.3. MIME Media Type Registration for "application/clue_info+xml" | 26.3. Media Type Registration for "application/clue_info+xml" | |||
This section registers the "application/clue_info+xml" MIME type. | This section registers the "application/clue_info+xml" media type. | |||
To: ietf-types@iana.org | To: ietf-types@iana.org | |||
Subject: Registration of MIME media type application/clue_info+xml | Subject: Registration of media type application/clue_info+xml | |||
MIME media type name: application | Type name: application | |||
MIME subtype name: clue_info+xml | Subtype name: clue_info+xml | |||
Required parameters: (none) | Required parameters: (none) | |||
Optional parameters: charset | Optional parameters: charset Same as the charset parameter of | |||
Same as the charset parameter of "application/xml" as specified in | "application/xml" as specified in [RFC7303], Section 3.2. | |||
[RFC7303], Section 3.2. | ||||
Encoding considerations: Same as the encoding considerations of | Encoding considerations: Same as the encoding considerations of | |||
"application/xml" as specified in [RFC7303], Section 3.2. | "application/xml" as specified in [RFC7303], Section 3.2. | |||
Security considerations: This content type is designed to carry data | Security considerations: This content type is designed to carry data | |||
related to telepresence information. Some of the data could be | related to telepresence information. Some of the data could be | |||
considered private. This media type does not provide any protection | considered private. This media type does not provide any | |||
and thus other mechanisms such as those described in Section 25 are | protection and thus other mechanisms such as those described in | |||
required to protect the data. This media type does not contain | Section 25 are required to protect the data. This media type does | |||
executable content. | not contain executable content. | |||
Interoperability considerations: None. | Interoperability considerations: None. | |||
Published specification: RFC XXXX [[NOTE TO IANA/RFC-EDITOR: Please | Published specification: RFC 8846 | |||
replace XXXX with the RFC number for this specification.]] | ||||
Applications that use this media type: CLUE-capable telepresence | Applications that use this media type: CLUE-capable telepresence | |||
systems. | systems. | |||
Additional Information: Magic Number(s): (none), | Additional Information: | |||
File extension(s): .clue, | ||||
Macintosh File Type Code(s): TEXT. | ||||
Person & email address to contact for further information: Roberta | Magic Number(s): none | |||
Presta (roberta.presta@unina.it). | File extension(s): .clue | |||
Macintosh File Type Code(s): TEXT | ||||
Intended usage: LIMITED USE | Person & email address to contact for further information: Roberta | |||
Presta (roberta.presta@unina.it). | ||||
Author/Change controller: The IETF | Intended usage: LIMITED USE | |||
Other information: This media type is a specialization of | Author/Change controller: The IETF | |||
application/xml [RFC7303], and many of the considerations described | ||||
there also apply to application/clue_info+xml. | ||||
26.4. Registry for acceptable <view> values | Other information: This media type is a specialization of | |||
"application/xml" [RFC7303], and many of the considerations | ||||
described there also apply to "application/clue_info+xml". | ||||
IANA is requested to create a registry of acceptable values for the | 26.4. Registry for Acceptable <view> Values | |||
the <view> tag as defined in Section 11.18. The initial values for | ||||
this registry are "room", "table", "lectern", "individual", and | ||||
"audience". | ||||
New values are assigned by Expert Review per [RFC5226]. This | IANA has created a registry of acceptable values for the <view> tag | |||
as defined in Section 11.18. The initial values for this registry | ||||
are "room", "table", "lectern", "individual", and "audience". | ||||
New values are assigned by Expert Review per [RFC8126]. This | ||||
reviewer will ensure that the requested registry entry conforms to | reviewer will ensure that the requested registry entry conforms to | |||
the prescribed formatting. | the prescribed formatting. | |||
IANA is further requested to update this draft with the URL to the | 26.5. Registry for Acceptable <presentation> Values | |||
new registry in Section 11.18, marked as "TBD-IANA". | ||||
26.5. Registry for acceptable <presentation> values | ||||
IANA is requested to create a registry of acceptable values for the | IANA has created a registry of acceptable values for the | |||
the <presentation> tag as defined in Section 11.19. The initial | <presentation> tag as defined in Section 11.19. The initial values | |||
values for this registry are "slides" and "images". | for this registry are "slides" and "images". | |||
New values are assigned by Expert Review per [RFC5226]. This | New values are assigned by Expert Review per [RFC8126]. This | |||
reviewer will ensure that the requested registry entry conforms to | reviewer will ensure that the requested registry entry conforms to | |||
the prescribed formatting. | the prescribed formatting. | |||
IANA is further requested to update this draft with the URL to the | 26.6. Registry for Acceptable <sensitivityPattern> Values | |||
new registry in Section 11.19, marked as "TBD-IANA". | ||||
26.6. Registry for acceptable <sensitivityPattern> values | ||||
IANA is requested to create a registry of acceptable values for the | IANA has created a registry of acceptable values for the | |||
the <sensitivityPattern> tag as defined in Section 12.1. The initial | <sensitivityPattern> tag as defined in Section 12.1. The initial | |||
values for this registry are "uni", "shotgun", "omni", "figure8", | values for this registry are "uni", "shotgun", "omni", "figure8", | |||
"cardioid" and "hyper-cardioid". | "cardioid", and "hyper-cardioid". | |||
New values are assigned by Expert Review per [RFC5226]. This | New values are assigned by Expert Review per [RFC8126]. This | |||
reviewer will ensure that the requested registry entry conforms to | reviewer will ensure that the requested registry entry conforms to | |||
the prescribed formatting. | the prescribed formatting. | |||
IANA is further requested to update this draft with the URL to the | 26.7. Registry for Acceptable <personType> Values | |||
new registry in Section 12.1, marked as "TBD-IANA". | ||||
26.7. Registry for acceptable <personType> values | ||||
IANA is requested to create a registry of acceptable values for the | IANA has created a registry of acceptable values for the <personType> | |||
the <personType> tag as defined in Section 21.1.3. The initial | tag as defined in Section 21.1.3. The initial values for this | |||
values for this registry are "presenter", "timekeeper", "attendee", | registry are "presenter", "timekeeper", "attendee", "minute taker", | |||
"minute taker", "translator", "chairman", "vice-chairman", | "translator", "chairman", "vice-chairman", and "observer". | |||
"observer". | ||||
New values are assigned by Expert Review per [RFC5226]. This | New values are assigned by Expert Review per [RFC8126]. This | |||
reviewer will ensure that the requested registry entry conforms to | reviewer will ensure that the requested registry entry conforms to | |||
the prescribed formatting. | the prescribed formatting. | |||
IANA is further requested to update this draft with the URL to the | 27. Sample XML File | |||
new registry in Section 21.1.3, marked as "TBD-IANA". | ||||
27. Sample XML file | ||||
The following XML document represents a schema compliant example of a | The following XML document represents a schema-compliant example of a | |||
CLUE telepresence scenario. Taking inspiration from the examples | CLUE telepresence scenario. Taking inspiration from the examples | |||
described in the framework draft ([I-D.ietf-clue-framework]), it is | described in the framework specification [RFC8845], the XML | |||
provided the XML representation of an endpoint-style Media Provider's | representation of an endpoint-style Media Provider's ADVERTISEMENT is | |||
ADVERTISEMENT. | provided. | |||
There are three cameras, where the central one is also capable of | There are three cameras, where the central one is also capable of | |||
capturing a zoomed-out view of the overall telepresence room. | capturing a zoomed-out view of the overall telepresence room. | |||
Besides the three video captures coming from the cameras, the Media | Besides the three video captures coming from the cameras, the Media | |||
Provider makes available a further multi-content capture of the | Provider makes available a further multicontent capture of the | |||
loudest segment of the room, obtained by switching the video source | loudest segment of the room, obtained by switching the video source | |||
across the three cameras. For the sake of simplicity, only one audio | across the three cameras. For the sake of simplicity, only one audio | |||
capture is advertised for the audio of the whole room. | capture is advertised for the audio of the whole room. | |||
The three cameras are placed in front of three participants (Alice, | The three cameras are placed in front of three participants (Alice, | |||
Bob and Ciccio), whose vcard and conference role details are also | Bob, and Ciccio), whose vCard and conference role details are also | |||
provided. | provided. | |||
Media captures are arranged into four capture scene views: | Media captures are arranged into four capture scene views: | |||
1. (VC0, VC1, VC2) - left, center and right camera video captures | 1. (VC0, VC1, VC2) - left, center, and right camera video captures | |||
2. (VC3) - video capture associated with loudest room segment | 2. (VC3) - video capture associated with loudest room segment | |||
3. (VC4) - video capture zoomed out view of all people in the room | ||||
3. (VC4) - video capture zoomed-out view of all people in the room | ||||
4. (AC0) - main audio | 4. (AC0) - main audio | |||
There are two encoding groups: (i) EG0, for video encodings, and (ii) | There are two encoding groups: (i) EG0, for video encodings, and (ii) | |||
EG1, for audio encodings. | EG1, for audio encodings. | |||
As to the simultaneous sets, VC1 and VC4 cannot be transmitted | As to the simultaneous sets, VC1 and VC4 cannot be transmitted | |||
simultaneously since they are captured by the same device, i.e., the | simultaneously since they are captured by the same device, i.e., the | |||
central camera (VC4 is a zoomed-out view while VC1 is a focused view | central camera (VC4 is a zoomed-out view while VC1 is a focused view | |||
of the front participant). On the other hand, VC3 and VC4 cannot be | of the front participant). On the other hand, VC3 and VC4 cannot be | |||
simultaneous either, since VC3, the loudest segment of the room, | simultaneous either, since VC3, the loudest segment of the room, | |||
might be at a certain point in time focusing on the central part of | might be at a certain point in time focusing on the central part of | |||
the room, i.e., the same as VC1. The simultaneous sets would then be | the room, i.e., the same as VC1. The simultaneous sets would then be | |||
the following: | the following: | |||
SS1 made by VC3 and all the captures in the first capture scene view | SS1: made by VC3 and all the captures in the first capture scene | |||
(VC0,VC1,VC2); | view (VC0,VC1,and VC2) | |||
SS2 made by VC0, VC2, VC4 | ||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> | ||||
<clueInfo xmlns="urn:ietf:params:xml:ns:clue-info" | ||||
xmlns:ns2="urn:ietf:params:xml:ns:vcard-4.0" | ||||
clueInfoID="NapoliRoom"> | ||||
<mediaCaptures> | ||||
<mediaCapture | ||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="audioCaptureType" captureID="AC0" mediaType="audio"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureOrigin> | ||||
<capturePoint> | ||||
<x>0.0</x> | ||||
<y>0.0</y> | ||||
<z>10.0</z> | ||||
</capturePoint> | ||||
<lineOfCapturePoint> | ||||
<x>0.0</x> | ||||
<y>1.0</y> | ||||
<z>10.0</z> | ||||
</lineOfCapturePoint> | ||||
</captureOrigin> | ||||
</spatialInformation> | ||||
<individual>true</individual> | ||||
<encGroupIDREF>EG1</encGroupIDREF> | ||||
<description lang="en">main audio from the room | ||||
</description> | ||||
<priority>1</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>room</view> | ||||
<capturedPeople> | ||||
<personIDREF>alice</personIDREF> | ||||
<personIDREF>bob</personIDREF> | ||||
<personIDREF>ciccio</personIDREF> | ||||
</capturedPeople> | ||||
</mediaCapture> | ||||
<mediaCapture | ||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="videoCaptureType" captureID="VC0" mediaType="video"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureOrigin> | ||||
<capturePoint> | ||||
<x>-2.0</x> | ||||
<y>0.0</y> | ||||
<z>10.0</z> | ||||
</capturePoint> | ||||
</captureOrigin> | ||||
<captureArea> | ||||
<bottomLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomLeft> | ||||
<bottomRight> | ||||
<x>-1.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomRight> | ||||
<topLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topLeft> | ||||
<topRight> | ||||
<x>-1.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topRight> | ||||
</captureArea> | ||||
</spatialInformation> | ||||
<individual>true</individual> | ||||
<encGroupIDREF>EG0</encGroupIDREF> | ||||
<description lang="en">left camera video capture | ||||
</description> | ||||
<priority>1</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>individual</view> | ||||
<capturedPeople> | ||||
<personIDREF>ciccio</personIDREF> | ||||
</capturedPeople> | ||||
</mediaCapture> | ||||
<mediaCapture | ||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="videoCaptureType" captureID="VC1" mediaType="video"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureOrigin> | ||||
<capturePoint> | ||||
<x>0.0</x> | ||||
<y>0.0</y> | ||||
<z>10.0</z> | ||||
</capturePoint> | ||||
</captureOrigin> | ||||
<captureArea> | ||||
<bottomLeft> | ||||
<x>-1.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomLeft> | ||||
<bottomRight> | ||||
<x>1.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomRight> | ||||
<topLeft> | ||||
<x>-1.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topLeft> | ||||
<topRight> | ||||
<x>1.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topRight> | ||||
</captureArea> | ||||
</spatialInformation> | ||||
<individual>true</individual> | ||||
<encGroupIDREF>EG0</encGroupIDREF> | ||||
<description lang="en">central camera video capture | ||||
</description> | ||||
<priority>1</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>individual</view> | ||||
<capturedPeople> | ||||
<personIDREF>alice</personIDREF> | ||||
</capturedPeople> | ||||
</mediaCapture> | ||||
<mediaCapture | ||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="videoCaptureType" captureID="VC2" mediaType="video"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureOrigin> | ||||
<capturePoint> | ||||
<x>2.0</x> | ||||
<y>0.0</y> | ||||
<z>10.0</z> | ||||
</capturePoint> | ||||
</captureOrigin> | ||||
<captureArea> | ||||
<bottomLeft> | ||||
<x>1.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomLeft> | ||||
<bottomRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomRight> | ||||
<topLeft> | ||||
<x>1.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topLeft> | ||||
<topRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topRight> | ||||
</captureArea> | ||||
</spatialInformation> | ||||
<individual>true</individual> | ||||
<encGroupIDREF>EG0</encGroupIDREF> | ||||
<description lang="en">right camera video capture | ||||
</description> | ||||
<priority>1</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>individual</view> | ||||
<capturedPeople> | ||||
<personIDREF>bob</personIDREF> | ||||
</capturedPeople> | ||||
</mediaCapture> | ||||
<mediaCapture | ||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="videoCaptureType" captureID="VC3" mediaType="video"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureArea> | ||||
<bottomLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomLeft> | ||||
<bottomRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomRight> | ||||
<topLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topLeft> | ||||
<topRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topRight> | ||||
</captureArea> | ||||
</spatialInformation> | ||||
<content> | ||||
<sceneViewIDREF>SE1</sceneViewIDREF> | ||||
</content> | ||||
<policy>SoundLevel:0</policy> | ||||
<encGroupIDREF>EG0</encGroupIDREF> | ||||
<description lang="en">loudest room segment</description> | ||||
<priority>2</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>individual</view> | ||||
</mediaCapture> | SS2: made by VC0, VC2, and VC4 | |||
<mediaCapture | ||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="videoCaptureType" captureID="VC4" mediaType="video"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureOrigin> | ||||
<capturePoint> | ||||
<x>0.0</x> | ||||
<y>0.0</y> | ||||
<z>10.0</z> | ||||
</capturePoint> | ||||
</captureOrigin> | ||||
<captureArea> | ||||
<bottomLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>7.0</z> | ||||
</bottomLeft> | ||||
<bottomRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>7.0</z> | ||||
</bottomRight> | ||||
<topLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>13.0</z> | ||||
</topLeft> | ||||
<topRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>13.0</z> | ||||
</topRight> | ||||
</captureArea> | ||||
</spatialInformation> | ||||
<individual>true</individual> | ||||
<encGroupIDREF>EG0</encGroupIDREF> | ||||
<description lang="en">zoomed out view of all people in the | ||||
room</description> | ||||
<priority>2</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>room</view> | ||||
<capturedPeople> | ||||
<personIDREF>alice</personIDREF> | ||||
<personIDREF>bob</personIDREF> | ||||
<personIDREF>ciccio</personIDREF> | ||||
</capturedPeople> | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |||
</mediaCapture> | <clueInfo xmlns="urn:ietf:params:xml:ns:clue-info" | |||
</mediaCaptures> | xmlns:ns2="urn:ietf:params:xml:ns:vcard-4.0" | |||
<encodingGroups> | clueInfoID="NapoliRoom"> | |||
<encodingGroup encodingGroupID="EG0"> | <mediaCaptures> | |||
<maxGroupBandwidth>600000</maxGroupBandwidth> | <mediaCapture | |||
<encodingIDList> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<encodingID>ENC1</encodingID> | xsi:type="audioCaptureType" captureID="AC0" | |||
<encodingID>ENC2</encodingID> | mediaType="audio"> | |||
<encodingID>ENC3</encodingID> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
</encodingIDList> | <spatialInformation> | |||
</encodingGroup> | <captureOrigin> | |||
<encodingGroup encodingGroupID="EG1"> | <capturePoint> | |||
<maxGroupBandwidth>300000</maxGroupBandwidth> | <x>0.0</x> | |||
<encodingIDList> | <y>0.0</y> | |||
<encodingID>ENC4</encodingID> | <z>10.0</z> | |||
<encodingID>ENC5</encodingID> | </capturePoint> | |||
</encodingIDList> | <lineOfCapturePoint> | |||
</encodingGroup> | <x>0.0</x> | |||
</encodingGroups> | <y>1.0</y> | |||
<captureScenes> | <z>10.0</z> | |||
<captureScene scale="unknown" sceneID="CS1"> | </lineOfCapturePoint> | |||
<sceneViews> | </captureOrigin> | |||
<sceneView sceneViewID="SE1"> | </spatialInformation> | |||
<mediaCaptureIDs> | <individual>true</individual> | |||
<mediaCaptureIDREF>VC0</mediaCaptureIDREF> | <encGroupIDREF>EG1</encGroupIDREF> | |||
<mediaCaptureIDREF>VC1</mediaCaptureIDREF> | <description lang="en">main audio from the room | |||
<mediaCaptureIDREF>VC2</mediaCaptureIDREF> | </description> | |||
</mediaCaptureIDs> | <priority>1</priority> | |||
</sceneView> | <lang>it</lang> | |||
<sceneView sceneViewID="SE2"> | <mobility>static</mobility> | |||
<mediaCaptureIDs> | <view>room</view> | |||
<mediaCaptureIDREF>VC3</mediaCaptureIDREF> | <capturedPeople> | |||
</mediaCaptureIDs> | <personIDREF>alice</personIDREF> | |||
</sceneView> | <personIDREF>bob</personIDREF> | |||
<sceneView sceneViewID="SE3"> | <personIDREF>ciccio</personIDREF> | |||
<mediaCaptureIDs> | </capturedPeople> | |||
<mediaCaptureIDREF>VC4</mediaCaptureIDREF> | </mediaCapture> | |||
</mediaCaptureIDs> | <mediaCapture | |||
</sceneView> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<sceneView sceneViewID="SE4"> | xsi:type="videoCaptureType" captureID="VC0" | |||
<mediaCaptureIDs> | mediaType="video"> | |||
<mediaCaptureIDREF>AC0</mediaCaptureIDREF> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
</mediaCaptureIDs> | <spatialInformation> | |||
</sceneView> | <captureOrigin> | |||
</sceneViews> | <capturePoint> | |||
</captureScene> | <x>-2.0</x> | |||
</captureScenes> | <y>0.0</y> | |||
<simultaneousSets> | <z>10.0</z> | |||
<simultaneousSet setID="SS1"> | </capturePoint> | |||
<mediaCaptureIDREF>VC3</mediaCaptureIDREF> | </captureOrigin> | |||
<sceneViewIDREF>SE1</sceneViewIDREF> | <captureArea> | |||
</simultaneousSet> | <bottomLeft> | |||
<simultaneousSet setID="SS2"> | <x>-3.0</x> | |||
<mediaCaptureIDREF>VC0</mediaCaptureIDREF> | <y>20.0</y> | |||
<mediaCaptureIDREF>VC2</mediaCaptureIDREF> | <z>9.0</z> | |||
<mediaCaptureIDREF>VC4</mediaCaptureIDREF> | </bottomLeft> | |||
</simultaneousSet> | <bottomRight> | |||
</simultaneousSets> | <x>-1.0</x> | |||
<people> | <y>20.0</y> | |||
<person personID="bob"> | <z>9.0</z> | |||
<personInfo> | </bottomRight> | |||
<ns2:fn> | <topLeft> | |||
<ns2:text>Bob</ns2:text> | <x>-3.0</x> | |||
</ns2:fn> | <y>20.0</y> | |||
</personInfo> | <z>11.0</z> | |||
<personType>minute taker</personType> | </topLeft> | |||
</person> | <topRight> | |||
<person personID="alice"> | <x>-1.0</x> | |||
<personInfo> | <y>20.0</y> | |||
<ns2:fn> | <z>11.0</z> | |||
<ns2:text>Alice</ns2:text> | </topRight> | |||
</ns2:fn> | </captureArea> | |||
</personInfo> | </spatialInformation> | |||
<personType>presenter</personType> | <individual>true</individual> | |||
</person> | <encGroupIDREF>EG0</encGroupIDREF> | |||
<person personID="ciccio"> | <description lang="en">left camera video capture | |||
<personInfo> | </description> | |||
<ns2:fn> | <priority>1</priority> | |||
<ns2:text>Ciccio</ns2:text> | <lang>it</lang> | |||
</ns2:fn> | <mobility>static</mobility> | |||
</personInfo> | <view>individual</view> | |||
<personType>chairman</personType> | <capturedPeople> | |||
<personType>timekeeper</personType> | <personIDREF>ciccio</personIDREF> | |||
</person> | </capturedPeople> | |||
</people> | </mediaCapture> | |||
</clueInfo> | <mediaCapture | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="videoCaptureType" captureID="VC1" | ||||
mediaType="video"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureOrigin> | ||||
<capturePoint> | ||||
<x>0.0</x> | ||||
<y>0.0</y> | ||||
<z>10.0</z> | ||||
</capturePoint> | ||||
</captureOrigin> | ||||
<captureArea> | ||||
<bottomLeft> | ||||
<x>-1.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomLeft> | ||||
<bottomRight> | ||||
<x>1.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomRight> | ||||
<topLeft> | ||||
<x>-1.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topLeft> | ||||
<topRight> | ||||
<x>1.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topRight> | ||||
</captureArea> | ||||
</spatialInformation> | ||||
<individual>true</individual> | ||||
<encGroupIDREF>EG0</encGroupIDREF> | ||||
<description lang="en">central camera video capture | ||||
</description> | ||||
<priority>1</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>individual</view> | ||||
<capturedPeople> | ||||
<personIDREF>alice</personIDREF> | ||||
</capturedPeople> | ||||
</mediaCapture> | ||||
<mediaCapture | ||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="videoCaptureType" captureID="VC2" | ||||
mediaType="video"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureOrigin> | ||||
<capturePoint> | ||||
<x>2.0</x> | ||||
<y>0.0</y> | ||||
<z>10.0</z> | ||||
</capturePoint> | ||||
</captureOrigin> | ||||
<captureArea> | ||||
<bottomLeft> | ||||
<x>1.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomLeft> | ||||
<bottomRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomRight> | ||||
<topLeft> | ||||
<x>1.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topLeft> | ||||
<topRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topRight> | ||||
</captureArea> | ||||
</spatialInformation> | ||||
<individual>true</individual> | ||||
<encGroupIDREF>EG0</encGroupIDREF> | ||||
<description lang="en">right camera video capture | ||||
</description> | ||||
<priority>1</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>individual</view> | ||||
<capturedPeople> | ||||
<personIDREF>bob</personIDREF> | ||||
</capturedPeople> | ||||
</mediaCapture> | ||||
<mediaCapture | ||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="videoCaptureType" captureID="VC3" | ||||
mediaType="video"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureArea> | ||||
<bottomLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomLeft> | ||||
<bottomRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>9.0</z> | ||||
</bottomRight> | ||||
<topLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topLeft> | ||||
<topRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>11.0</z> | ||||
</topRight> | ||||
</captureArea> | ||||
</spatialInformation> | ||||
<content> | ||||
<sceneViewIDREF>SE1</sceneViewIDREF> | ||||
</content> | ||||
<policy>SoundLevel:0</policy> | ||||
<encGroupIDREF>EG0</encGroupIDREF> | ||||
<description lang="en">loudest room segment</description> | ||||
<priority>2</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>individual</view> | ||||
</mediaCapture> | ||||
<mediaCapture | ||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
xsi:type="videoCaptureType" captureID="VC4" | ||||
mediaType="video"> | ||||
<captureSceneIDREF>CS1</captureSceneIDREF> | ||||
<spatialInformation> | ||||
<captureOrigin> | ||||
<capturePoint> | ||||
<x>0.0</x> | ||||
<y>0.0</y> | ||||
<z>10.0</z> | ||||
</capturePoint> | ||||
</captureOrigin> | ||||
<captureArea> | ||||
<bottomLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>7.0</z> | ||||
</bottomLeft> | ||||
<bottomRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>7.0</z> | ||||
</bottomRight> | ||||
<topLeft> | ||||
<x>-3.0</x> | ||||
<y>20.0</y> | ||||
<z>13.0</z> | ||||
</topLeft> | ||||
<topRight> | ||||
<x>3.0</x> | ||||
<y>20.0</y> | ||||
<z>13.0</z> | ||||
</topRight> | ||||
</captureArea> | ||||
</spatialInformation> | ||||
<individual>true</individual> | ||||
<encGroupIDREF>EG0</encGroupIDREF> | ||||
<description lang="en">zoomed-out view of all people | ||||
in the room</description> | ||||
<priority>2</priority> | ||||
<lang>it</lang> | ||||
<mobility>static</mobility> | ||||
<view>room</view> | ||||
<capturedPeople> | ||||
<personIDREF>alice</personIDREF> | ||||
<personIDREF>bob</personIDREF> | ||||
<personIDREF>ciccio</personIDREF> | ||||
</capturedPeople> | ||||
</mediaCapture> | ||||
</mediaCaptures> | ||||
<encodingGroups> | ||||
<encodingGroup encodingGroupID="EG0"> | ||||
<maxGroupBandwidth>600000</maxGroupBandwidth> | ||||
<encodingIDList> | ||||
<encodingID>ENC1</encodingID> | ||||
<encodingID>ENC2</encodingID> | ||||
<encodingID>ENC3</encodingID> | ||||
</encodingIDList> | ||||
</encodingGroup> | ||||
<encodingGroup encodingGroupID="EG1"> | ||||
<maxGroupBandwidth>300000</maxGroupBandwidth> | ||||
<encodingIDList> | ||||
<encodingID>ENC4</encodingID> | ||||
<encodingID>ENC5</encodingID> | ||||
</encodingIDList> | ||||
</encodingGroup> | ||||
</encodingGroups> | ||||
<captureScenes> | ||||
<captureScene scale="unknown" sceneID="CS1"> | ||||
<sceneViews> | ||||
<sceneView sceneViewID="SE1"> | ||||
<mediaCaptureIDs> | ||||
<mediaCaptureIDREF>VC0</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC1</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC2</mediaCaptureIDREF> | ||||
</mediaCaptureIDs> | ||||
</sceneView> | ||||
<sceneView sceneViewID="SE2"> | ||||
<mediaCaptureIDs> | ||||
<mediaCaptureIDREF>VC3</mediaCaptureIDREF> | ||||
</mediaCaptureIDs> | ||||
</sceneView> | ||||
<sceneView sceneViewID="SE3"> | ||||
<mediaCaptureIDs> | ||||
<mediaCaptureIDREF>VC4</mediaCaptureIDREF> | ||||
</mediaCaptureIDs> | ||||
</sceneView> | ||||
<sceneView sceneViewID="SE4"> | ||||
<mediaCaptureIDs> | ||||
<mediaCaptureIDREF>AC0</mediaCaptureIDREF> | ||||
</mediaCaptureIDs> | ||||
</sceneView> | ||||
</sceneViews> | ||||
</captureScene> | ||||
</captureScenes> | ||||
<simultaneousSets> | ||||
<simultaneousSet setID="SS1"> | ||||
<mediaCaptureIDREF>VC3</mediaCaptureIDREF> | ||||
<sceneViewIDREF>SE1</sceneViewIDREF> | ||||
</simultaneousSet> | ||||
<simultaneousSet setID="SS2"> | ||||
<mediaCaptureIDREF>VC0</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC2</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC4</mediaCaptureIDREF> | ||||
</simultaneousSet> | ||||
</simultaneousSets> | ||||
<people> | ||||
<person personID="bob"> | ||||
<personInfo> | ||||
<ns2:fn> | ||||
<ns2:text>Bob</ns2:text> | ||||
</ns2:fn> | ||||
</personInfo> | ||||
<personType>minute taker</personType> | ||||
</person> | ||||
<person personID="alice"> | ||||
<personInfo> | ||||
<ns2:fn> | ||||
<ns2:text>Alice</ns2:text> | ||||
</ns2:fn> | ||||
</personInfo> | ||||
<personType>presenter</personType> | ||||
</person> | ||||
<person personID="ciccio"> | ||||
<personInfo> | ||||
<ns2:fn> | ||||
<ns2:text>Ciccio</ns2:text> | ||||
</ns2:fn> | ||||
</personInfo> | ||||
<personType>chairman</personType> | ||||
<personType>timekeeper</personType> | ||||
</person> | ||||
</people> | ||||
</clueInfo> | ||||
28. MCC example | 28. MCC Example | |||
Enhancing the scenario presented in the previous example, the Media | Enhancing the scenario presented in the previous example, the Media | |||
Provider is able to advertise a composed capture VC7 made by a big | Provider is able to advertise a composed capture VC7 made by a big | |||
picture representing the current speaker (VC3) and two picture-in- | picture representing the current speaker (VC3) and two picture-in- | |||
picture boxes representing the previous speakers (the previous one | picture boxes representing the previous speakers (the previous one, | |||
-VC5- and the oldest one -VC6). The provider does not want to | VC5, and the oldest one, VC6). The provider does not want to | |||
instantiate and send VC5 and VC6, so it does not associate any | instantiate and send VC5 and VC6, so it does not associate any | |||
encoding group with them. Their XML representations are provided for | encoding group with them. Their XML representations are provided for | |||
enabling the description of VC7. | enabling the description of VC7. | |||
A possible description for that scenario could be the following: | A possible description for that scenario could be the following: | |||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |||
<clueInfo xmlns="urn:ietf:params:xml:ns:clue-info" | <clueInfo xmlns="urn:ietf:params:xml:ns:clue-info" | |||
xmlns:ns2="urn:ietf:params:xml:ns:vcard-4.0" clueInfoID="NapoliRoom"> | xmlns:ns2="urn:ietf:params:xml:ns:vcard-4.0" clueInfoID="NapoliRoom"> | |||
<mediaCaptures> | <mediaCaptures> | |||
<mediaCapture | <mediaCapture | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
xsi:type="audioCaptureType" captureID="AC0" mediaType="audio"> | xsi:type="audioCaptureType" captureID="AC0" | |||
<captureSceneIDREF>CS1</captureSceneIDREF> | mediaType="audio"> | |||
<spatialInformation> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
<captureOrigin> | <spatialInformation> | |||
<capturePoint> | <captureOrigin> | |||
<x>0.0</x> | <capturePoint> | |||
<y>0.0</y> | <x>0.0</x> | |||
<z>10.0</z> | <y>0.0</y> | |||
</capturePoint> | <z>10.0</z> | |||
<lineOfCapturePoint> | </capturePoint> | |||
<x>0.0</x> | <lineOfCapturePoint> | |||
<y>1.0</y> | <x>0.0</x> | |||
<z>10.0</z> | <y>1.0</y> | |||
</lineOfCapturePoint> | <z>10.0</z> | |||
</captureOrigin> | </lineOfCapturePoint> | |||
</spatialInformation> | </captureOrigin> | |||
<individual>true</individual> | </spatialInformation> | |||
<encGroupIDREF>EG1</encGroupIDREF> | <individual>true</individual> | |||
<description lang="en">main audio from the room | <encGroupIDREF>EG1</encGroupIDREF> | |||
</description> | <description lang="en">main audio from the room | |||
<priority>1</priority> | </description> | |||
<lang>it</lang> | <priority>1</priority> | |||
<mobility>static</mobility> | <lang>it</lang> | |||
<view>room</view> | <mobility>static</mobility> | |||
<capturedPeople> | <view>room</view> | |||
<personIDREF>alice</personIDREF> | <capturedPeople> | |||
<personIDREF>bob</personIDREF> | <personIDREF>alice</personIDREF> | |||
<personIDREF>ciccio</personIDREF> | <personIDREF>bob</personIDREF> | |||
</capturedPeople> | <personIDREF>ciccio</personIDREF> | |||
</mediaCapture> | </capturedPeople> | |||
<mediaCapture | </mediaCapture> | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | <mediaCapture | |||
xsi:type="videoCaptureType" captureID="VC0" mediaType="video"> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<captureSceneIDREF>CS1</captureSceneIDREF> | xsi:type="videoCaptureType" captureID="VC0" | |||
<spatialInformation> | mediaType="video"> | |||
<captureOrigin> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
<capturePoint> | <spatialInformation> | |||
<x>0.5</x> | <captureOrigin> | |||
<y>1.0</y> | <capturePoint> | |||
<z>0.5</z> | <x>0.5</x> | |||
</capturePoint> | <y>1.0</y> | |||
<lineOfCapturePoint> | <z>0.5</z> | |||
<x>0.5</x> | </capturePoint> | |||
<y>0.0</y> | <lineOfCapturePoint> | |||
<z>0.5</z> | <x>0.5</x> | |||
</lineOfCapturePoint> | <y>0.0</y> | |||
</captureOrigin> | <z>0.5</z> | |||
</spatialInformation> | </lineOfCapturePoint> | |||
<individual>true</individual> | </captureOrigin> | |||
<encGroupIDREF>EG0</encGroupIDREF> | </spatialInformation> | |||
<description lang="en">left camera video capture | <individual>true</individual> | |||
</description> | <encGroupIDREF>EG0</encGroupIDREF> | |||
<priority>1</priority> | <description lang="en">left camera video capture | |||
<lang>it</lang> | </description> | |||
<mobility>static</mobility> | <priority>1</priority> | |||
<view>individual</view> | <lang>it</lang> | |||
<capturedPeople> | <mobility>static</mobility> | |||
<personIDREF>ciccio</personIDREF> | <view>individual</view> | |||
</capturedPeople> | <capturedPeople> | |||
</mediaCapture> | <personIDREF>ciccio</personIDREF> | |||
<mediaCapture | </capturedPeople> | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | </mediaCapture> | |||
xsi:type="videoCaptureType" captureID="VC1" mediaType="video"> | <mediaCapture | |||
<captureSceneIDREF>CS1</captureSceneIDREF> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<spatialInformation> | xsi:type="videoCaptureType" captureID="VC1" | |||
<captureOrigin> | mediaType="video"> | |||
<capturePoint> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
<x>0.0</x> | <spatialInformation> | |||
<y>0.0</y> | <captureOrigin> | |||
<z>10.0</z> | <capturePoint> | |||
</capturePoint> | <x>0.0</x> | |||
</captureOrigin> | <y>0.0</y> | |||
<captureArea> | <z>10.0</z> | |||
<bottomLeft> | </capturePoint> | |||
<x>-1.0</x> | </captureOrigin> | |||
<y>20.0</y> | <captureArea> | |||
<z>9.0</z> | <bottomLeft> | |||
</bottomLeft> | <x>-1.0</x> | |||
<bottomRight> | <y>20.0</y> | |||
<x>1.0</x> | <z>9.0</z> | |||
<y>20.0</y> | </bottomLeft> | |||
<z>9.0</z> | <bottomRight> | |||
</bottomRight> | <x>1.0</x> | |||
<topLeft> | <y>20.0</y> | |||
<x>-1.0</x> | <z>9.0</z> | |||
<y>20.0</y> | </bottomRight> | |||
<z>11.0</z> | <topLeft> | |||
</topLeft> | <x>-1.0</x> | |||
<topRight> | <y>20.0</y> | |||
<x>1.0</x> | <z>11.0</z> | |||
<y>20.0</y> | </topLeft> | |||
<z>11.0</z> | <topRight> | |||
</topRight> | <x>1.0</x> | |||
</captureArea> | <y>20.0</y> | |||
</spatialInformation> | <z>11.0</z> | |||
<individual>true</individual> | </topRight> | |||
<encGroupIDREF>EG0</encGroupIDREF> | </captureArea> | |||
<description lang="en">central camera video capture | </spatialInformation> | |||
</description> | <individual>true</individual> | |||
<priority>1</priority> | <encGroupIDREF>EG0</encGroupIDREF> | |||
<lang>it</lang> | <description lang="en">central camera video capture | |||
<mobility>static</mobility> | </description> | |||
<view>individual</view> | <priority>1</priority> | |||
<capturedPeople> | <lang>it</lang> | |||
<personIDREF>alice</personIDREF> | <mobility>static</mobility> | |||
</capturedPeople> | <view>individual</view> | |||
</mediaCapture> | <capturedPeople> | |||
<mediaCapture | <personIDREF>alice</personIDREF> | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | </capturedPeople> | |||
xsi:type="videoCaptureType" captureID="VC2" mediaType="video"> | </mediaCapture> | |||
<captureSceneIDREF>CS1</captureSceneIDREF> | <mediaCapture | |||
<spatialInformation> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<captureOrigin> | xsi:type="videoCaptureType" captureID="VC2" | |||
<capturePoint> | mediaType="video"> | |||
<x>2.0</x> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
<y>0.0</y> | <spatialInformation> | |||
<z>10.0</z> | <captureOrigin> | |||
</capturePoint> | <capturePoint> | |||
</captureOrigin> | <x>2.0</x> | |||
<captureArea> | <y>0.0</y> | |||
<bottomLeft> | <z>10.0</z> | |||
<x>1.0</x> | </capturePoint> | |||
<y>20.0</y> | </captureOrigin> | |||
<z>9.0</z> | <captureArea> | |||
</bottomLeft> | <bottomLeft> | |||
<bottomRight> | <x>1.0</x> | |||
<x>3.0</x> | <y>20.0</y> | |||
<y>20.0</y> | <z>9.0</z> | |||
<z>9.0</z> | </bottomLeft> | |||
</bottomRight> | <bottomRight> | |||
<topLeft> | <x>3.0</x> | |||
<x>1.0</x> | <y>20.0</y> | |||
<y>20.0</y> | <z>9.0</z> | |||
<z>11.0</z> | </bottomRight> | |||
</topLeft> | <topLeft> | |||
<topRight> | <x>1.0</x> | |||
<x>3.0</x> | <y>20.0</y> | |||
<y>20.0</y> | <z>11.0</z> | |||
<z>11.0</z> | </topLeft> | |||
</topRight> | <topRight> | |||
</captureArea> | <x>3.0</x> | |||
</spatialInformation> | <y>20.0</y> | |||
<individual>true</individual> | <z>11.0</z> | |||
<encGroupIDREF>EG0</encGroupIDREF> | </topRight> | |||
<description lang="en">right camera video capture | </captureArea> | |||
</description> | </spatialInformation> | |||
<priority>1</priority> | <individual>true</individual> | |||
<lang>it</lang> | <encGroupIDREF>EG0</encGroupIDREF> | |||
<mobility>static</mobility> | <description lang="en">right camera video capture | |||
<view>individual</view> | </description> | |||
<capturedPeople> | <priority>1</priority> | |||
<personIDREF>bob</personIDREF> | <lang>it</lang> | |||
</capturedPeople> | <mobility>static</mobility> | |||
</mediaCapture> | <view>individual</view> | |||
<mediaCapture | <capturedPeople> | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | <personIDREF>bob</personIDREF> | |||
xsi:type="videoCaptureType" captureID="VC3" mediaType="video"> | </capturedPeople> | |||
<captureSceneIDREF>CS1</captureSceneIDREF> | </mediaCapture> | |||
<spatialInformation> | <mediaCapture | |||
<captureArea> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<bottomLeft> | xsi:type="videoCaptureType" captureID="VC3" | |||
<x>-3.0</x> | mediaType="video"> | |||
<y>20.0</y> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
<z>9.0</z> | <spatialInformation> | |||
</bottomLeft> | <captureArea> | |||
<bottomRight> | <bottomLeft> | |||
<x>3.0</x> | <x>-3.0</x> | |||
<y>20.0</y> | <y>20.0</y> | |||
<z>9.0</z> | <z>9.0</z> | |||
</bottomRight> | </bottomLeft> | |||
<topLeft> | <bottomRight> | |||
<x>-3.0</x> | <x>3.0</x> | |||
<y>20.0</y> | <y>20.0</y> | |||
<z>11.0</z> | <z>9.0</z> | |||
</topLeft> | </bottomRight> | |||
<topRight> | <topLeft> | |||
<x>3.0</x> | <x>-3.0</x> | |||
<y>20.0</y> | ||||
<y>20.0</y> | <z>11.0</z> | |||
<z>11.0</z> | </topLeft> | |||
</topRight> | <topRight> | |||
</captureArea> | <x>3.0</x> | |||
</spatialInformation> | <y>20.0</y> | |||
<content> | <z>11.0</z> | |||
<sceneViewIDREF>SE1</sceneViewIDREF> | </topRight> | |||
</content> | </captureArea> | |||
<policy>SoundLevel:0</policy> | </spatialInformation> | |||
<encGroupIDREF>EG0</encGroupIDREF> | <content> | |||
<description lang="en">loudest room segment</description> | <sceneViewIDREF>SE1</sceneViewIDREF> | |||
<priority>2</priority> | </content> | |||
<lang>it</lang> | <policy>SoundLevel:0</policy> | |||
<mobility>static</mobility> | <encGroupIDREF>EG0</encGroupIDREF> | |||
<view>individual</view> | <description lang="en">loudest room segment</description> | |||
</mediaCapture> | <priority>2</priority> | |||
<mediaCapture | <lang>it</lang> | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | <mobility>static</mobility> | |||
xsi:type="videoCaptureType" captureID="VC4" mediaType="video"> | <view>individual</view> | |||
<captureSceneIDREF>CS1</captureSceneIDREF> | </mediaCapture> | |||
<spatialInformation> | <mediaCapture | |||
<captureOrigin> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<capturePoint> | xsi:type="videoCaptureType" captureID="VC4" | |||
<x>0.0</x> | mediaType="video"> | |||
<y>0.0</y> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
<z>10.0</z> | <spatialInformation> | |||
</capturePoint> | <captureOrigin> | |||
</captureOrigin> | <capturePoint> | |||
<captureArea> | <x>0.0</x> | |||
<bottomLeft> | <y>0.0</y> | |||
<x>-3.0</x> | <z>10.0</z> | |||
<y>20.0</y> | </capturePoint> | |||
<z>7.0</z> | </captureOrigin> | |||
</bottomLeft> | <captureArea> | |||
<bottomRight> | <bottomLeft> | |||
<x>3.0</x> | <x>-3.0</x> | |||
<y>20.0</y> | <y>20.0</y> | |||
<z>7.0</z> | <z>7.0</z> | |||
</bottomRight> | </bottomLeft> | |||
<topLeft> | <bottomRight> | |||
<x>-3.0</x> | <x>3.0</x> | |||
<y>20.0</y> | <y>20.0</y> | |||
<z>13.0</z> | <z>7.0</z> | |||
</topLeft> | </bottomRight> | |||
<topRight> | <topLeft> | |||
<x>3.0</x> | <x>-3.0</x> | |||
<y>20.0</y> | <y>20.0</y> | |||
<z>13.0</z> | <z>13.0</z> | |||
</topRight> | </topLeft> | |||
</captureArea> | <topRight> | |||
</spatialInformation> | <x>3.0</x> | |||
<individual>true</individual> | <y>20.0</y> | |||
<encGroupIDREF>EG0</encGroupIDREF> | <z>13.0</z> | |||
<description lang="en"> | </topRight> | |||
zoomed out view of all people in the room | </captureArea> | |||
</description> | </spatialInformation> | |||
<priority>2</priority> | <individual>true</individual> | |||
<lang>it</lang> | <encGroupIDREF>EG0</encGroupIDREF> | |||
<mobility>static</mobility> | <description lang="en"> | |||
<view>room</view> | zoomed-out view of all people in the room | |||
<capturedPeople> | </description> | |||
<personIDREF>alice</personIDREF> | <priority>2</priority> | |||
<personIDREF>bob</personIDREF> | <lang>it</lang> | |||
<personIDREF>ciccio</personIDREF> | <mobility>static</mobility> | |||
</capturedPeople> | <view>room</view> | |||
</mediaCapture> | <capturedPeople> | |||
<mediaCapture | <personIDREF>alice</personIDREF> | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | <personIDREF>bob</personIDREF> | |||
xsi:type="videoCaptureType" captureID="VC5" mediaType="video"> | <personIDREF>ciccio</personIDREF> | |||
<captureSceneIDREF>CS1</captureSceneIDREF> | </capturedPeople> | |||
<spatialInformation> | </mediaCapture> | |||
<captureArea> | <mediaCapture | |||
<bottomLeft> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<x>-3.0</x> | xsi:type="videoCaptureType" captureID="VC5" | |||
<y>20.0</y> | mediaType="video"> | |||
<z>9.0</z> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
</bottomLeft> | <spatialInformation> | |||
<bottomRight> | <captureArea> | |||
<x>3.0</x> | <bottomLeft> | |||
<y>20.0</y> | <x>-3.0</x> | |||
<z>9.0</z> | <y>20.0</y> | |||
</bottomRight> | <z>9.0</z> | |||
<topLeft> | </bottomLeft> | |||
<x>-3.0</x> | <bottomRight> | |||
<y>20.0</y> | <x>3.0</x> | |||
<z>11.0</z> | <y>20.0</y> | |||
</topLeft> | <z>9.0</z> | |||
<topRight> | </bottomRight> | |||
<x>3.0</x> | <topLeft> | |||
<y>20.0</y> | <x>-3.0</x> | |||
<z>11.0</z> | <y>20.0</y> | |||
</topRight> | <z>11.0</z> | |||
</captureArea> | </topLeft> | |||
</spatialInformation> | <topRight> | |||
<content> | <x>3.0</x> | |||
<sceneViewIDREF>SE1</sceneViewIDREF> | <y>20.0</y> | |||
<z>11.0</z> | ||||
</content> | </topRight> | |||
<policy>SoundLevel:1</policy> | </captureArea> | |||
<description lang="en">penultimate loudest room segment | </spatialInformation> | |||
</description> | <content> | |||
<lang>it</lang> | <sceneViewIDREF>SE1</sceneViewIDREF> | |||
<mobility>static</mobility> | </content> | |||
<view>individual</view> | <policy>SoundLevel:1</policy> | |||
</mediaCapture> | <description lang="en">previous loudest room segment | |||
<mediaCapture | per the most recent iteration of the sound level | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | detection algorithm | |||
xsi:type="videoCaptureType" captureID="VC6" mediaType="video"> | </description> | |||
<captureSceneIDREF>CS1</captureSceneIDREF> | <lang>it</lang> | |||
<spatialInformation> | <mobility>static</mobility> | |||
<captureArea> | <view>individual</view> | |||
<bottomLeft> | </mediaCapture> | |||
<x>-3.0</x> | <mediaCapture | |||
<y>20.0</y> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<z>9.0</z> | xsi:type="videoCaptureType" captureID="VC6" | |||
</bottomLeft> | mediaType="video"> | |||
<bottomRight> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
<x>3.0</x> | <spatialInformation> | |||
<y>20.0</y> | <captureArea> | |||
<z>9.0</z> | <bottomLeft> | |||
</bottomRight> | <x>-3.0</x> | |||
<topLeft> | <y>20.0</y> | |||
<x>-3.0</x> | <z>9.0</z> | |||
<y>20.0</y> | </bottomLeft> | |||
<z>11.0</z> | <bottomRight> | |||
</topLeft> | <x>3.0</x> | |||
<topRight> | <y>20.0</y> | |||
<x>3.0</x> | <z>9.0</z> | |||
<y>20.0</y> | </bottomRight> | |||
<z>11.0</z> | <topLeft> | |||
</topRight> | <x>-3.0</x> | |||
</captureArea> | <y>20.0</y> | |||
</spatialInformation> | <z>11.0</z> | |||
<content> | </topLeft> | |||
<sceneViewIDREF>SE1</sceneViewIDREF> | <topRight> | |||
</content> | <x>3.0</x> | |||
<policy>SoundLevel:2</policy> | <y>20.0</y> | |||
<description lang="en">last but two loudest room segment | <z>11.0</z> | |||
</description> | </topRight> | |||
<lang>it</lang> | </captureArea> | |||
<mobility>static</mobility> | </spatialInformation> | |||
<view>individual</view> | <content> | |||
</mediaCapture> | <sceneViewIDREF>SE1</sceneViewIDREF> | |||
<mediaCapture | </content> | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | <policy>SoundLevel:2</policy> | |||
xsi:type="videoCaptureType" captureID="VC7" mediaType="video"> | <description lang="en">previous loudest room segment | |||
<captureSceneIDREF>CS1</captureSceneIDREF> | per the second most recent iteration of the sound | |||
<spatialInformation> | level detection algorithm | |||
<captureArea> | </description> | |||
<bottomLeft> | <lang>it</lang> | |||
<x>-3.0</x> | <mobility>static</mobility> | |||
<y>20.0</y> | <view>individual</view> | |||
<z>9.0</z> | </mediaCapture> | |||
</bottomLeft> | <mediaCapture | |||
<bottomRight> | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
<x>3.0</x> | xsi:type="videoCaptureType" captureID="VC7" | |||
<y>20.0</y> | mediaType="video"> | |||
<z>9.0</z> | <captureSceneIDREF>CS1</captureSceneIDREF> | |||
</bottomRight> | <spatialInformation> | |||
<topLeft> | <captureArea> | |||
<x>-3.0</x> | <bottomLeft> | |||
<y>20.0</y> | <x>-3.0</x> | |||
<z>11.0</z> | <y>20.0</y> | |||
</topLeft> | <z>9.0</z> | |||
<topRight> | </bottomLeft> | |||
<x>3.0</x> | <bottomRight> | |||
<y>20.0</y> | <x>3.0</x> | |||
<z>11.0</z> | <y>20.0</y> | |||
</topRight> | <z>9.0</z> | |||
</captureArea> | </bottomRight> | |||
</spatialInformation> | <topLeft> | |||
<content> | <x>-3.0</x> | |||
<mediaCaptureIDREF>VC3</mediaCaptureIDREF> | <y>20.0</y> | |||
<mediaCaptureIDREF>VC5</mediaCaptureIDREF> | <z>11.0</z> | |||
<mediaCaptureIDREF>VC6</mediaCaptureIDREF> | </topLeft> | |||
</content> | <topRight> | |||
<maxCaptures exactNumber="true">3</maxCaptures> | <x>3.0</x> | |||
<encGroupIDREF>EG0</encGroupIDREF> | <y>20.0</y> | |||
<description lang="en">big picture of the current speaker + | <z>11.0</z> | |||
pips about previous speakers</description> | </topRight> | |||
<priority>3</priority> | </captureArea> | |||
<lang>it</lang> | </spatialInformation> | |||
<mobility>static</mobility> | <content> | |||
<view>individual</view> | <mediaCaptureIDREF>VC3</mediaCaptureIDREF> | |||
</mediaCapture> | <mediaCaptureIDREF>VC5</mediaCaptureIDREF> | |||
</mediaCaptures> | <mediaCaptureIDREF>VC6</mediaCaptureIDREF> | |||
<encodingGroups> | </content> | |||
<encodingGroup encodingGroupID="EG0"> | <maxCaptures exactNumber="true">3</maxCaptures> | |||
<maxGroupBandwidth>600000</maxGroupBandwidth> | <encGroupIDREF>EG0</encGroupIDREF> | |||
<encodingIDList> | <description lang="en">big picture of the current | |||
<encodingID>ENC1</encodingID> | speaker + pips about previous speakers</description> | |||
<encodingID>ENC2</encodingID> | <priority>3</priority> | |||
<encodingID>ENC3</encodingID> | <lang>it</lang> | |||
<mobility>static</mobility> | ||||
</encodingIDList> | <view>individual</view> | |||
</encodingGroup> | </mediaCapture> | |||
<encodingGroup encodingGroupID="EG1"> | </mediaCaptures> | |||
<maxGroupBandwidth>300000</maxGroupBandwidth> | <encodingGroups> | |||
<encodingIDList> | <encodingGroup encodingGroupID="EG0"> | |||
<encodingID>ENC4</encodingID> | <maxGroupBandwidth>600000</maxGroupBandwidth> | |||
<encodingID>ENC5</encodingID> | <encodingIDList> | |||
</encodingIDList> | <encodingID>ENC1</encodingID> | |||
</encodingGroup> | <encodingID>ENC2</encodingID> | |||
</encodingGroups> | <encodingID>ENC3</encodingID> | |||
<captureScenes> | </encodingIDList> | |||
<captureScene scale="unknown" sceneID="CS1"> | </encodingGroup> | |||
<sceneViews> | <encodingGroup encodingGroupID="EG1"> | |||
<sceneView sceneViewID="SE1"> | <maxGroupBandwidth>300000</maxGroupBandwidth> | |||
<description lang="en">participants' individual | <encodingIDList> | |||
videos</description> | <encodingID>ENC4</encodingID> | |||
<mediaCaptureIDs> | <encodingID>ENC5</encodingID> | |||
<mediaCaptureIDREF>VC0</mediaCaptureIDREF> | </encodingIDList> | |||
<mediaCaptureIDREF>VC1</mediaCaptureIDREF> | </encodingGroup> | |||
<mediaCaptureIDREF>VC2</mediaCaptureIDREF> | </encodingGroups> | |||
</mediaCaptureIDs> | <captureScenes> | |||
</sceneView> | <captureScene scale="unknown" sceneID="CS1"> | |||
<sceneView sceneViewID="SE2"> | <sceneViews> | |||
<description lang="en">loudest segment of the | <sceneView sceneViewID="SE1"> | |||
room</description> | <description lang="en">participants' individual | |||
<mediaCaptureIDs> | videos</description> | |||
<mediaCaptureIDREF>VC3</mediaCaptureIDREF> | <mediaCaptureIDs> | |||
</mediaCaptureIDs> | <mediaCaptureIDREF>VC0</mediaCaptureIDREF> | |||
</sceneView> | <mediaCaptureIDREF>VC1</mediaCaptureIDREF> | |||
<sceneView sceneViewID="SE5"> | <mediaCaptureIDREF>VC2</mediaCaptureIDREF> | |||
<description lang="en">loudest segment of the | </mediaCaptureIDs> | |||
room + pips</description> | </sceneView> | |||
<mediaCaptureIDs> | <sceneView sceneViewID="SE2"> | |||
<mediaCaptureIDREF>VC7</mediaCaptureIDREF> | <description lang="en">loudest segment of the | |||
</mediaCaptureIDs> | room</description> | |||
</sceneView> | <mediaCaptureIDs> | |||
<sceneView sceneViewID="SE4"> | <mediaCaptureIDREF>VC3</mediaCaptureIDREF> | |||
<description lang="en">room audio</description> | </mediaCaptureIDs> | |||
<mediaCaptureIDs> | </sceneView> | |||
<mediaCaptureIDREF>AC0</mediaCaptureIDREF> | <sceneView sceneViewID="SE5"> | |||
</mediaCaptureIDs> | <description lang="en">loudest segment of the | |||
</sceneView> | room + pips</description> | |||
<sceneView sceneViewID="SE3"> | <mediaCaptureIDs> | |||
<description lang="en">room video</description> | <mediaCaptureIDREF>VC7</mediaCaptureIDREF> | |||
<mediaCaptureIDs> | </mediaCaptureIDs> | |||
<mediaCaptureIDREF>VC4</mediaCaptureIDREF> | </sceneView> | |||
</mediaCaptureIDs> | <sceneView sceneViewID="SE4"> | |||
</sceneView> | <description lang="en">room audio</description> | |||
<mediaCaptureIDs> | ||||
<mediaCaptureIDREF>AC0</mediaCaptureIDREF> | ||||
</mediaCaptureIDs> | ||||
</sceneView> | ||||
<sceneView sceneViewID="SE3"> | ||||
<description lang="en">room video</description> | ||||
<mediaCaptureIDs> | ||||
<mediaCaptureIDREF>VC4</mediaCaptureIDREF> | ||||
</mediaCaptureIDs> | ||||
</sceneView> | ||||
</sceneViews> | ||||
</captureScene> | ||||
</captureScenes> | ||||
<simultaneousSets> | ||||
<simultaneousSet setID="SS1"> | ||||
<mediaCaptureIDREF>VC3</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC7</mediaCaptureIDREF> | ||||
<sceneViewIDREF>SE1</sceneViewIDREF> | ||||
</simultaneousSet> | ||||
<simultaneousSet setID="SS2"> | ||||
<mediaCaptureIDREF>VC0</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC2</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC4</mediaCaptureIDREF> | ||||
</simultaneousSet> | ||||
</simultaneousSets> | ||||
<people> | ||||
<person personID="bob"> | ||||
<personInfo> | ||||
<ns2:fn> | ||||
<ns2:text>Bob</ns2:text> | ||||
</ns2:fn> | ||||
</personInfo> | ||||
<personType>minute taker</personType> | ||||
</person> | ||||
<person personID="alice"> | ||||
<personInfo> | ||||
<ns2:fn> | ||||
<ns2:text>Alice</ns2:text> | ||||
</ns2:fn> | ||||
</personInfo> | ||||
<personType>presenter</personType> | ||||
</person> | ||||
<person personID="ciccio"> | ||||
<personInfo> | ||||
<ns2:fn> | ||||
<ns2:text>Ciccio</ns2:text> | ||||
</ns2:fn> | ||||
</personInfo> | ||||
<personType>chairman</personType> | ||||
<personType>timekeeper</personType> | ||||
</person> | ||||
</people> | ||||
</clueInfo> | ||||
</sceneViews> | 29. References | |||
</captureScene> | ||||
</captureScenes> | ||||
<simultaneousSets> | ||||
<simultaneousSet setID="SS1"> | ||||
<mediaCaptureIDREF>VC3</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC7</mediaCaptureIDREF> | ||||
<sceneViewIDREF>SE1</sceneViewIDREF> | ||||
</simultaneousSet> | ||||
<simultaneousSet setID="SS2"> | ||||
<mediaCaptureIDREF>VC0</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC2</mediaCaptureIDREF> | ||||
<mediaCaptureIDREF>VC4</mediaCaptureIDREF> | ||||
</simultaneousSet> | ||||
</simultaneousSets> | ||||
<people> | ||||
<person personID="bob"> | ||||
<personInfo> | ||||
<ns2:fn> | ||||
<ns2:text>Bob</ns2:text> | ||||
</ns2:fn> | ||||
</personInfo> | ||||
<personType>minute taker</personType> | ||||
</person> | ||||
<person personID="alice"> | ||||
<personInfo> | ||||
<ns2:fn> | ||||
<ns2:text>Alice</ns2:text> | ||||
</ns2:fn> | ||||
</personInfo> | ||||
<personType>presenter</personType> | ||||
</person> | ||||
<person personID="ciccio"> | ||||
<personInfo> | ||||
<ns2:fn> | ||||
<ns2:text>Ciccio</ns2:text> | ||||
</ns2:fn> | ||||
</personInfo> | ||||
<personType>chairman</personType> | ||||
<personType>timekeeper</personType> | ||||
</person> | ||||
</people> | ||||
</clueInfo> | ||||
44. References | 29.1. Normative References | |||
44.1. Normative References | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, | ||||
DOI 10.17487/RFC2119, March 1997, | ||||
<https://www.rfc-editor.org/info/rfc2119>. | ||||
[I-D.ietf-clue-datachannel] Holmberg, C., "CLUE Protocol data | [RFC5646] Phillips, A., Ed. and M. Davis, Ed., "Tags for Identifying | |||
channel", | Languages", BCP 47, RFC 5646, DOI 10.17487/RFC5646, | |||
draft-ietf-clue-datachannel-14 | September 2009, <https://www.rfc-editor.org/info/rfc5646>. | |||
(work in progress), August 2016. | ||||
[I-D.ietf-clue-framework] Duckworth, M., Pepperell, A., and | [RFC6351] Perreault, S., "xCard: vCard XML Representation", | |||
S. Wenger, "Framework for | RFC 6351, DOI 10.17487/RFC6351, August 2011, | |||
Telepresence Multi-Streams", | <https://www.rfc-editor.org/info/rfc6351>. | |||
draft-ietf-clue-framework-25 (work | ||||
in progress), January 2016. | ||||
[I-D.ietf-clue-protocol] Presta, R. and S. Romano, "CLUE | [RFC7303] Thompson, H. and C. Lilley, "XML Media Types", RFC 7303, | |||
protocol", | DOI 10.17487/RFC7303, July 2014, | |||
draft-ietf-clue-protocol-08 (work | <https://www.rfc-editor.org/info/rfc7303>. | |||
in progress), May 2016. | ||||
[I-D.ietf-ecrit-additional-data] Gellens, R., Rosen, B., Tschofenig, | [RFC7852] Gellens, R., Rosen, B., Tschofenig, H., Marshall, R., and | |||
H., Marshall, R., and J. | J. Winterbottom, "Additional Data Related to an Emergency | |||
Winterbottom, "Additional Data | Call", RFC 7852, DOI 10.17487/RFC7852, July 2016, | |||
Related to an Emergency Call", | <https://www.rfc-editor.org/info/rfc7852>. | |||
draft-ietf-ecrit-additional-data-38 | ||||
(work in progress), April 2016. | ||||
[RFC2119] Bradner, S., "Key words for use in | [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for | |||
RFCs to Indicate Requirement | Writing an IANA Considerations Section in RFCs", BCP 26, | |||
Levels", BCP 14, RFC 2119, | RFC 8126, DOI 10.17487/RFC8126, June 2017, | |||
DOI 10.17487/RFC2119, March 1997, < | <https://www.rfc-editor.org/info/rfc8126>. | |||
http://www.rfc-editor.org/info/ | ||||
rfc2119>. | ||||
[RFC5226] Narten, T. and H. Alvestrand, | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
"Guidelines for Writing an IANA | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
Considerations Section in RFCs", | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
BCP 26, RFC 5226, DOI 10.17487/ | ||||
RFC5226, May 2008, <http:// | ||||
www.rfc-editor.org/info/rfc5226>. | ||||
[RFC5646] Phillips, A., Ed. and M. Davis, | [RFC8845] Duckworth, M., Ed., Pepperell, A., and S. Wenger, | |||
Ed., "Tags for Identifying | "Framework for Telepresence Multi-Streams", RFC 8845, | |||
Languages", BCP 47, RFC 5646, | DOI 10.17487/RFC8845, January 2021, | |||
DOI 10.17487/RFC5646, | <https://www.rfc-editor.org/info/rfc8845>. | |||
September 2009, <http:// | ||||
www.rfc-editor.org/info/rfc5646>. | ||||
[RFC6351] Perreault, S., "xCard: vCard XML | [RFC8847] Presta, R. and S P. Romano, "Protocol for Controlling | |||
Representation", RFC 6351, | Multiple Streams for Telepresence (CLUE)", RFC 8847, | |||
DOI 10.17487/RFC6351, August 2011, | DOI 10.17487/RFC8847, January 2021, | |||
<http://www.rfc-editor.org/info/ | <https://www.rfc-editor.org/info/rfc8847>. | |||
rfc6351>. | ||||
[RFC7303] Thompson, H. and C. Lilley, "XML | [RFC8850] Holmberg, C., "Controlling Multiple Streams for | |||
Media Types", RFC 7303, | Telepresence (CLUE) Protocol Data Channel", RFC 8850, | |||
DOI 10.17487/RFC7303, July 2014, <h | DOI 10.17487/RFC8850, January 2021, | |||
ttp://www.rfc-editor.org/info/ | <https://www.rfc-editor.org/info/rfc8850>. | |||
rfc7303>. | ||||
44.2. Informative References | 29.2. Informative References | |||
[RFC3550] Schulzrinne, H., Casner, S., | [RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V. | |||
Frederick, R., and V. Jacobson, | Jacobson, "RTP: A Transport Protocol for Real-Time | |||
"RTP: A Transport Protocol for | Applications", STD 64, RFC 3550, DOI 10.17487/RFC3550, | |||
Real-Time Applications", STD 64, | July 2003, <https://www.rfc-editor.org/info/rfc3550>. | |||
RFC 3550, DOI 10.17487/RFC3550, | ||||
July 2003, <http:// | ||||
www.rfc-editor.org/info/rfc3550>. | ||||
[RFC3688] Mealling, M., "The IETF XML | [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | |||
Registry", BCP 81, RFC 3688, | DOI 10.17487/RFC3688, January 2004, | |||
DOI 10.17487/RFC3688, January 2004, | <https://www.rfc-editor.org/info/rfc3688>. | |||
<http://www.rfc-editor.org/info/ | ||||
rfc3688>. | ||||
[RFC4353] Rosenberg, J., "A Framework for | [RFC4353] Rosenberg, J., "A Framework for Conferencing with the | |||
Conferencing with the Session | Session Initiation Protocol (SIP)", RFC 4353, | |||
Initiation Protocol (SIP)", | DOI 10.17487/RFC4353, February 2006, | |||
RFC 4353, DOI 10.17487/RFC4353, | <https://www.rfc-editor.org/info/rfc4353>. | |||
February 2006, <http:// | ||||
www.rfc-editor.org/info/rfc4353>. | ||||
[RFC6838] Freed, N., Klensin, J., and T. | [RFC6838] Freed, N., Klensin, J., and T. Hansen, "Media Type | |||
Hansen, "Media Type Specifications | Specifications and Registration Procedures", BCP 13, | |||
and Registration Procedures", | RFC 6838, DOI 10.17487/RFC6838, January 2013, | |||
BCP 13, RFC 6838, DOI 10.17487/ | <https://www.rfc-editor.org/info/rfc6838>. | |||
RFC6838, January 2013, <http:// | ||||
www.rfc-editor.org/info/rfc6838>. | ||||
[RFC7667] Westerlund, M. and S. Wenger, "RTP | [RFC7667] Westerlund, M. and S. Wenger, "RTP Topologies", RFC 7667, | |||
Topologies", RFC 7667, | DOI 10.17487/RFC7667, November 2015, | |||
DOI 10.17487/RFC7667, | <https://www.rfc-editor.org/info/rfc7667>. | |||
November 2015, <http:// | ||||
www.rfc-editor.org/info/rfc7667>. | ||||
43. Acknowledgments | Acknowledgements | |||
The authors thank all the CLUErs for their precious feedbacks and | The authors thank all the CLUE contributors for their valuable | |||
support. Thanks also to Alissa Cooper, whose AD reviews helped us | feedback and support. Thanks also to Alissa Cooper, whose AD review | |||
improve the quality of the document. | helped us improve the quality of the document. | |||
Authors' Addresses | Authors' Addresses | |||
Roberta Presta | Roberta Presta | |||
University of Napoli | University of Napoli | |||
Via Claudio 21 | Via Claudio 21 | |||
Napoli 80125 | 80125 Napoli | |||
Italy | Italy | |||
EMail: roberta.presta@unina.it | Email: roberta.presta@unina.it | |||
Simon Pietro Romano | Simon Pietro Romano | |||
University of Napoli | University of Napoli | |||
Via Claudio 21 | Via Claudio 21 | |||
Napoli 80125 | 80125 Napoli | |||
Italy | Italy | |||
EMail: spromano@unina.it | Email: spromano@unina.it | |||
End of changes. 295 change blocks. | ||||
1969 lines changed or deleted | 1959 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |