Home Assistant Media Player: One Dashboard for Every Speaker and TV

Sonos in the kitchen. Chromecast in the living room. An old Roku in the bedroom. A TV that only responds to its own remote. Sound familiar? Home Assistant brings all of them into one place. Control volume, queue music, send announcements, and build automations that make your media actually smart. No more juggling five different apps.

Check Your Devices Automation Ideas

What Media Players Work with Home Assistant?

Short answer: almost everything. Home Assistant has integrations for hundreds of media devices. Here are the most popular ones, grouped by type.

Smart Speakers

  • Sonos (all models, local control)
  • Google Home / Nest (Cast protocol)
  • Amazon Echo (limited, via Alexa Media Player)
  • HomePod (via AirPlay)
  • IKEA Symfonisk (Sonos integration)
  • Bose SoundTouch
  • KEF wireless speakers

Streaming Devices

  • Chromecast / Google TV
  • Apple TV (full remote control)
  • Roku (all models)
  • Amazon Fire TV (via Android Debug Bridge)
  • NVIDIA Shield (Android TV)
  • Kodi (deep integration)

Smart TVs

  • LG webOS (power, input, apps)
  • Samsung (Tizen, SmartThings)
  • Sony Bravia (Android TV / Google TV)
  • Philips (Android TV models)
  • TCL / Hisense (Roku or Google TV models)
  • Vizio (SmartCast)

Music Services

  • Spotify (Spotify Connect)
  • Plex (media server)
  • Jellyfin (open source Plex alternative)
  • Music Assistant (Spotify, YT Music, Tidal, local files)
  • MPD / Mopidy
  • Squeezebox / LMS
  • DLNA / UPnP (universal fallback)

Best Speakers for Home Assistant

Not all speakers are created equal when it comes to Home Assistant integration. Here is what actually works well, ranked by how good the experience is.

Sonos (Best Overall)

Sonos is the gold standard for Home Assistant media players. The integration is fully local (no cloud needed), supports grouping, volume control, queue management, and even TV soundbar output. Every Sonos speaker, including the IKEA Symfonisk line, works through the same integration.

✅ Local control ✅ Speaker grouping ✅ Queue management ✅ TTS support ✅ No cloud dependency

Google Chromecast / Nest Speakers

Chromecast speakers work well with Home Assistant through the Cast integration. You can play media, send TTS announcements, and control playback. The catch: casting requires a working internet connection and Google's cloud. Speaker groups created in the Google Home app show up in Home Assistant too.

✅ Easy setup ✅ TTS support ✅ Speaker groups ⚠️ Needs internet ⚠️ Google cloud dependent

ESPHome DIY Speakers

For the tinkerers: build your own speakers using ESP32 boards with I2S DAC outputs. Fully local, dirt cheap (under $15 per speaker), and perfect for TTS announcement points around the house. The audio quality is not hi-fi, but for doorbell announcements and timers, it is more than enough.

✅ Fully local ✅ Super cheap ✅ Custom firmware ⚠️ DIY required ⚠️ Basic audio quality

Amazon Echo (Limited)

Echo speakers work through the community Alexa Media Player integration (HACS). You can play music, send TTS, and control volume. But it relies on Amazon's cloud and requires periodic re-authentication. It works, but it is the least reliable option for automations.

✅ TTS support ✅ Music control ⚠️ Cloud only ⚠️ Re-auth needed ⚠️ HACS integration

Controlling TVs with Home Assistant

Your TV is just another media player in Home Assistant. Turn it on, switch inputs, launch Netflix, adjust volume, and even send remote control commands. Here is how the major brands stack up.

BrandPower On/OffInput SwitchLaunch AppsVolumeRemote KeysLocal
LG webOS✅ (WoL)
Samsung Tizen✅ (WoL)
Sony Bravia
Apple TVN/A
Roku
Fire TV⚠️
Android TV

Pro tip: LG webOS TVs are the community favorite. They offer the deepest integration with full local control, reliable Wake-on-LAN for power on, and even notification display on the TV screen. If you are buying a new TV and care about Home Assistant, LG is the safest bet.

Multi-Room Audio with Home Assistant

Playing the same music in every room, or different music per zone, is one of the best parts of a smart home. Home Assistant gives you two approaches.

Native Speaker Groups

If all your speakers are the same brand, use their built-in grouping. Sonos groups, Chromecast groups, and AirPlay groups all show up in Home Assistant as controllable entities.

  • Sonos: media_player.join service
  • Chromecast: Groups created in Google Home app
  • AirPlay: Multi-output from Apple devices

Best for: single-brand setups with reliable sync.

Music Assistant (Recommended)

Music Assistant is seriously good. It is a community add-on that connects to your streaming services and can group speakers from different brands together. Sonos + Chromecast + AirPlay + Snapcast + ESPHome, all playing in sync.

  • Connects Spotify, YouTube Music, Tidal, local files
  • Groups any combination of speaker brands
  • Built-in queue and playlist management
  • Radio station support
  • Runs as a Home Assistant add-on

