Skip to content

[REQUEST] Sendspin client source support for "Local Audio-in" to stream AUX-input from one LVA client to other Sendspin clients #46

Open

Description

@Hedda

Update: Specification and implementations of Resonate has been renamed to “Sendspin” (i.e. “Sendspin Protocol” “Sendspin Server/Client”):

Would you please consider adding both "Local Audio-in" (audio inout) to enable support for a "Sendspin protocol" based solution running on Raspberry Pi with Linux that can capture AUX-inputs from analog sources via audio line-in and ADC (Analog-to-Digital Converter) and stream to other Sendspin client media players over local network?

The scenario use case for this feature is that it would enable a Linux Voice Assistant satellite to also act an reverse music network streamer to allow capturing external audio input (e.g. HiFi music) from physical Line-Level Audio input such as a Turntable LP-Player or Bluetooth A2DP, then take that audio stream and transcode/encode + format it for streaming via a "Resonate Server" deamon/service.

Example flow-chart for the above example if implemented these features in a remote Linux Voice Assistant satellite solution:

  • Turntable LP-Player -> Preamplifier -> Linux Voice Assistant line level ADC -> LAN -> Music Assistant -> Smart Speakers / Smart Receiver.

For reference, developers are working on adding these features to Music Assistant server but don't cover scenario of emote satellites as source. See:

and

The main goal is to enable inexpensive Line-Level Audio ADC analogue-input that can capture AUX-input and stream the audio to Resonate clients.

For development suggest check out know compatible USB Audio Capture Device hardware equipment like these:

HiFiBerry also have several different models of Raspberry Pi HATs (HAT/Shielf for Raspberry Pi GPIO) supporting ADC at various prices:

Note! To connect and capture line-out audio from a turntable or casette-player's audio output you first need to route it through a preamplifier (also known as a phono preamp or headphone amp) if your capture device does not have a built-in preamp (which most of them do not have),as that converts a weak signal into an output signal strong enough to be noise-tolerant and strong enough for further processing. Without this preamplication, the final signal would be noisy or distorted. The preamp also ensures that your records sound balanced and accurate.

PS: This is indirectly related to the other request asking for Resonate client and "Resonate Media Player" (or "Resonate Audio Player") support here:

Activity

  1. Hedda commented on Dec 10, 2025

    @Hedda
    ContributorAuthor

    For reference; the implementation of Resonate has now been renamed to "Sendspin" (i.e. "Sendspin Audio"):

    It is however not clear if that will be the final name, so the name and specs are still subject to change.

    You can already stream audio/music via Sendspin using the beta version of Music Assistant (server):

    Development on the Sendspin component for ESPHome has been refactored in this new PR here:

    If can now test alpha/pre-release builds of ESPHome with it for the Home Assistant Preview Edition:

    Or you can today run a Resonate command-line server and client powered by resonate-go yourself:

    If you have any feedback joint the #sendspin-beta-testing channel on the Music Assistant Discord:

    PS: It sounds as if Sendspin component will not be merged into ESPHome mainline until next year.

  2. changed the title [-][REQUEST] "Resonate Server" and "Local Audio-in" support to stream AUX-input from sources to Resonate client media players for multi-room audio?[/-] [+][REQUEST] "Sendspin Server" (formerly "Resonate protocol") and "Local Audio-in" support to stream AUX-input from sources to Sendspin client media players for multi-room audio?[/+] on Dec 10, 2025
  3. Hedda commented on Aug 17, 2026

    @Hedda
    ContributorAuthor

    FYI, for reference, the Sendspin specification has now also been updated with a "source" role so Sendspin clients can be audio source too:

    Should be noted that this source role is brand new so none of the reference Sendslin clients and libraires have yet implemented support for it.

  4. changed the title [-][REQUEST] "Sendspin Server" (formerly "Resonate protocol") and "Local Audio-in" support to stream AUX-input from sources to Sendspin client media players for multi-room audio?[/-] [+][REQUEST] Sendspin client source support for "Local Audio-in" to stream AUX-input from one LVA client to other Sendspin clients[/+] on Aug 17, 2026
  5. Hedda commented on Oct 14, 2026

    @Hedda
    ContributorAuthor

    FYI, they now added this new Sendspin "source role" to the upstream sendspin-cpp (C++) library:

    They also added this Source Client Example:

    For reference, sendspin-cpp-cli has implemented it as a --input to allow stream a microphone or line-in through the source role:

    PS: By the way, also spotted that they updated the official sendspin-audio.com website with an interactive picture showing a Sendspin source:

    Image

    The text in that bubble when you high-light the record player in the picture says:

    • "Input - Connect your turntable to a Sendspin device. Put on a record, and your speakers play it together throughout the house."
  6. omaramin-2000 commented on Oct 14, 2026

    @omaramin-2000
    Collaborator

    Thanks for the suggestion! For now, our current roadmap is focused on implementing Sendspin playback support for LVA (#6), and I am currently testing an experimental branch that almost works well for now, except for some features that need to be added soon. So hopefully, we're going to start with this implementation soon (based on the initial PR #113 ). Supporting local audio input as a Sendspin source, as described here, isn't planned at this stage, but we may revisit it in the future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions