Multimedia and Announcements in the Smart Home: What's Worth Automating, and What Not to Force

Module 22 · Lesson 1

Multimedia and Announcements in the Smart Home: What's Worth Automating, and What Not to Force

This module doesn't teach you to build a home theater. It teaches two things: how to sensibly control music and speakers across multiple rooms, and how to turn the house into an announcement system that warns, reminds, and informs out loud, instead of burying you in push notifications you never read anyway.

The module's core rule
A voice announcement interrupts whatever someone is doing right now.
Use it only when the information matters more than the interruption.
Music and announcements are two separate layers, not one feature.

Budget around 60 minutes. This lesson builds the spine for the whole module: two announcement tiers and a silence switch that every one of the next 15 lessons will build on. From here on I'll shorten Home Assistant to HA and Music Assistant to MA.

A Real-Life Problem: A Flood Alert During Movie Night

A flood sensor in the bathroom detects water. The phone is sitting in another room, on silent. The push notification waits unread for 40 minutes until the movie ends. In that time, water spreads across the floor. The opposite problem: HA "informs" you out loud through the living room speaker about every front door opening, every piece of mail, and every finished laundry load, until after a week you switch TTS off entirely, including for things that actually matter.

The fix for both problems is the same thing: separating priorities at the architecture level, not relying on good intentions inside every individual automation.

Two Announcement Tiers

TierExampleBehavior
Home announcementlaundry done, someone at the gate, a reminderrespects silence, moderate volume
Critical announcementflood, smoke, gate left open at nightoverrides silence, high volume, repeats

This distinction isn't cosmetic: a critical announcement carries different permissions (it can override silence mode from Lesson 12), a different volume, and repeats if nobody reacts. A home announcement never overrides silence: news that the laundry finished can wait until morning.

The Module's Foundation Helpers

input_boolean:
  house_silence:
    name: "House silence"
    icon: mdi:volume-mute
    initial: false
  multimedia_automation_enabled:
    name: "Multimedia automation enabled"
    icon: mdi:cast-connected
    initial: true

input_number:
  announcement_volume_home:
    name: "Volume: home announcement"
    min: 0
    max: 100
    step: 5
    initial: 35
    unit_of_measurement: "%"
  announcement_volume_critical:
    name: "Volume: critical announcement"
    min: 0
    max: 100
    step: 5
    initial: 70
    unit_of_measurement: "%"

input_select:
  announcement_zone:
    name: "Announcement zone"
    options:
      - "Whole house"
      - "Downstairs"
      - "Upstairs"
      - "Kitchen and living room only"
    icon: mdi:map-marker-radius

input_select.announcement_zone lets you quickly limit home announcements to part of the house, for example when a child is asleep upstairs: in Lesson 12 we'll extend this logic with automatic switching based on the time of day.

The Home Announcement Script Skeleton

script:
  home_announcement:
    alias: "Home announcement"
    icon: mdi:bullhorn-outline
    mode: queued
    max: 5
    fields:
      message:
        description: "The message to speak"
        example: "Laundry is done"
    sequence:
      - condition: state
        entity_id: input_boolean.house_silence
        state: "off"
      - condition: state
        entity_id: input_boolean.multimedia_automation_enabled
        state: "on"
      # full TTS logic, volume snapshot, and speaker grouping
      # gets built out in Lessons 3, 5, and 6

mode: queued with a max: 5 limit makes sure several announcements triggered close together play one after another, instead of stacking on top of each other: without this, two automations firing in the same second would try to speak through the same speaker at once. This is deliberately a skeleton: we'll build the full, working version with a real TTS call in Lesson 5, after Lessons 2 through 4 introduce the media_player entity, Music Assistant, and the speakers themselves.

What's Worth Automating

High-risk technical alerts: flood, smoke, a gate left open at night. A voice reaches where a phone in a pocket doesn't.

Music that follows you between rooms, and scenes tied to specific activities (movie night, cooking, cleaning).

Short, infrequent reminders: laundry done, someone at the gate, when your phone isn't on you.

What Not to Force

Don't turn the house into a talking terminal
A voice notification for every door opening, every temperature change, or every logbook entry is the fastest way to get household members to start ignoring everything the house says, including things that matter. The rule: if an announcement requires no reaction or decision at all, it probably shouldn't be spoken out loud.

A Map of the Module

Lessons 2 through 4 are the technical foundation: the media_player entity, Music Assistant, and specific speaker brands. Lessons 5 through 8 are announcements: TTS, taking a snapshot and restoring music after an announcement, the tablet as a communicator, and the TV as an information hub. Lessons 9 through 12 are applications: multimedia notifications, home announcements (doorbell, gate, packages), multimedia scenes, and silence mode. Lessons 13 and 14 cover control without a phone and technical alerts as an audio layer. Lessons 15 and 16 close the module with a dashboard and a mini project.

The Multimedia Hardware Landscape: What Actually Exists on the Market

