- From: CVS User dburnett <cvsmail@w3.org>
- Date: Wed, 19 Feb 2014 02:04:15 +0000
- To: public-dap-commits@w3.org
Update of /sources/public/2011/webrtc/editor/sources
In directory roscoe:/tmp/cvs-serv27480/sources
Modified Files:
getusermedia.html getusermedia.js
Log Message:
Added 20140218 archived version.
--- /sources/public/2011/webrtc/editor/sources/getusermedia.html 2013/12/26 03:19:20 1.2
+++ /sources/public/2011/webrtc/editor/sources/getusermedia.html 2014/02/19 02:04:14 1.3
@@ -1,23 +1,24 @@
<!DOCTYPE html>
+<!--
+ To publish this document, see instructions in README
+ -->
-<html lang="en-us">
+<html lang="en-us" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us">
<head>
- <meta name="generator" content=
- "HTML Tidy for HTML5 (experimental) for Linux https://github.com/w3c/tidy-html5/tree/68a9e74">
- <link href="getusermedia.css" rel="stylesheet" type="text/css">
+ <link href="getusermedia.css" rel="stylesheet" type="text/css" />
<title>Media Capture and Streams</title>
- <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
- <!--
- To publish this document, see instructions in README
- -->
-
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<script class="remove" src="http://www.w3.org/Tools/respec/respec-w3c-common"
type="text/javascript">
+//<![CDATA[
<!-- keep this comment -->
+ //]]>
</script>
<script class="remove" src="getusermedia.js" type="text/javascript">
+//<![CDATA[
<!-- keep this comment -->
+ //]]>
</script>
</head>
@@ -27,216 +28,250 @@
including audio and video, to be requested from a platform.</p>
</section>
+
<section id="sotd">
<p>This document is not complete. It is subject to major changes and, while
early experimentations are encouraged, it is therefore not intended for
- implementation. The API is based on preliminary work done in the WHATWG.</p>
+ implementation. The API is based on preliminary work done in the
+ WHATWG.</p>
</section>
+
<section class="informative" id="intro">
<h2>Introduction</h2>
+
<p>Access to multimedia streams (video, audio, or both) from local devices
(video cameras, microphones, Web cams) can have a number of uses, such as
real-time communication, recording, and surveillance.</p>
+
<p>This document defines the APIs used to get access to local devices that
- can generate multimedia stream data. This document also defines the MediaStream
- API by which JavaScript is able to manipulate the stream data or otherwise
- process it.</p>
+ can generate multimedia stream data. This document also defines the
+ MediaStream API by which JavaScript is able to manipulate the stream data
+ or otherwise process it.</p>
</section>
-<section id="conformance">
- <p>
- This specification defines conformance criteria that apply to a single
- product: the <dfn>user agent</dfn> that implements the
- interfaces that it contains.
- </p>
- <p>
- Implementations that use ECMAScript to implement the APIs defined in
- this specification must implement them in a manner consistent with the
- ECMAScript Bindings defined in the Web IDL specification [[!WEBIDL]],
- as this specification uses that specification and terminology.
- </p>
- </section>
- <section>
- <h2>Terminology</h2>
- <dl>
- <dt><i>HTML Terms:</i></dt>
- <dd>
- <p>
- The <code><a href="http://dev.w3.org/html5/spec/webappapis.html#eventhandler">
- EventHandler</a></code> interface represents a callback used for event
- handlers as defined in [[!HTML5]].
- </p>
- <p>
- The concepts <dfn><a href="http://dev.w3.org/html5/spec/webappapis.html#queue-a-task">
- queue a task</a></dfn> and
- <dfn><a href="http://dev.w3.org/html5/spec/webappapis.html#fire-a-simple-event">
- fires a simple event</a></dfn> are defined in [[!HTML5]].
- </p>
-
- <p>
- The terms <dfn><a href="http://dev.w3.org/html5/spec/webappapis.html#event-handlers">
- event handlers</a></dfn> and
- <dfn><a href="http://dev.w3.org/html5/spec/webappapis.html#event-handler-event-type">
- event handler event types</a></dfn> are defined in [[!HTML5]].
- </p>
- </dd>
-
- <dt><dfn>source</dfn></dt>
- <dd>
- <p>A source is the "thing" providing the source of a media stream
- track. The source is the broadcaster of the media itself. A
- source can be a physical webcam, microphone, local video or
- audio file from the user's hard drive, network resource, or
- static image.</p>
-
- <p>Some sources have an identifier which <em title="must"
- class="rfc2119">must</em> be unique to the application
- (un-guessable by another application) and persistent between
- application sessions (e.g., the identifier for a given
- source device/application must stay the same, but not be
- guessable by another application). Sources that must have an
- identifier are camera and microphone sources; local file
- sources are not required to have an identifier. Source
- identifiers let the application save, identify the
- availability of, and directly request specific sources.</p>
-
- <p>Other than the identifier, other bits of source identity
- are <strong>never</strong> directly available to the
- application until the user agent connects a source to a
- track. Once a source has been "released" to the application
- (either via a permissions UI, pre-configured allow-list, or
- some other release mechanism) the application will be able
- discover additional source-specific capabilities.</p>
-
- <p>Sources <strong>do not</strong> have constraints --
- tracks have constraints. When a source is connected to a
- track, it must conform to the constraints present on that
- track (or set of tracks).</p>
-
- <p>Sources will be released (un-attached) from a track when
- the track is ended for any reason.</p>
-
- <p>On the <code><a>MediaStreamTrack</a></code> object,
- sources are represented by a <code><a>sourceType</a></code>
- attribute. The behavior of APIs associated with the source's
- capabilities and settings change depending on the source
- type.</p>
-
- <p>Sources have <code><a>capabilities</a></code>
- and <code><a>settings</a></code>. The capabilities and settings
- are "owned" by the source and are common to any (multiple)
- tracks that happen to be using the same source (e.g., if two
- different track objects bound to the same source ask for
- the same capability or setting information, they will get back
- the same answer).</p>
- </dd>
-
- <dt><dfn title="state">Setting (Source Setting)</dfn></dt>
- <dd>
- <p>A setting refers to the immediate, current value of the
- source's (optionally constrained) capabilities. Settings are
- always read-only.</p>
- <p>A source's settings can change dynamically over time due to
- environmental conditions, sink configurations, or constraint
- changes. A source's settings must always conform to the current
- set of mandatory constraints that all of the tracks it is
- bound to have defined, and should do its best to conform to
- the set of optional constraints specified.</p>
- <p>A source's settings are directly exposed to audio and video
- track objects through individual read-only attributes. These
- attributes share the same name as their
- corresponding <a>capabilities</a>
- and <a>constraints</a>.</p>
- <p>Events are available that signal to the application that
- a source's settings have changed.</p>
- <p>A conforming user-agent <em title="must"
- class="rfc2119">must</em> support all the setting names
- defined in this spec.</p>
- </dd>
-
- <dt><dfn title="capabilities"
- id="dfn-capabilities">Capabilities</dfn></dt>
- <dd>
- <p>Source capabilities are the intrinsic "features" of a
- source object. For each source setting, there is a
- corresponding capability that describes whether it is
- supported by the source and if so, what the range of
- supported values are. Capabilities are expressed as either a
- series of settings (for enumerated-type capabilities) or as a
- min/max range.</p>
- <p>The values of the supported capabilities must be
- normalized to the ranges and enumerated types defined in
- this specification.</p>
- <p>Capabilities return the same underlying per-source
- capabilities, regardless of any user-supplied constraints
- present on the source (capabilities are independent of
- constraints).</p>
- <p>Source capabilities are effectively
- constant. Applications should be able to depend on a
- specific source having the same capabilities for any
- session.</p>
- </dd>
-
- <dt><dfn title="constraints"
- id="dfn-constraints">Constraints</dfn></dt>
-
- <dd>
- <p>Constraints are an optional feature for restricting the
- range of allowed variability on a source. Without provided
- constraints, implementations are free to select a source's
- settings from the full ranges of its supported capabilities, and
- to adjust those settings at any time for any reason.</p>
-
- <p>Constraints may be optional or mandatory. Optional
- constraints are represented by an ordered list, mandatory
- constraints are an unordered set. The order of the optional
- constraints is from most important (at the head of the list)
- to least important (at the tail of the list).</p>
-
- <p>Constraints are stored on the track object, not the
- source. Each track can be optionally initialized with
- constraints, or constraints can be added afterward through
- the constraint APIs defined in this spec.</p>
-
- <p>Applying track level constraints to a source is
- conditional based on the type of source. For example,
- read-only sources will ignore any specified constraints on
- the track.</p>
-
- <p>It is possible for two tracks that share a unique source
- to apply contradictory constraints. Under such
- contradictions, the implementation will mute both tracks and
- notify them that they are over-constrained.</p>
-
- <p>Events are available that allow the application to know
- when constraints cannot be met by the user agent. These
- typically occur when the application applies constraints
- beyond the capability of a source, contradictory
- constraints, or in some cases when a source cannot sustain
- itself in over-constrained scenarios (overheating,
- etc.).</p>
+ <section id="conformance">
+ <p>This specification defines conformance criteria that apply to a single
+ product: the <dfn>user agent</dfn> that implements the interfaces that it
+ contains.</p>
-
- <p>A correspondingly-named constraint exists for each
- corresponding source setting name and capability name. In
- general, user agents will have more flexibility to optimize
- the media streaming experience the fewer constraints are
- applied.</p>
- </dd>
- </dl>
- </section>
+ <p>Implementations that use ECMAScript to implement the APIs defined in
+ this specification must implement them in a manner consistent with the
+ ECMAScript Bindings defined in the Web IDL specification [[!WEBIDL]], as
+ this specification uses that specification and terminology.</p>
+ </section>
+
+
+ <section>
+ <h2>Terminology</h2>
+
+
+ <dl>
+ <dt><i>HTML Terms:</i>
+ </dt>
+
+
+ <dd>
+ <p>The <code><a href=
+ "http://dev.w3.org/html5/spec/webappapis.html#eventhandler">EventHandler</a></code>
+ interface represents a callback used for event handlers as defined in
+ [[!HTML5]].</p>
+
+
+ <p>The concepts <dfn><a href=
+ "http://dev.w3.org/html5/spec/webappapis.html#queue-a-task">queue a
+ task</a></dfn> and <dfn><a href=
+ "http://dev.w3.org/html5/spec/webappapis.html#fire-a-simple-event">fires
+ a simple event</a></dfn> are defined in [[!HTML5]].</p>
+
+
+ <p>The terms <dfn><a href=
+ "http://dev.w3.org/html5/spec/webappapis.html#event-handlers">event
+ handlers</a></dfn> and <dfn><a href=
+ "http://dev.w3.org/html5/spec/webappapis.html#event-handler-event-type">
+ event handler event types</a></dfn> are defined in [[!HTML5]].</p>
+ </dd>
+
+
+ <dt><dfn>source</dfn>
+ </dt>
+
+
+ <dd>
+ <p>A source is the "thing" providing the source of a media stream
+ track. The source is the broadcaster of the media itself. A source can
+ be a physical webcam, microphone, local video or audio file from the
+ user's hard drive, network resource, or static image.</p>
+
+
+ <p>Some sources have an identifier which <em title="must" class=
+ "rfc2119">must</em> be unique to the application (un-guessable by
+ another application) and persistent between application sessions (e.g.,
+ the identifier for a given source device/application must stay the
+ same, but not be guessable by another application). Sources that must
+ have an identifier are camera and microphone sources; local file
+ sources are not required to have an identifier. Source identifiers let
+ the application save, identify the availability of, and directly
+ request specific sources.</p>
+
+
+ <p>Other than the identifier, other bits of source identity are
+ <strong>never</strong> directly available to the application until the
+ user agent connects a source to a track. Once a source has been
+ "released" to the application (either via a permissions UI,
+ pre-configured allow-list, or some other release mechanism) the
+ application will be able discover additional source-specific
+ capabilities.</p>
+
+
+ <p>Sources <strong>do not</strong> have constraints -- tracks
+ have constraints. When a source is connected to a track, it
+ must, possibly in combination with UA processing (e.g.,
+ downsampling), conform to the constraints present on that
+ track (or set of tracks).</p>
+
+
+ <p>Sources will be released (un-attached) from a track when the track
+ is ended for any reason.</p>
+
+
+ <p>On the <code><a>MediaStreamTrack</a></code> object, sources are
+ represented by a <code><a>sourceType</a></code> attribute. The behavior
+ of APIs associated with the source's capabilities and settings change
+ depending on the source type.</p>
+
+
+ <p>Sources have <code><a>capabilities</a></code> and
+ <code><a>settings</a></code>. The capabilities and settings are "owned"
+ by the source and are common to any (multiple) tracks that happen to be
+ using the same source (e.g., if two different track objects bound to
+ the same source ask for the same capability or setting information,
+ they will get back the same answer).</p>
+ </dd>
+
+
+ <dt>
+ <a>Setting</a> (Source Setting)
+ </dt>
+
+
+ <dd>
+ <p>A setting refers to the immediate, current value of the source's
+ (optionally constrained) capabilities. Settings are always
+ read-only.</p>
+
+
+ <p>A source's settings can change dynamically over time due to
+ environmental conditions, sink configurations, or constraint changes. A
+ source's settings must always conform to the current set of mandatory
+ constraints that all of the tracks it is bound to have defined, and
+ should do its best to conform to the set of optional constraints
+ specified.</p>
+
+
+ <p>Although settings are a property of the source, they are
+ only exposed to the application through the tracks attached to
+ the source. The <a>Constrainable</a> interface provides this
+ exposure.</p>
+
+
+ <p>A conforming user-agent <em title="must" class="rfc2119">must</em>
+ support all the setting names defined in this spec.</p>
+ </dd>
+
+
+ <dt>
+ <a>Capabilities</a>
+ </dt>
+
+
+ <dd>
+ <p>Source capabilities are the intrinsic "features" of a
+ source object. For each source setting, there is a
+ corresponding capability that describes whether it is
+ supported by the source and if so, what the range of supported
+ values are. As with settings, capabilities are exposed to the
+ application via the <a>Constrainable</a> interface.</p>
+
+
+ <p>The values of the supported capabilities must be normalized to the
+ ranges and enumerated types defined in this specification.</p>
+
+
+ <p>A <a>getCapabilities()</a> call on a track returns the same
[5968 lines skipped]
--- /sources/public/2011/webrtc/editor/sources/getusermedia.js 2013/12/26 03:19:20 1.2
+++ /sources/public/2011/webrtc/editor/sources/getusermedia.js 2014/02/19 02:04:15 1.3
@@ -19,7 +19,7 @@
// copyrightStart: "2005",
// if there is a previously published draft, uncomment this and set its YYYY-MM-DD
- prevED: "http://dev.w3.org/2011/webrtc/editor/archives/20131105/getusermedia.html",
+ prevED: "http://dev.w3.org/2011/webrtc/editor/archives/20131225/getusermedia.html",
// if there a publicly available Editor's Draft, this is the link
edDraftURI: "http://dev.w3.org/2011/webrtc/editor/getusermedia.html",
@@ -29,7 +29,7 @@
// if you want to have extra CSS, append them to this list
// it is recommended that the respec.css stylesheet be kept
- extraCSS: ["http://dev.w3.org/2009/dap/ReSpec.js/css/respec.css"],
+ //extraCSS: ["http://dev.w3.org/2009/dap/ReSpec.js/css/respec.css"],
//extraCSS: ["../../../2009/dap/ReSpec.js/css/respec.css"],
// editors, add as many as you like
Received on Wednesday, 19 February 2014 02:04:17 UTC