blob: aff25aaaa37a11f37e944012e820ed937d5313e5 (
plain)
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
|
---
title: CanvasCaptureMediaStreamTrack.requestFrame()
slug: Web/API/CanvasCaptureMediaStreamTrack/requestFrame
tags:
- 캔버스
translation_of: Web/API/CanvasCaptureMediaStreamTrack/requestFrame
---
<div>{{APIRef("Media Capture and Streams")}}</div>
<p><span class="seoSummary">The {{domxref("CanvasCaptureMediaStreamTrack")}} 의 메서드 <strong><code>requestFrame()</code></strong> 은 canvas에서 프레임을 캡처하여 stream으로 보낼 것을 요청한다. 렌더링 타이밍과 프레임 캡처를 섬세하게 제어해야하는 애플리케이션은 </span> <code>requestFrame()</code> 을 사용해 프레임을 캡처할 시기를 직접 지정할 수 있다.</p>
<p>프레임의 자동 캡처를 방지하려면 <code>requestFrame()</code> 이 호출될 때만 프레임이 캡처되도록 {{domxref("HTMLCanvasElement.captureStream", "captureStream()")}} 메서드에 값을 0으로 지정하세요.</p>
<h2 id="구문">구문</h2>
<pre class="syntaxbox notranslate"><var>stream</var>.requestFrame();
</pre>
<h3 id="Return_값">Return 값</h3>
<p><code>undefined</code></p>
<h2 id="참고_사항">참고 사항</h2>
<p>현재 사양에는 canvas가 origin-clean 이 아닌 경우 예외를 발생시키지 않는다는 점을 지적하는 문제가 플래그로 표시되어 있다. 이것은 앞으로 바뀔 수 있기 때문에 계획을 미리 세우고 <code>SecurityError</code> (적용될 수 있는 구체적인 오류는 사양에 언급되어 있지 않지만, 유력한 후보임)와 같은 예외사항을 지켜보는 것이 좋다.</p>
<h2 id="예시">예시</h2>
<pre class="brush: js notranslate">// 캡처할 canvas 요소 찾기
var canvasElt = document.getElementsByTagName("canvas")[0];
// stream 가져오기
var stream = canvasElt.captureStream(25); // 25 FPS
// canvas의 현재 상태를 프레임으로 stream에 보내기
stream.getVideoTracks()[0].requestFrame();
</pre>
<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 DOM Elements', '#dom-canvascapturemediastreamtrack-requestframe', 'CanvasCaptureMediaStream.requestFrame()')}}</td>
<td>{{Spec2('Media Capture DOM Elements')}}</td>
<td>Initial definition</td>
</tr>
</tbody>
</table>
<h2 id="브라우저_호환성">브라우저 호환성</h2>
<div class="hidden">이 페이지의 호환성 표는 구조화된 데이터에서 생성됩니다. 만약 데이터에 기여하고 싶다면, <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> 을 확인하여 pull request를 보내주세요</div>
<p>{{Compat("api.CanvasCaptureMediaStreamTrack.requestFrame")}}</p>
<h2 id="더_보기">더 보기</h2>
<ul>
<li>{{domxref("CanvasCaptureMediaStream")}}, the interface it belongs to.</li>
<li>{{HTMLElement("canvas")}}</li>
</ul>
|