Before you go further, it's worth seeing the full map of options, because in this module you'll be choosing between genuinely different approaches, not a single correct standard. The market splits roughly into four groups of hardware.

GroupExamplesNature of the integration
Streamers and smart TVsChromecast, Android TV/Google TV, Apple TV, Roku, LG webOS, Samsung Tizenvarying degrees of local control, some require the manufacturer's cloud
Multiroom speakersSonos, Google Nest, Apple HomePod (AirPlay), DLNA speakersSonos runs locally, Nest and HomePod route through the manufacturer's cloud
A music hubMusic Assistant as a Home Assistant add-onties many sources and players together into one coherent interface
DIY / fully localESPHome-based speakers, Home Assistant Voice Preview Editionzero cloud, full control, requires some tinkering

You don't have to pick one approach for the whole house. A typical, mature setup mixes several: Sonos in the living room because you already own it, a cheap ESPHome speaker in the garage as an announcement point, and Music Assistant as the layer tying everything into one library and one set of controls.

Multimedia Ecosystems: Closed Versus Open

ApproachExamplesConsequence for automation
Closed ecosystemSonos, Apple HomePod, native Google Nestconvenient within one brand, harder to combine with other manufacturers' devices
Open, integrated through Music Assistantany speaker Music Assistant supports, from Lesson 3 of this sectionone coherent control interface regardless of speaker brand
DIY on ESPHomea self-built speaker from Module 10full control, but requires your own assembly work

This module deliberately shows all three approaches, because few installations are fully uniform: a typical home combines one closed ecosystem (say, Sonos in the living room) with cheaper, open solutions elsewhere (a DIY ESPHome speaker in the garage or laundry room).

A Starter Budget for a Multimedia System: From Zero to a First Announcement

ItemRough entry cost
Music Assistant server (add-on, free)$0, only needs spare compute on your existing Home Assistant server
One DIY ESPHome speakeraround $15-25 in components
A cheap smart speaker as an announcement pointfrom around $25-40 for popular models with supported integrations
A wall-mounted tablet (Module 14)cost already covered in an earlier module, here it's just a feature expansion

The Role of pyscript and AppDaemon in More Complex Multimedia Logic

Standard Home Assistant automations, built on triggers and conditions, are entirely sufficient for most scenarios in this module, but more complex logic, like dynamically matching an announcement's volume to background noise measured by a microphone, goes beyond what the standard automation editor comfortably handles. In cases like that, pyscript (which lets you write automation logic in Python) offers more flexibility than YAML, though it comes with an extra learning curve that goes beyond this course's basic scope.

A/B Testing Different Approaches to Home Announcements

Before you settle on a final format for your voice announcements (length, tone, level of detail), it's worth testing different variants on yourself and your household for a week or two: a short, factual announcement versus a fuller sentence with context. What seems optimal in theory often turns out, in practice, to be either too long (household members stop listening before it finishes) or too terse (missing the context of exactly what happened).

The House's Sound Profile: Why It's Worth Designing Deliberately

Before you start configuring individual announcements, it's worth designing an overall sound profile for the whole house: what voice, what tone, and what baseline volume announcements should carry at different times of day. A house where every automation has its own randomly chosen voice and volume feels chaotic, while a consistent, deliberate sound profile, applied consistently across the rest of this module's lessons, creates the impression of one coherent system, not a pile of independent gadgets.

The Order of Decisions Before Your First Multimedia Purchase

1. Decide whether you're building on one ecosystem (Sonos) or an open architecture through Music Assistant.

2. Pick one consistent announcement pattern (the home_announcement script) before you start multiplying automations.

3. Settle on a channel and priority matrix before you wire up the first alert to the system.

4. Plan your first audio point (usually the living room) as a pilot, before expanding to the whole house.

5. Only after settling these, start buying specific speakers and devices.

Common Cognitive Mistakes When Planning a Multimedia System

Buying hardware before planning the architecture: speakers from different, incompatible ecosystems bought on impulse, hard to tie into one coherent system later.

Too many automations at once: trying to build the whole channel matrix and every scene in a single weekend, instead of rolling it out gradually.

Ignoring real-world testing: an automation tested only in silence, failing in a noisy kitchen during cooking.

No single, consistent announcement pattern: every automation calling TTS its own way, instead of using one shared script.

How to Test This Lesson

1. Create every helper from this lesson under Settings → Devices & Services → Helpers.

2. Add the home_announcement script skeleton: it won't fully work yet, but confirm it saves without errors.

3. Write down three things in your house you want announced out loud, and three you definitely don't.

Key Takeaways

Two announcement tiers: home respects silence, critical overrides it.

The helper foundation from this lesson supports all 15 lessons that follow.

Less is more: only announce out loud what actually requires a reaction.

What's Next

Next lesson: The media_player Entity: TV, Speaker, Soundbar, Receiver, Tablet, and Player. You'll learn the entity structure the whole module is built on.

Finished this lesson?