5ca55bf7c1
Records one finalized WebM instead of 250ms fragments. Waits for final audio data before releasing the microphone. Handles startup/finalization failures cleanly. Bumped frontend cache version to .8. Verified JavaScript syntax, JSON, browser rendering, and no console errors. Existing uploaded clips remain unchanged. A real microphone test wasn’t available in the browser runner. References: MDN MediaRecorder, Chromium WebM metadata issue.
28 lines
1.0 KiB
HTML
28 lines
1.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
|
|
<meta http-equiv="Pragma" content="no-cache">
|
|
<meta http-equiv="Expires" content="0">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
|
<meta name="description" content="CyberChat — Secure Real-Time Chat">
|
|
<title>Chat @ TyClifford.com</title>
|
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
<link href="https://fonts.googleapis.com/css2?family=Share+Tech+Mono&family=Rajdhani:wght@400;500;600;700&family=Orbitron:wght@400;700;900&display=swap" rel="stylesheet">
|
|
<link rel="stylesheet" href="assets/css/cyberchat.css?v=20260609.4">
|
|
</head>
|
|
<body>
|
|
<div id="app"></div>
|
|
<script>
|
|
window.CYBERCHAT_BASE = '';
|
|
</script>
|
|
<script src="assets/js/cyberchat-app.js?v=20260609.8"></script>
|
|
<script>
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
CyberChat.init('#app');
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|