forked from OpenAyame/ayame-web-sdk-samples
/
displaymedia.html
59 lines (59 loc) · 2.39 KB
/
displaymedia.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
<html lang="ja">
<head>
<meta charset="utf-8">
<title>Ayame getDisplayMedia() Sample</title>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v3.0.1/dist/mini-default.min.css">
</head>
<body>
<header class="sticky row">
<h4>Ayame getDisplayMedia() Sample</h4>
</header>
<div>
<p>ルームID
<input id="roomIdInput" type="text" value=""></input>
</p>
<p>クライアントID
<input id="clientIdInput" disabled type="text" value=""></input>
</p>
<button onclick="startConn();">接続</button>
<button onclick="disconnect();">切断</button>
</div>
<div style="float:left;">
<video id="local-video" muted autoplay controls style="width: 400px; height: 300px; border: 1px solid black;"></video>
</div>
<div style="float:right;">
<video id="remote-video" autoplay controls style="width: 400px; height: 300px; border: 1px solid black;"></video>
</div>
<script src="https://unpkg.com/@open-ayame/ayame-web-sdk@2020.2.1/dist/ayame.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/qs/6.7.0/qs.min.js"></script>
<script src="./main.js"></script>
<script type="text/javascript">
const options = Ayame.defaultOptions;
options.clientId = clientId ? clientId : options.clientId;
if (signalingKey) {
options.signalingKey = signalingKey;
}
options.audio.enabled = false;
const remoteVideo = document.querySelector('#remote-video');
let conn;
const disconnect = () => {
if (conn) {
conn.disconnect();
}
}
const startConn = async () => {
conn = Ayame.connection(signalingUrl, roomId, options, true);
const mediaStream = await navigator.mediaDevices.getDisplayMedia({video: true});
conn.on('disconnect', (e) => console.log(e));
conn.on('addstream', async (e) => {
console.log(e.stream);
remoteVideo.srcObject = e.stream;
});
await conn.connect(mediaStream, null);
document.querySelector('#local-video').srcObject = mediaStream;
};
document.querySelector("#roomIdInput").value = roomId;
document.querySelector("#clientIdInput").value = options.clientId;
</script>
</body>
</html>