Skip to content

Commit 97c2cc3

Browse files
feat: audio visualizer configuration (#316)
1 parent dca18e8 commit 97c2cc3

30 files changed

Lines changed: 3080 additions & 196 deletions

README.md

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Also available for:
1616
- Real-time voice interaction with LiveKit Agents
1717
- Camera video streaming support
1818
- Screen sharing capabilities
19-
- Audio visualization and level monitoring
19+
- Multiple audio visualizer styles (`bar`, `grid`, `radial`, `wave`, `aura`)
2020
- Virtual avatar integration
2121
- Light/dark theme switching with system preference detection
2222
- Customizable branding, colors, and UI text via configuration
@@ -129,6 +129,22 @@ export const APP_CONFIG_DEFAULTS: AppConfig = {
129129
accentDark: '#1fd5f9',
130130
startButtonText: 'Start call',
131131

132+
// optional: audio visualization configuration
133+
// audioVisualizerColor: '#002cf2',
134+
// audioVisualizerColorDark: '#1fd5f9',
135+
// audioVisualizerType: 'bar',
136+
// audioVisualizerBarCount: 5,
137+
// audioVisualizerType: 'radial',
138+
// audioVisualizerRadialBarCount: 24,
139+
// audioVisualizerRadialRadius: 100,
140+
// audioVisualizerType: 'grid',
141+
// audioVisualizerGridRowCount: 25,
142+
// audioVisualizerGridColumnCount: 25,
143+
// audioVisualizerType: 'wave',
144+
// audioVisualizerWaveLineWidth: 3,
145+
// audioVisualizerType: 'aura',
146+
// audioVisualizerAuraColorShift: 0.3,
147+
132148
// agent dispatch configuration
133149
agentName: undefined,
134150

@@ -139,6 +155,18 @@ export const APP_CONFIG_DEFAULTS: AppConfig = {
139155

140156
You can update these values in [`app-config.ts`](./app-config.ts) to customize branding, features, and UI text for your deployment.
141157

158+
#### Audio visualizer presets
159+
160+
Set `audioVisualizerType` in [`app-config.ts`](./app-config.ts) to switch visualizer styles:
161+
162+
- `bar` (default): vertical bars with optional `audioVisualizerBarCount`
163+
- `grid`: dot grid with `audioVisualizerGridRowCount` and `audioVisualizerGridColumnCount`
164+
- `radial`: circular bars with `audioVisualizerRadialBarCount` and `audioVisualizerRadialRadius`
165+
- `wave`: oscilloscope-style wave with `audioVisualizerWaveLineWidth`
166+
- `aura`: shader-based aura with `audioVisualizerAuraColorShift`
167+
168+
Use `audioVisualizerColor` to set a shared accent color across all visualizer modes.
169+
142170
> [!NOTE]
143171
> The `sandboxId` is for the LiveKit Cloud Sandbox environment.
144172
> It is not used for local development.

app-config.ts

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,17 @@ export interface AppConfig {
1414
logoDark?: string;
1515
accentDark?: string;
1616

17+
audioVisualizerType?: 'bar' | 'wave' | 'grid' | 'radial' | 'aura';
18+
audioVisualizerColor?: `#${string}`;
19+
audioVisualizerColorDark?: `#${string}`;
20+
audioVisualizerBarCount?: number;
21+
audioVisualizerGridRowCount?: number;
22+
audioVisualizerGridColumnCount?: number;
23+
audioVisualizerRadialBarCount?: number;
24+
audioVisualizerRadialRadius?: number;
25+
audioVisualizerAuraColorShift?: number;
26+
audioVisualizerWaveLineWidth?: number;
27+
1728
// agent dispatch configuration
1829
agentName?: string;
1930

@@ -37,6 +48,22 @@ export const APP_CONFIG_DEFAULTS: AppConfig = {
3748
accentDark: '#1fd5f9',
3849
startButtonText: 'Start call',
3950

51+
// optional: audio visualization configuration
52+
// audioVisualizerColor: '#002cf2',
53+
// audioVisualizerColorDark: '#1fd5f9',
54+
// audioVisualizerType: 'bar',
55+
// audioVisualizerBarCount: 5,
56+
// audioVisualizerType: 'radial',
57+
// audioVisualizerRadialBarCount: 24,
58+
// audioVisualizerRadialRadius: 100,
59+
// audioVisualizerType: 'grid',
60+
// audioVisualizerGridRowCount: 25,
61+
// audioVisualizerGridColumnCount: 25,
62+
// audioVisualizerType: 'wave',
63+
// audioVisualizerWaveLineWidth: 3,
64+
// audioVisualizerType: 'aura',
65+
// audioVisualizerAuraColorShift: 0.3,
66+
4067
// agent dispatch configuration
4168
agentName: process.env.AGENT_NAME ?? undefined,
4269

0 commit comments

Comments
 (0)