Packages
bpe
0.7.16
13.5.22-aleph
11.4.16
11.4.15
11.4.14
11.4.13
9.9.7
9.9.6
8.12.4
8.12.3
8.12.1
8.12.0
retired
8.2.1
8.2.0
8.1.0
7.11.0
7.10.4
7.10.3
7.10.2
7.10.1
7.9.1
7.9.0
7.8.2
7.8.1
7.8.0
7.6.4
7.6.3
7.6.2
7.6.1
7.6.0
7.5.15
7.5.14
7.5.13
7.5.12
7.5.11
7.5.10
7.5.9
7.5.8
7.5.7
7.5.6
7.5.5
7.5.3
7.5.2
7.5.1
7.5.0
7.4.11
7.4.10
7.4.9
7.4.8
7.4.7
7.4.6
7.4.5
7.4.4
7.4.3
7.4.2
7.4.1
7.4.0
7.3.0
7.2.8
7.2.7
7.2.6
7.1.6
7.1.5
7.1.4
7.1.3
7.1.2
6.12.7
6.12.6
6.12.5
6.12.3
6.12.2
6.12.1
6.12.0
6.11.0
6.10.0
6.5.3
6.5.2
6.5.1
6.5.0
6.4.0
6.3.0
5.12.0
5.11.4
5.11.3
5.11.2
5.11.1
5.11.0
5.8.7
5.8.6
5.8.5
5.8.4
5.8.3
5.8.2
5.8.1
5.8.0
5.7.0
5.6.0
5.5.2
5.5.1
5.4.0
5.2.0
5.1.3
5.1.2
5.1.1
4.12.4
4.12.3
4.12.2
4.12.1
4.12.0
4.11.8
4.11.7
4.11.6
4.11.5
4.11.4
4.11.3
4.11.2
4.11.1
4.11.0
4.10.24
4.10.23
4.10.22
4.10.21
4.10.20
4.10.19
4.10.18
4.10.17
4.10.16
4.10.15
4.10.14
4.10.13
4.10.12
4.10.11
4.10.10
4.10.9
4.10.8
4.10.7
4.10.6
4.10.5
4.10.4
4.10.3
4.10.2
4.10.1
4.10.0
4.9.18
4.9.17
4.9.16
4.9.15
4.9.14
4.9.13
4.9.12
4.9.11
4.9.10
4.9.9
4.9.8
4.9.7
4.9.6
4.9.5
4.9.4
4.9.3
4.9.2
4.9.1
4.9.0
4.8.1
4.8.0
4.7.5
4.7.3
4.7.2
4.7.1
4.7.0
4.6.0
2.4.0
0.7.16
ERP/1: RTP GST WebRTC ICE SDP H.264 H.265 MP4 MPEG-2 HLS HEVC
Current section
Files
Jump to
Current section
Files
priv/static/app/login.htm
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Login - GStreamer MCU</title>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/rtp-login.css" />
</head>
<body class="login-page">
<div class="login-card">
<div style="display: flex; justify-content: center; align-items: center; gap: 0.5rem; margin-bottom: 1.5rem;">
<div class="brand-dot"></div>
<h1 style="font-size: 1.5rem; font-weight: 700;">GStreamer MCU</h1>
</div>
<h2>Welcome Back</h2>
<p>Please enter your nickname and room name to enter the conference.</p>
<div>
<div class="form-group">
<label for="user">Choose Nickname:</label>
<input id="user" type="text" placeholder="e.g. Alice" autofocus />
</div>
<div class="form-group">
<label for="pass">Join or Create Room:</label>
<input id="pass" type="text" placeholder="e.g. courtroom123" />
</div>
<div style="margin-top: 1.5rem;">
<span id="loginButton">12341234</span>
</div>
</div>
</div>
<script src="https://ws.n2o.dev/priv/utf8.js"></script>
<script src="https://ws.n2o.dev/priv/bert.js"></script>
<script src="https://ws.n2o.dev/priv/heart.js"></script>
<script src="https://ws.n2o.dev/priv/n2o.js"></script>
<script>host = location.hostname; port = 8001; debug = true;</script>
<script src="https://ws.n2o.dev/priv/ftp.js"></script>
<script src="https://nitro.n2o.dev/priv/js/nitro.js"></script>
<script>protos = [$bert]; N2O_start();</script>
<script>
// Pre-fill last-used nickname and room (no auto-redirect — user must click Login)
window.addEventListener('DOMContentLoaded', () => {
const u = localStorage.getItem('rtp_user');
const r = localStorage.getItem('rtp_room');
if (u) document.getElementById('user').value = u;
if (r) document.getElementById('pass').value = r;
});
</script>
</body>
</html>