npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

homebridge-musiccast-multiroom

v0.2.10

Published

Homebridge Yamaha MusicCast Multiroom Plugin

Downloads

40

Readme

Homebridge Yamaha MusicCast Multiroom Plugin verified-by-homebridge

Official MusicCast support in Apple HomeKit is limited. This plugin provides quick access to favorite presets, input source selection and power/volume control within the Apple Home app. Speakers will always be linked to their MusicCast server.

Configuration:

  • server: IP address or hostname of the Yamaha receiver (or main MusicCast speaker) that will serve music to the clients
  • clients: IP addresses or hostnames of the Yamaha speakers (or other MusicCast devices) that will be connected to the server
{
    "server": {
        "host": "192.168.178.80",
        ...
    },
    "clients": [
        {
            "host": "192.168.178.81",
            ...
        },
        {
            "host": "192.168.178.82",
            ...
        }
    ],
    "platform": "MusiccastMultiroom"
}

Volume

The current Apple Home app doesn't really support volume for speakers and receivers, so the source selector is "misused" to quickly adjust volume in 6 steps.

Lower and upper volume limits can be adjusted in the settings for each device. Something like 25% (lower limit) to 65% (upper limit) is probably reasonable for most environments.

{
    "server": {
        ...
        "volumePercentageLow": 25,
        "volumePercentageHigh": 65,
        ...
    },
    "clients": [
        {
            ...
            "volumePercentageLow": 30,
            "volumePercentageHigh": 65
        }
    ],
    "platform": "MusiccastMultiroom"
}

Input Sources

For the server device, there will be a separate accessory to select the input source. It will provide all favorites saved on the device. Use the Yamaha MusicCast app to save, edit and order favorites.

Additional inputs like HDMI can be added and named in the settings:

{
    "server": {
        ...
        "inputs": [
            {
                "input": "audio3",
                "name": "Plattenspieler"
            },
            {
                "input": "airplay",
                "name": "Airplay"
            },
            {
                "input": "hdmi1",
                "name": "Apple TV"
            }
        ]
    },
    ...
    "platform": "MusiccastMultiroom"
}

Input sources that provide their own content (like Amazon Music, Net Radio, Spotify, etc.) are more useful when specific playlists or stations are saved as favorites in the Yamaha MusicCast app. Those will then be availabe in HomeKit.

Available input sources for a Yamaha receiver include for example:

airplay
alexa
amazon_music
audio1
audio2
audio3
aux
av1
av2
av3
bluetooth
deezer
hdmi1
hdmi2
hdmi3
hdmi4
mc_link
napster
net_radio
qobuz
server
spotify
tidal
tuner
usb

Additional switches

When supported by the server device, up to two additional switches will be published:

  • Surround Decoder:
    • on: set sound program to Surround Decoder
    • off: set sound program to Straight
  • Lip Sync:
    • on: set link audio delay to Lip Sync, which prefers lipsync between audio and hdmi video (and may cause delays between connected speakers)
    • off: set link audio delay to Audio Sync, which prefers audio sync between all connected speakers (and may cause delays between audio and hdmi video)

Language

Initial names for devices/switches etc. will all be in English, rename them if necessary in your HomeKit app.