diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
commit | 33058f2b292b3a581333bdfb21b8f671898c5060 (patch) | |
tree | 51c3e392513ec574331b2d3f85c394445ea803c6 /files/ja/web/api/mediastreamtrack/stop | |
parent | 8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff) | |
download | translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2 translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip |
initial commit
Diffstat (limited to 'files/ja/web/api/mediastreamtrack/stop')
-rw-r--r-- | files/ja/web/api/mediastreamtrack/stop/index.html | 125 |
1 files changed, 125 insertions, 0 deletions
diff --git a/files/ja/web/api/mediastreamtrack/stop/index.html b/files/ja/web/api/mediastreamtrack/stop/index.html new file mode 100644 index 0000000000..be6c01e780 --- /dev/null +++ b/files/ja/web/api/mediastreamtrack/stop/index.html @@ -0,0 +1,125 @@ +--- +title: MediaStreamTrack.stop() +slug: Web/API/MediaStreamTrack/stop +translation_of: Web/API/MediaStreamTrack/stop +--- +<p>{{APIRef("Media Capture and Streams")}}</p> + +<p>{{domxref("MediaStreamTrack")}}の<strong><code>stop()</code></strong>はトラックを停止します。</p> + +<h2 id="文法">文法</h2> + +<pre class="syntaxbox"><em>MediaStreamTrack</em>.stop(); +</pre> + +<p><code>stop()</code> の呼び出しは、 {{glossary("user agent")}}へ、トラックのソース(ファイル、ネットワークストリーム、ローカルカメラやマイク)がこれ以上<code>MediaStreamTrack</code>で必要とされないことを伝えます。複数のトラックが同じソースを使用すること(例えば、2つのタブがデバイスのマイクを使っている場合など)もあるため、ソースが必ずしも直ぐに停止させられる必要はありません。その代わり、トラックからの関連付けが解除され、そのトラックオブジェクトが停止されます。ソースからメディアトラックが使用されなくなると、ソースは実際に完全に停止させられるでしょう。</p> + +<p><code>stop()</code>を呼び出した直後に、{{domxref("MediaStreamTrack.readyState", "track")}}の状態は<code>ended</code>になります。</p> + +<h2 id="例">例</h2> + +<p>In this example, we see a function which stops a streamed video by calling <code>stop()</code> on every track on a given {{HTMLElement("video")}}.</p> + +<p>この例では、与えられた{{HTMLElement("video")}}の各トラックの<code>stop()</code>を呼び出すことで、ストリーミングされているビデオを停止する関数を定義しています。</p> + +<pre class="brush: js">function stopStreamedVideo(videoElem) { + let stream = videoElem.srcObject; + let tracks = stream.getTracks(); + + tracks.forEach(function(track) { + track.stop(); + }); + + videoElem.srcObject = null; +}</pre> + +<p>{{domxref("HTMLMediaElement.srcObject", "srcObject")}}プロパティからビデオ要素のストリームを取得することで機能しています。次に、{{domxref("MediaStream.getTracks", "getTracks()")}}メソッドを呼び出すことで、ストリームのトラックリストを取得しています。ここから、{{jsxref("Array.forEach", "forEach()")}}を使ってトラックリストから各トラックを繰り返し呼び出し、それぞれのトラックで<code>stop()</code>メソッドを呼び出しています。</p> + +<p>最後に、{{domxref("MediaStream")}}オブジェクトへの参照を解くために<code>srcObject</code>に<code>null</code>を設定することで、このオブジェクトは解放できるようになります。</p> + +<h2 id="仕様">仕様</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">仕様</th> + <th scope="col">状況</th> + <th scope="col">コメント</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{ SpecName('Media Capture', '#widl-MediaStreamTrack-stop', 'MediaStreamTrack.stop()') }}</td> + <td>{{ Spec2('Media Capture') }}</td> + <td>初版</td> + </tr> + </tbody> +</table> + +<h2 id="ブラウザ互換性">ブラウザ互換性</h2> + +<p>{{ CompatibilityTable }}</p> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Chrome</th> + <th>Edge</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>Basic support</td> + <td>{{ CompatVersionUnknown }}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{ CompatGeckoDesktop(34) }}<sup>[1]</sup></td> + <td>{{ CompatNo }}</td> + <td>{{ CompatVersionUnknown }}</td> + <td>{{ CompatUnknown }}</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Android</th> + <th>Android Webview</th> + <th>Edge</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + <th>Chrome for Android</th> + </tr> + <tr> + <td>Basic support</td> + <td>{{ CompatUnknown }}</td> + <td>{{ CompatVersionUnknown }}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{ CompatGeckoMobile(34) }}</td> + <td>{{ CompatNo }}</td> + <td>{{ CompatUnknown }}</td> + <td>{{ CompatUnknown }}</td> + <td>{{ CompatVersionUnknown }}</td> + </tr> + </tbody> +</table> +</div> + +<p>[1] Firefox 52以前のバージョンでは、ローカルトラック({{domxref("MediaDevices.getUserMedia", "getUserMedia()")}}によって取得したもの)のみが停止可能です。 現在は、<a href="/en-US/docs/Glossary/WebRTC">WebRTC</a>に関連づけられた{{domxref("MediaStream")}} や<a href="/en-US/docs/Web/API/Web_Audio_API">Web Audio API</a> ストリーム、{{domxref("CanvasCaptureMediaStream")}}を含む、全ての種類のトラックが停止可能です。</p> + +<h2 id="関連項目">関連項目</h2> + +<ul> + <li>このメソッドが属する{{domxref("MediaStreamTrack")}}インタフェース</li> + <li>{{domxref("MediaStreamTrack.readyState")}}</li> + <li>{{event("ended")}}</li> +</ul> |