hfujita / pulseaudio-raop2

Experimental RAOP2 (Apple AirPlay2) support for PulseAudio
http://hfujita.github.io/pulseaudio-raop2/
Other
137 stars 19 forks source link

Hardware volume control #73

Open giggywithit opened 4 years ago

giggywithit commented 4 years ago

Hello,

I do not know much about how pulseaudio goes about streaming the audio over the network, however, I use a linux machine and stream to a raspberry Pi that has a DAC with a hardware volume built in. The raspberry Pi uses shairport-sync and has all of the proper configurations for using the hardware volume and the correct mixer for it. My issue is that it appears as if pulseaudio is streaming using some kind of dithering or volume control of it's own, while I would like to have the full undithered stream sent to the Pi. When I use an apple device, the volume control is appropriately taken care of in that the changes are immediate, while using my linux machine and pulseaudio, there is both an immediate change in volume when the mixer is signaled for volume changes, and also a gradual, latent change that follows the initial hardware change, apparently some type of software volume dithering involved. What I would like is to have the volume changes done exclusively through hardware as an apple device does, this to both increase the sound quality, and also so that I don't have to guess where the volume will end up after it's delays. As it is, I sometimes turn it down, then after a second or whatever, it actually ends up too low and then have to increase a little bit.

I have one more request for something similar, or that may be involved in the same vein.. If I play music on one device, then switch to another, if the volumes are different, say that I play music from one pulseaudio machine with the volume all the way down, then I play music from another pulseaudio machine at a later time that hasn't had it's volume changed from say, 50%, there is no audio output and the volume is taken from the last machine until I jiggle the volume to another setting on the new playback machine. I think you get my point in that I would like for the volume to be immediately changed to the current machine volume state, then playback, without having to adjust it every time I switch machines that I am playing back from.

Thank You S