forked from w3c/webrtc-charter
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathwebrtc-charter.html
398 lines (346 loc) · 23.5 KB
/
webrtc-charter.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset=utf-8>
<title>[DRAFT] Web Real-Time Communications Working Group Charter</title>
<link rel="stylesheet" href="//www.w3.org/2005/10/w3cdoc.css" type="text/css" media="screen"/>
<link rel="stylesheet" type="text/css" href="//www.w3.org/Guide/pubrules-style.css"/>
<link rel="stylesheet" type="text/css" href="//www.w3.org/2006/02/charter-style.css"/>
</head>
<body>
<ul id="navbar" style="font-size: small"><li><a href="#scope">Scope</a></li><li><a href="#deliverables">Deliverables</a></li><li><a href="#coordination">Dependencies and Liaisons</a></li><li><a href="#participation">Participation</a></li><li><a href="#communication">Communication</a></li><li><a href="#decisions">Decision Policy</a></li><li><a href="#patentpolicy">Patent </a></li><li><a href="#about">About this Charter</a></li></ul>
<p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="//www.w3.org/Icons/w3c_home" width="72"/></a> <a class="domainlogo" href="/UbiWeb/"><img src="//www.w3.org/Icons/ubi212" alt="Ubiquitous Web Domain"/></a> </p>
<h1 id="title">[DRAFT] Web Real-Time Communications Working Group Charter</h1>
<p><em>This is a draft for an updated W3C WebRTC Working Group charter; it has no formal standing. See also the <a href="http://www.w3.org/2011/04/webrtc-charter.html">current WebRTC Working Group charter</a>.</em></p>
<p class="mission">The
<strong>mission</strong> of the Web Real-Time Communications Working Group, part of
the <a href="http://www.w3.org/2007/uwa/Activity.html">Ubiquitous Web Applications Activity</a>, is to define client-side APIs to enable Real-Time Communications in Web browsers.</p>
<p>These APIs should enable building applications that can be run inside a browser, requiring no extra downloads or plugins, that allow communication between parties using audio, video and supplementary real-time communication, without having to use intervening servers (unless needed for firewall traversal, or for providing intermediary services). APIs enabling supplementary functions, such as recording, image capture and screen sharing are also in scope.</p>
<div class="noprint">
<p class="join"><a href="http://www.w3.org/2004/01/pp-impl/47318/join">Join the Web Real-Time Communications Working Group</a>.</p>
</div>
<table class="summary-table"><tr id="Duration"><th rowspan="1" colspan="1">End date</th><td rowspan="1" colspan="1">TBD</td></tr><tr><th rowspan="1" colspan="1">Confidentiality</th><td rowspan="1" colspan="1">Proceedings are <a href="/2005/10/Process-20051014/comm.html#confidentiality-levels">
public
</a></td></tr><tr><th rowspan="1" colspan="1">Initial Chairs</th><td rowspan="1" colspan="1"><ul>
<li>Harald Alvestrand</li>
<li>Stefan Håkansson</li>
</ul></td></tr><tr><th rowspan="1" colspan="1">Team Contacts<br/>
(FTE %: 10)</th><td rowspan="1" colspan="1">Dominique Hazaël-Massieux</a></td></tr><tr><th rowspan="1" colspan="1">Usual Meeting Schedule</th><td rowspan="1" colspan="1">Teleconferences: approximately 1 per month
<br/>
Face-to-face: up to 3-4 per year</td></tr></table>
<div class="scope">
<h2 id="scope">Scope</h2>
<p>Enabling real-time communications between Web browsers require the following client-side technologies to be available:</p>
<ul>
<li>API functions to explore device capabilities, e.g. camera, microphone, speakers,</li>
<li>API functions to capture media from local devices (e.g. camera and microphone, but also output devices such as a screen),</li>
<li>API functions for encoding and other processing of those media streams,</li>
<li>API functions for establishing direct peer-to-peer connections, including firewall/NAT traversal</li>
<li>API functions for decoding and processing (including echo cancelling, stream synchronization and a number of other functions) of those streams at the incoming end,</li>
<li>Delivery to the user of those media streams via local screens and audio output devices (partially covered with HTML5)</li>
</ul>
<h3>Success Criteria</h3>
<p>To advance to Proposed Recommendation, each specification is expected to have two independent implementations of each feature defined in the specification.</p>
<p>To advance to Proposed Recommendation, interoperability between the independent implementations (that is, bidirectional audio and video communication between the implementations) should be demonstrated.</p>
<div>
<h3>Out of Scope</h3>
<p>The definition of the network protocols used to establish the connections between peers is out of scope for this group; in general, it is expected that protocols considerations will be handled in the IETF.</p>
<p>The definition of any new codecs for audio and video is out of scope.</p>
</div>
</div>
<div>
<h2 id="deliverables">Deliverables</h2>
<h3>Recommendation-Track Deliverables</h3>
<p>The working group will deliver specifications that cover at least the following functions, unless they are found to be fully specified within other working groups' finished results:</p>
<dl>
<dt>Media Stream Functions</dt>
<dd>API functions to manipulate media streams for interactive real-time communications, connecting various processing functions to each other, and to media devices and network connections, including media manipulation functions for e.g. allowing to synchronize streams. Supplementary functions such as recording of media streams are also in scope.</dd>
<dt>Audio Stream Functions</dt>
<dd>An extension of the Media Stream Functions to process audio streams, to enable features such as automatic gain control, mute functions and echo cancellation.</dd>
<dt>Video Stream Functions</dt>
<dd>An extension of the Media Stream Functions to process video streams, to enable features such as bandwidth limiting, image manipulation or "video mute".</dd>
<dt>Functional Component Functions</dt>
<dd>API functions that allow to query for the components present in an implementation, instantiate them, and connect them to media streams.</dd>
<dt>P2P Connection Functions</dt>
<dd>API functions to establish peer-to-peer connections between Web browsers, independent of the network protocols used to establish the connections between peers. Included in this category are also API functions to allow identification of the peer.</dd>
</dl>
<p>The working group may decide to group the specified functions in one or more specifications. The Working Group has already started and will continue work on the following specifications:</p>
<dl>
<dt><a href="http://w3c.github.io/webrtc-pc/">WebRTC 1.0: Real-time Communication Between Browsers</a></dt>
<dd>JavaScript APIs to allow media and data to be sent to and received from another browser or device implementing the appropriate set of real-time protocols</dd>
<dt><a href="http://w3c.github.io/webrtc-stats/webrtc-stats.html">Identifiers for WebRTC's Statistics API</a></dt>
<dd>JavaScript APIs that allow access to statistical information about a peer-to-peer connection established via the WebRTC API</dd>
</dl>
<p>as well as on the following specifications jointly developed with the <a href="http://www.w3.org/2009/dap/">Device APIs Working Group</a>:</p>
<dt><a href="http://w3c.github.io/mediacapture-main/getusermedia.html">Media Capture and Streams</a></dt>
<dd>JavaScript APIs that allow local media, including audio and video, to be requested from a platform</dd>
<dt><a href="http://w3c.github.io/mediacapture-record/MediaRecorder.html">MediaStream Recording</a></dt>
<dd>a JavaScript API to record MediaStreams</dd>
<dt><a href="http://w3c.github.io/mediacapture-image/">MediaStream Image Capture</A></dt>
<dd>a JavaScript API to capture still images from a video MediaStream</dd>
<dt><a href="http://w3c.github.io/mediacapture-depth/">Media Capture Depth Stream Extensions</a></dt>
<dd>An extension to the Media Capture and Streams API to capture depth streams (e.g. from 3D cameras)</dd>
<dt><a href="http://w3c.github.io/mediacapture-fromelement/">HTMLMediaElement extension: MediaStream generation</a></dt>
<dd>An extension to HTML’s HTMLMediaElement to allow generating a MediaStream from an existing audio or video element.</dd>
<dt><a href="http://w3c.github.io/mediacapture-output/">Audio Output Devices API</a></dt>
<dd>JavaScript APIs that let a Web application manage how audio is rendered on the user audio output devices</dd>
<dt><a href="https://github.com/w3c/mediacapture-screen-share">Screen Capture API</a></dt>
<dd>An extension to the Media Capture and Streams API to use a user's display, or parts thereof, as the source of a MediaStream.</dd>
</dl>
<p>This work will be done in collaboration with the IETF. The W3C will define APIs to ensure that application developers can control the components or the architecture for selection and profiling of the wire protocols that will be produced by the IETF Real-Time Communication in WEB-browsers (RTCWeb) Working Group. While the specified API Functions will not constrain implementations into supporting a specific profile, they will be compatible with the Profile that will be specified by the RTCWeb Working Group.</p>
<p>As the name implies, <a href="http://w3c.github.io/webrtc-pc/">WebRTC 1.0: Real-time Communication Between Browsers</a> is to be considered as a first version of APIs for real-time communication. The working group will, once <a href="http://w3c.github.io/webrtc-pc/">WebRTC 1.0: Real-time Communication Between Browsers</a> is considered stable enough, consider working on a new set of APIsfor real-time communication. The activities in the <a href="http://www.w3.org/community/ortc/">ORTC (Object Real-time Communications) Community Group</a> indicates that there is interest in a new set of APIs.</p>
<p>The specified API Functions and the requirements on their implementation must offer functionality that ensures that users' expectations of privacy and control over their devices are met - this includes, but is not limited to, ensuring that users can control what local devices an application can access for capturing media, and are able to at any time revoke that access.</p>
<p>Similarly, all the deliverables must address issues of security - this includes, but is not limited to, ensuring that arbitrary UDP packets cannot be sent to arbitrary destinations and ports. The security and privacy goals and requirements will be developed in coordination with the IETF RTCWeb Working Group.</p>
<div id="ig-other-deliverables">
<h3>Other Deliverables</h3>
<p>A comprehensive test suite for all features of a specification is necessary to ensure the specification's robustness, consistency, and implementability, and to promote interoperability between User Agents. Therefore, each specification must have a companion test suite, which should be completed by the end of the Last Call phase, and must be completed, with an implementation report, before transition from Candidate Recommendation to Proposed Recommendation. Additional tests may be added to the test suite at any stage of the Recommendation track, and the maintenance of a implementation report is encouraged. </p>
<p>Other non-normative documents may be created such as:</p>
<ul>
<li>Primers</li>
<li>Requirements and use case document for specifications.</li>
<li>Non-normative group notes</li>
</ul>
<p>Given sufficient resources, this Working Group should review other working groups' deliverables that are identified as being relevant to the Working Group's mission. </p>
</div>
<h3>Milestones</h3>
<table class="roadmap">
<caption>
Milestones
</caption>
<tfoot>
<tr>
<td colspan="6">
Note: The group will document significant changes from this initial schedule on the <a href="http://www.w3.org/2011/04/webrtc/">group home page</a>.
</td>
</tr>
</tfoot>
<tbody>
<tr>
<th>
Specification
</th>
<th>
<abbr title="First Working Draft">FPWD</abbr>
</th>
<th>
<abbr title="Candidate Recommendation">CR</abbr>
</th>
<th>
<abbr title="Proposed Recommendation">PR</abbr>
</th>
<th>
<abbr title="Recommendation">Rec</abbr>
</th>
</tr>
<tr>
<th>
Media Capture and Streams
</th>
<td class="WD1">
<a href="http://www.w3.org/TR/2011/WD-webrtc-20111027/">2011-10-27</a>
</td>
<td class="CR"> Q2 2015
</td>
<td class="PR">
</td>
<td class="REC">
</td>
</tr>
<tr>
<th>
WebRTC 1.0: Real-time Communication Between Browsers
</th>
<td class="WD1">
<a href="http://www.w3.org/TR/2011/WD-webrtc-20111027/">2011-10-27</a>
</td>
<td class="CR"> Q2 2015
</td>
<td class="PR">
</td>
<td class="REC">
</td>
</tr>
<tr>
<th>
MediaStream Recording
</th>
<td class="WD1">
<a href="http://www.w3.org/TR/2013/WD-mediastream-recording-20130205/">2013-02-25</a>
</td>
<td class="CR">
</td>
<td class="PR">
</td>
<td class="REC">
</td>
</tr>
<tr>
<th>
MediaStream Image Capture
</th>
<td class="WD1">
<a href="http://www.w3.org/TR/2013/WD-image-capture-20130709/">2013-07-09</a>
</td>
<td class="CR">
</td>
<td class="PR">
</td>
<td class="REC">
</td>
</tr>
<tr>
<th>
Media Capture Depth Stream Extensions
</th>
<td class="WD1">
<a href="http://www.w3.org/TR/2014/WD-mediacapture-depth-20141007/">2014-10-07</a>
</td>
<td class="CR">
</td>
<td class="PR">
</td>
<td class="REC">
</td>
</tr>
<tr>
<th>
Identifiers for WebRTC's Statistics API
</th>
<td class="WD1">
<a href="http://www.w3.org/TR/2014/WD-webrtc-stats-20141021/">2014-10-21</a>
</td>
<td class="CR">
</td>
<td class="PR">
</td>
<td class="REC">
</td>
</tr>
<tr>
<th>
HTMLMediaElement extension: MediaStream generation
</th>
<td class="WD1">
Q1 2015
</td>
<td class="CR">
</td>
<td class="PR">
</td>
<td class="REC">
</td>
</tr>
<tr>
<th>
Audio output API
</th>
<td class="WD1">
Q1 2015
</td>
<td class="CR">
</td>
<td class="PR">
</td>
<td class="REC">
</td>
</tr>
<tr>
<th>
Screen Capture API
</th>
<td class="WD1">
Q1 2015
</td>
<td class="CR">
</td>
<td class="PR">
</td>
<td class="REC">
</td>
</tr>
</tbody>
</table>
</div>
<div class="dependencies">
<h2 id="coordination">Dependencies and Liaisons</h2>
<h3>W3C Groups</h3>
<dl>
<dt><a href="http://www.w3.org/html/wg/">HTML Working Group</a></dt>
<dd>The HTML Working Group defines a number of markup elements and APIs that serves as the basis on which the RTC APIs have been developed; in particular, several specifications of this group extends the <code><audio></code> and <code><video></code> elements</dd>
<dt><a href="http://www.w3.org/2008/webapps/">Web Applications Working Group</a></dt>
<dd>Some of the Web Applications Working Group APIs (such as the Web Sockets API) have served as inspiration or starting points for the APIs developed by the RTC Working Group. The work on Push Notifications provides an important feature for many WebRTC use cases. In addition, all the APIs developed by this group are based on WebIDL which the Web Applications Working Group is specifying.</dd>
<dt><a href="http://www.w3.org/2009/dap/">Device APIs Working Group</a></dt>
<dd>The Device APIs Working Group jointly develops the media capture-related APIs with this group.</dd>
<dt><a href="http://www.w3.org/2011/audio/">Audio Working Group</a></dt>
<dd>The API developed by the Audio Working Group builds upon the MediaStream object built by this group; further collaboration on the management of audio output device is expected</dd>
<dt><a href="http://www.w3.org/2011/webappsec/">Web Application Security Working Group</a></dt>
<dd>The Web Application Security Working Group is developing guidance on APIs that expose sensitive information, and an API to manage permissions, both of which matter to several of this group specifications</dd>
<dt><a href="http://www.w3.org/2012/webcrypto/">Web Cryptography API</a></dt>
<dd>WebRTC connections are encrypted end-to-end; collaboration is expected with the Web Cryptography Working Group on exposing and manipulating some of the cryptography functions used</dd>
<dt><a href="http://www.w3.org/2014/secondscreen/"> Second Screen Presentation Working Group</a></dt>
<dd>The Second Screen Presentation Working Group is developing APIs to allow rendering of media on secondary devices; potential overlap with features enabled by the Audio Output Device APIs will need to be looked at</dd>
<dt>
<a href="http://www.w3.org/WAI/PF/">WAI Protocols and Formats Working Group</a></dt>
<dd>Reviews from the WAI PF Working Group will be required to ensure the APIs allow to create an accessible user experience.</dd>
<dt><a href="http://www.w3.org/2011/webtv/">Web and TV Interest Group</a></dt>
<dd>Work on gathering use cases and requirements for Home Networking scenarios within the Web and TV Interest Group may uncover aspects that affect the design of real-time communications functions. The RTC Working Group will coordinate with the Web and TV Interest Group on these use cases and requirements as appropriate.</dd>
<dt><a href="http://www.w3.org/Privacy/">Privacy Interest Group</a></dt>
<dd>Several of the specifications developed by this group have potential impact on the privacy of users; reviews from the privacy interest group will be sought on these specifications</dd>
<dt><a href="http://www.w3.org/Security/IG/">Web Security Interest Group</a></dt>
<dd>Several of the specifications developed by this group have a complex impact on the security model of the Web; reviews from the Web Security Interest Group will be sought.</dd>
</dl>
<h3>External Groups</h3>
<dl>
<dt><a href="http://datatracker.ietf.org/wg/rtcweb/">IETF Real-Time Communication in WEB-browsers group</a> (RTCWeb)</dt>
<dd>The RTC APIs developed by this group will build upon the protocols and formats developed in the IETF RTCWeb Working Group.</dd>
</dl>
</div>
<div class="participation">
<h2 id="participation">Participation</h2>
<p>To be successful, the Web Real-Time Communications Working Group is expected to have 10 or more active participants for its
duration. Effective participation to Web Real-Time Communications Working Group is expected to consume one work day per week for each
participant; two days per week for
editors. The Web Real-Time Communications Working Group will
allocate also the necessary resources for building Test
Suites for each specification.</p>
<p>Participants are reminded of the <a href="/2005/10/Process-20051014/groups.html#good-standing">
Good Standing requirements</a> of the W3C Process.</p>
</div>
<div class="communication">
<h2 id="communication">Communication</h2>
<p>This group primarily conducts its work on the public mailing list <a href="mailto:public-webrtc@w3.org">public-webrtc@w3.org</a> (<a href="http://lists.w3.org/Archives/Public/public-webrtc/" title="Public archives of the Web RTC mailing-list">archives</a>).</p>
<p>The group uses a Member-confidential mailing list for administrative purposes and, at the discretion of the Chairs and participants of the group, for Member-only discussions in special cases when a particular participant requests such a discussion.</p>
<p>Information about the group (deliverables, participants,
face-to-face
meetings, teleconferences, etc.) is
available from the <a href="http://www.w3.org/2011/04/webrtc/">Web Real-Time Communications Working Group home page</a>.</p>
</div>
<div class="decisions">
<h2 id="decisions">Decision Policy</h2>
<p>As explained in the Process Document (<a href="/Consortium/Process/policies#Consensus">section 3.3</a>), this group will seek to make decisions when there is consensus. When the Chair puts a question and observes dissent, after due consideration of different opinions, the Chair should record a decision (possibly after a formal vote) and any objections, and move on.</p>
</div>
<div class="patent">
<h2 id="patentpolicy">Patent Policy</h2>
<p>This Working Group operates under the <a href="/Consortium/Patent-Policy-20040205/">W3C
Patent Policy</a> (5 February 2004 Version). To promote the
widest adoption of Web standards, W3C seeks to issue
Recommendations that can be implemented, according to this
policy, on a Royalty-Free basis.</p>
<p>For more information about disclosure obligations for
this group, please see the <a href="/2004/01/pp-impl/">W3C
Patent Policy Implementation</a>.</p>
</div>
<h2 id="about">About this Charter</h2>
<p>This charter for the Web Real-Time Communications Working Group has been created according to
<a href="/Consortium/Process/groups#GAGeneral">section
6.2</a> of the <a href="/Consortium/Process">Process
Document</a>. In the event of a
conflict between this document or the provisions of any charter
and the W3C Process, the W3C Process shall take precedence.</p>
<p>This charter updates and replaces the <a href="http://www.w3.org/2011/04/webrtc-charter.html">first WebRTC Working Group charter</a> approved in 2011.</p>
<hr/>
<address>François Daoust and Dominique Hazaël-Massieux, based on initial input from Harald Alvestrand
</address>
<p class="copyright"><a rel="Copyright" href="/Consortium/Legal/ipr-notice#Copyright">Copyright</a> ©2015 <a href="/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, <a href="http://www.ercim.eu/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>, <a href="http://ev.buaa.edu.cn/">Beihang</a>), All Rights Reserved.</p>
</body>
</html>