Best for: mixed-brand setups or anyone who wants a single music hub.

Quick Setup: Music Assistant

  1. Install the Music Assistant add-on from the add-on store (or HACS for Container installs)
  2. Add your streaming service accounts (Spotify, YouTube Music, etc.)
  3. Music Assistant will discover your speakers automatically
  4. Create player groups mixing any brands you want
  5. Use the Music Assistant dashboard card or the built-in media player cards

Text-to-Speech Announcements

TTS is one of the most practical uses for media players in Home Assistant. Instead of checking your phone for every notification, your house just tells you what is happening.

Piper (Local)

Fast, free, runs entirely on your hardware. Multiple voices and languages. The recommended choice for privacy and speed.

Google Cloud TTS

Natural sounding voices. Requires a Google Cloud account and API key. Free tier covers most home use (up to 4 million characters per month).

Amazon Polly

Another cloud option with good voice quality. Free tier covers 5 million characters per month for the first year.

Google Translate TTS

The simplest option. No API key needed. Works out of the box. Voice quality is basic but perfectly usable for announcements.

Example: Doorbell Announcement

automation:
  - alias: "Announce doorbell on all speakers"
    trigger:
      - platform: state
        entity_id: binary_sensor.front_door_button
        to: "on"
    action:
      - service: tts.speak
        target:
          entity_id: media_player.living_room_sonos
        data:
          message: "Someone is at the front door."
          media_player_entity_id: media_player.living_room_sonos

5 Media Automations You Will Actually Use

These are not gimmicks. These are automations that people set up once and never turn off.

1. Movie Time: Dim Lights When Playing

When your TV starts playing, dim the living room lights to 20%. When you pause or stop, bring them back up. This is the automation that makes guests say "that's so cool."

automation:
  - alias: "Movie mode - dim lights when playing"
    trigger:
      - platform: state
        entity_id: media_player.living_room_tv
        to: "playing"
    action:
      - service: light.turn_on
        target:
          area_id: living_room
        data:
          brightness_pct: 20
          transition: 3

  - alias: "Movie mode - lights up when paused"
    trigger:
      - platform: state
        entity_id: media_player.living_room_tv
        from: "playing"
    action:
      - service: light.turn_on
        target:
          area_id: living_room
        data:
          brightness_pct: 80
          transition: 2

2. Morning Briefing on Your Kitchen Speaker

Every weekday morning when motion is detected in the kitchen, get a spoken weather update and calendar summary. Beats checking your phone while making coffee.

automation:
  - alias: "Morning briefing"
    trigger:
      - platform: state
        entity_id: binary_sensor.kitchen_motion
        to: "on"
    condition:
      - condition: time
        after: "06:30:00"
        before: "09:00:00"
      - condition: time
        weekday:
          - mon
          - tue
          - wed
          - thu
          - fri
    action:
      - service: tts.speak
        target:
          entity_id: media_player.kitchen_speaker
        data:
          message: >
            Good morning. It is currently
            {{ states('sensor.outside_temperature') }} degrees.
            {{ states('sensor.weather_summary') }}.
            You have {{ states('sensor.calendar_events_today') }}
            events today.

3. Pause Everything When the Doorbell Rings

Doorbell rings? Pause all media players in the house, announce who is at the door (if you have a Frigate camera with person detection), then resume playback after 30 seconds.

4. Goodnight Routine: Turn Off All Media

One button press (or voice command) to stop all media players, turn off TVs, and switch to quiet mode. No more falling asleep to a Netflix menu screen.

5. Music Follows You Between Rooms

Using presence detection, automatically transfer what is playing to the speaker in whatever room you walk into. This requires room-level presence sensors (like mmWave or BLE), but when it works, it feels like magic.

Media Player Dashboard Cards

Home Assistant gives you several ways to display and control media players on your dashboard.

Media Control Card (Built-in)

Shows album art, playback controls, and volume. Works with any media player entity. The default choice for most setups.

Mini Media Player (HACS)

A popular community card that takes up less space. Supports grouping controls, custom artwork, and speaker group management. Installed via HACS.

Music Assistant Card

If you use Music Assistant, its dedicated card gives you a Spotify-like experience: browse, search, queue management, and cross-brand speaker selection.

Mushroom Media Card

Part of the Mushroom cards collection. Clean, minimal, and looks great on wall-mounted tablets. If you are going for a modern dashboard aesthetic, this is the one.

Getting Started: Weekend Setup

You do not need to set up everything at once. Here is a realistic weekend plan.

Saturday Morning

Add your existing speakers and TVs as integrations. Most will auto-discover on your network. Test basic controls: play, pause, volume.

Saturday Afternoon

Set up TTS (start with Piper for local) and create your first automation: lights dim when the TV plays. Add media player cards to your dashboard.

Sunday

Install Music Assistant if you want multi-room audio. Create speaker groups. Add a morning briefing automation. Sit back and enjoy the music.

Not Sure What Works with Home Assistant?

Our free scan checks your current devices and tells you exactly which ones work with Home Assistant, what you will need, and how to set them up.

Scan Your Devices Free