OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 part of $LIBRARYNAME; | 5 part of $LIBRARYNAME; |
6 | 6 |
7 $(ANNOTATIONS)class $CLASSNAME$EXTENDS$IMPLEMENTS$NATIVESPEC { | 7 $(ANNOTATIONS)class $CLASSNAME$EXTENDS$IMPLEMENTS$NATIVESPEC { |
8 | 8 |
9 $if DART2JS | 9 $if DART2JS |
10 @DomName('Navigator.language') | 10 @DomName('Navigator.language') |
11 String get language => JS('String', '#.language || #.userLanguage', this, | 11 String get language => JS('String', '#.language || #.userLanguage', this, |
12 this); | 12 this); |
13 $endif | 13 $endif |
14 | 14 |
15 /** | 15 /** |
16 * Gets a stream (video and or audio) from the local computer. | 16 * Gets a stream (video and or audio) from the local computer. |
17 * | 17 * |
18 * Use [MediaStream.supported] to check if this is supported by the current | 18 * Use [MediaStream.supported] to check if this is supported by the current |
19 * platform. The arguments `audio` and `video` default to `false` (stream does | 19 * platform. The arguments `audio` and `video` default to `false` (stream does |
20 * not use audio or video, respectively). | 20 * not use audio or video, respectively). |
21 * | 21 * |
22 * Simple example usage: | 22 * Simple example usage: |
23 * | 23 * |
24 * window.navigator.getUserMedia(audio: true, video: true).then((stream) { | 24 * window.navigator.getUserMedia(audio: true, video: true).then((stream) { |
25 * var video = new VideoElement() | 25 * var video = new VideoElement() |
26 * ..autoplay = true | 26 * ..autoplay = true |
27 * ..src = Url.createObjectUrl(stream); | 27 * ..src = Url.createObjectUrlFromStream(stream); |
28 * document.body.append(video); | 28 * document.body.append(video); |
29 * }); | 29 * }); |
30 * | 30 * |
31 * The user can also pass in Maps to the audio or video parameters to specify | 31 * The user can also pass in Maps to the audio or video parameters to specify |
32 * mandatory and optional constraints for the media stream. Not passing in a | 32 * mandatory and optional constraints for the media stream. Not passing in a |
33 * map, but passing in `true` will provide a MediaStream with audio or | 33 * map, but passing in `true` will provide a MediaStream with audio or |
34 * video capabilities, but without any additional constraints. The particular | 34 * video capabilities, but without any additional constraints. The particular |
35 * constraint names for audio and video are still in flux, but as of this | 35 * constraint names for audio and video are still in flux, but as of this |
36 * writing, here is an example providing more constraints. | 36 * writing, here is an example providing more constraints. |
37 * | 37 * |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 } | 86 } |
87 } | 87 } |
88 | 88 |
89 @JSName('getUserMedia') | 89 @JSName('getUserMedia') |
90 void _getUserMedia(options, _NavigatorUserMediaSuccessCallback success, | 90 void _getUserMedia(options, _NavigatorUserMediaSuccessCallback success, |
91 _NavigatorUserMediaErrorCallback error) native; | 91 _NavigatorUserMediaErrorCallback error) native; |
92 $endif | 92 $endif |
93 | 93 |
94 $!MEMBERS | 94 $!MEMBERS |
95 } | 95 } |
OLD | NEW |