christf / snapcastc

C implementation of snapcast focussing on audio quality and ease of maintenance.
GNU General Public License v3.0
43 stars 6 forks source link

Client to pipe #73

Closed nadigo closed 2 years ago

nadigo commented 2 years ago

I'm trying to set an audio pipe over wifi from a record player connected to hifiberry ADC Pro on PI4 and over wifi to a pipe on a server where OwnTone (forked-daapd) playes it onAirPlay speakers.

The setup is: record player --> hifiberry ADC Pro | Raspberry PI 4 --> WIFI --> pipe --> OwnTone Server --> AirPlay Speaker

I am thinking of using snapcastc as the network transport layer

record player --> hifiberry ADC Pro | Raspberry PI 4 --> cpiped [alsa record to pipe] --> snapcastc-server --> [ WIFI network ] --> napcastc-client --> [???] pipe --> OwnTone Server --> AirPlay Speaker

few questions:

1) can the server get input from alsa record device 2) can the client output to pipe

christf commented 2 years ago

Hey,

Am Mon, Dec 27, 2021 at 06:26:43PM -0800 schrieb nadigo:

I'm trying to set an audio pipe over wifi from a record player connected to hifiberry ADC Pro on PI4 and over wifi to a pipe on a server where OwnTone (forked-daapd) playes it onAirPlay speakers.

The setup is: record player --> hifiberry ADC Pro | Raspberry PI 4 --> WIFI --> pipe --> OwnTone Server --> AirPlay Speaker

I am thinking of using snapcastc as the network transport layer

record player --> hifiberry ADC Pro | Raspberry PI 4 --> cpiped [alsa record to pipe] --> snapcastc-server --> [ WIFI network ] --> napcastc-client --> [???] pipe --> OwnTone Server --> AirPlay Speaker

few questions:

1) can the server get input from alsa record device 2) can the client output to pipe

Those are interesting ideas. The client will currently only play to alsa. You could set up alsa to write to a pipe though if you wanted to.

The server will only read from a pipe. There is another issue that discusses why it might be a good idea to read from alsa as well. So far I have not been convinced but it seems there are two use cases now.

Your description of the setip makes me wonder why you are not just simply using nc for your network pipe.