-
-
Notifications
You must be signed in to change notification settings - Fork 1
Description
Problem statement
The Music Assistant player drawer has confusing and overlapping UI patterns that create friction for basic tasks. Users face two major issues:
- Unclear hierarchy: There's a "Players" section and an "All players" section with no clear explanation of the difference, causing confusion about where to find their devices.
- Conflicting controls in one menu: Volume control and player grouping are crammed into the same dropdown menu with two different entry points, making both functions harder to use. Users trying to quickly adjust volume for individual speakers in a group must navigate through grouping UI, and vice versa.
This impacts all MA users who manage multi-room audio or need quick volume access - core use cases for any music system. The current design violates basic UX principles of clear separation of concerns and increases cognitive load for everyday interactions. Solving this matters because volume and grouping are high-frequency actions that should be effortless.
Scope & Boundaries
In scope
- Clarify or consolidate the "Players" vs "All players" sections (either merge them or add clear labeling/explanation)
- Separate volume control and player grouping into distinct UI controls
- Volume dropdown: Clean interface showing only volume sliders for the active zone/group, with clear labels for each player in the group
- Group selector: Separate interface showing all available speakers/players with checkboxes to add/remove from the current playback stream
- Update the player drawer layout to accommodate these separated controls
- Visual design updates to make the new structure clear
Not in scope
- Advanced grouping features (sync groups, saved group presets, etc.)
- Volume linking/grouping behavior (all speakers move together vs independent)
- Player discovery or connection troubleshooting UI
- Mobile-specific implementations (focus on primary interface)
- Audio routing logic changes (only UI restructuring)
- Multi-zone playback controls (playing different content in different zones)
Foreseen solution
Players vs All Players clarification:
- Option A: Merge into single "Players" section with filtering (active/all toggle)
- Option B: Keep separate but add clear labels that explains the difference
Volume Control Redesign:
- Dedicated volume icon/button on each player card in the drawer
- Clicking opens a focused dropdown showing ONLY volume sliders
- Each slider clearly labeled with speaker name (e.g., "Kitchen: 45%", "Living Room: 78%")
- If single player: one slider.
- If grouped: one slider per member of the group, and a master volume slider for the entire group at the top
Group Management Redesign:
- Separate "group" icon/button on each player card
- Clicking opens a modal or panel showing all available speakers as a checklist
- Players currently in the active group are checked
- Checking/unchecking adds/removes players from the playback stream
- Clear "Apply" or real-time grouping depending on technical constraints
Visual mockup concept:
- Player card has two distinct icons: 🔊 (volume) and 🔗 (group)
- Volume dropdown is compact, focused, scrollable if many players
- Group selector is more spacious, allows multi-select with visual feedback
Visuals showing the problem and a proposed solution mockup: LINK
Community signals
Internal UX review identified this as a pain point. Screenshots provided show the current confusing state where volume and grouping controls overlap in the same menu.
Risks & open questions
- Information architecture: Should "Players" and "All players" be merged or clarified? Need user research or team decision.
- Volume UX: Should there be a master volume control for groups, or only individual sliders? What's the expected behavior?
- Grouping UX: Should changes apply immediately (live grouping) or require confirmation? What about latency when adding/removing speakers?
- Technical constraints: Are there limitations in how quickly players can be grouped/ungrouped that would impact UI design?
- Edge cases: What happens when you try to group incompatible players? How is this communicated? Are incompatible speakers even listed in the grouping view today?
- Mobile real estate: The separated controls might need different treatment on small screens—do we defer mobile, or design responsive from the start?
- Discoverability: Will users find the separated icons intuitive, or do they need onboarding tooltips?
Appetite
Medium - roughly 1-2 cycles of focused work across frontend and potentially core.
This is primarily a frontend redesign but touches critical user flows. Needs design work, implementation of new component patterns, potential state management updates, and thorough testing across different grouping scenarios. The scope could expand if technical constraints surface during implementation.
Execution issues
No response
Decision log
| Date | Decision | Outcome |
|---|---|---|
Metadata
Metadata
Assignees
Labels
Type
Projects
Status