SvaraSynth / 5.html
shethjenil's picture
Upload 18 files
9c92d10 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<meta content="width=1280, height=720, initial-scale=1.0" name="viewport"/>
<title>Graph – Speaker Memory Network</title>
<link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet"/>
<link href="https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;600;700&amp;family=Roboto+Mono:wght@300;400;500&amp;display=swap" rel="stylesheet"/>
<link href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6.4.0/css/all.min.css" rel="stylesheet"/>
<style>
body {
margin: 0;
padding: 0;
width: 1280px;
height: 720px;
overflow: hidden;
font-family: 'Space Grotesk', sans-serif;
background-color: #050505;
color: #ffffff;
}
.slide-container {
width: 1280px;
height: 720px;
display: flex;
position: relative;
background-color: #000000;
/* Subtle grid background */
background-image:
linear-gradient(rgba(0, 243, 255, 0.03) 1px, transparent 1px),
linear-gradient(90deg, rgba(0, 243, 255, 0.03) 1px, transparent 1px);
background-size: 50px 50px;
}
/* Left Content Panel */
.left-panel {
flex: 0 0 35%;
padding: 50px;
display: flex;
flex-direction: column;
justify-content: center;
background: rgba(10, 10, 15, 0.9);
border-right: 1px solid rgba(0, 243, 255, 0.1);
position: relative;
z-index: 2;
}
.slide-header {
margin-bottom: 40px;
}
.slide-title {
font-size: 42px;
font-weight: 700;
line-height: 1.1;
margin-bottom: 12px;
color: #ffffff;
}
.slide-title span {
color: #00f3ff;
display: block;
}
.subtitle {
font-family: 'Roboto Mono', monospace;
color: #888;
font-size: 14px;
letter-spacing: 1px;
text-transform: uppercase;
}
/* Feature List */
.feature-list {
display: flex;
flex-direction: column;
gap: 24px;
}
.feature-item {
display: flex;
align-items: flex-start;
gap: 16px;
}
.feature-icon {
width: 40px;
height: 40px;
background: rgba(0, 243, 255, 0.1);
border: 1px solid rgba(0, 243, 255, 0.3);
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
color: #00f3ff;
flex-shrink: 0;
font-size: 18px;
}
.feature-icon.memory {
color: #ff9933;
background: rgba(255, 153, 51, 0.1);
border-color: rgba(255, 153, 51, 0.3);
}
.feature-text h3 {
font-size: 18px;
font-weight: 600;
color: #e0e0e0;
margin: 0 0 4px 0;
}
.feature-text p {
font-size: 14px;
color: #999;
margin: 0;
line-height: 1.4;
}
/* Right Visualization Panel */
.right-panel {
flex: 1;
position: relative;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
padding: 40px;
}
.viz-container {
width: 100%;
height: 100%;
position: relative;
border-radius: 12px;
overflow: hidden;
border: 1px solid rgba(255, 255, 255, 0.1);
box-shadow: 0 0 40px rgba(0, 0, 0, 0.5);
}
.viz-image {
width: 100%;
height: 100%;
object-fit: cover;
/* Enhancing the generated image look */
filter: brightness(0.9) contrast(1.1);
}
/* Overlay UI Elements on Image */
.overlay-ui {
position: absolute;
top: 20px;
right: 20px;
display: flex;
flex-direction: column;
gap: 10px;
z-index: 5;
}
.data-card {
background: rgba(0, 0, 0, 0.7);
backdrop-filter: blur(8px);
border-left: 3px solid #00f3ff;
padding: 10px 15px;
border-radius: 0 4px 4px 0;
min-width: 180px;
}
.data-label {
font-family: 'Roboto Mono', monospace;
font-size: 10px;
color: #888;
margin-bottom: 2px;
text-transform: uppercase;
}
.data-value {
font-family: 'Space Grotesk', sans-serif;
font-size: 14px;
color: #fff;
font-weight: 600;
}
.scan-anim {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 4px;
background: rgba(0, 243, 255, 0.5);
box-shadow: 0 0 10px rgba(0, 243, 255, 0.8);
opacity: 0.6;
z-index: 10;
}
/* Bottom Status Bar */
.status-bar {
position: absolute;
bottom: 30px;
left: 50%;
transform: translateX(-50%);
background: rgba(20, 20, 20, 0.8);
border: 1px solid #333;
border-radius: 30px;
padding: 8px 24px;
display: flex;
align-items: center;
gap: 16px;
z-index: 5;
}
.status-dot {
width: 8px;
height: 8px;
border-radius: 50%;
background-color: #00ff9d;
box-shadow: 0 0 8px #00ff9d;
}
.status-text {
font-family: 'Roboto Mono', monospace;
font-size: 12px;
color: #ccc;
}
</style>
</head>
<body>
<div class="slide-container">
<!-- Left Panel -->
<div class="left-panel">
<div class="slide-header">
<div class="subtitle">
<p>IDENTITY LAYER</p>
</div>
<h1 class="slide-title">
Speaker ID &amp;
<span>Long-term Memory</span>
</h1>
</div>
<div class="feature-list">
<!-- Feature 1 -->
<div class="feature-item">
<div class="feature-icon">
<i class="fas fa-fingerprint"></i>
</div>
<div class="feature-text">
<h3>Diarization + Embeddings</h3>
<p>Pyannote based speaker extraction separates overlapping voices with high precision.</p>
</div>
</div>
<!-- Feature 2 -->
<div class="feature-item">
<div class="feature-icon memory">
<i class="fas fa-database"></i>
</div>
<div class="feature-text">
<h3>Persistent Profiles</h3>
<p>Vector database (Chroma/FAISS) stores voice signatures locally. Recognized across sessions.</p>
</div>
</div>
<!-- Feature 3 -->
<div class="feature-item">
<div class="feature-icon">
<i class="fas fa-user-shield"></i>
</div>
<div class="feature-text">
<h3>Consent-First</h3>
<p>Strict enrollment flows. "Who is speaking?" answered locally without biometric cloud upload.</p>
</div>
</div>
<!-- Feature 4 -->
<div class="feature-item">
<div class="feature-icon memory">
<i class="fas fa-project-diagram"></i>
</div>
<div class="feature-text">
<h3>Context Linking</h3>
<p>Queryable API allows agents to recall: "What did Speaker A say about the budget last week?"</p>
</div>
</div>
</div>
</div>
<!-- Right Panel -->
<div class="right-panel">
<div class="viz-container">
<!-- Using generated speaker ID visualization -->
<img alt="Speaker Network Visualization" class="viz-image" src="3ZzGLLcZ.png"/>
<!-- Animated Scanner Line Simulation -->
<div class="scan-anim" style="top: 30%"></div>
<!-- Overlay Data Cards -->
<div class="overlay-ui">
<div class="data-card">
<p class="data-label">Active Speakers</p>
<p class="data-value">3 Detected</p>
</div>
<div class="data-card">
<p class="data-label">Profile Match</p>
<p class="data-value">Speaker_02 (98.4%)</p>
</div>
<div class="data-card" style="border-left-color: #ff9933">
<p class="data-label">Memory Context</p>
<p class="data-value">Session #4 linked</p>
</div>
</div>
<!-- Bottom Status -->
<div class="status-bar">
<div class="status-dot"></div>
<p class="status-text">VECTOR DB: CONNECTED • 128 DIMENSIONS • LOCAL STORAGE</p>
</div>
</div>
</div>
</div>
</body>
</html>