-
Marijn Suijten authored
Setting these callbacks adds the HW_{VOLUME,MUTE}_CTRL flag even when PulseAudio is solely responsible for performing attenuation whilst only keeping the peer posted on changes. For this case the hardware callback is not registered at all but instead a hook is attached to catch PA_CORE_HOOK_{SINK,SOURCE}_VOLUME_CHANGED. Only when the peer performs attenuation (the peer is in HeadSet/HandsFree role) are the callbacks used, without touching PA software volume at all. A future change could potentially use software volume to compensate for the extremely coarse 16 steps of volume control in HSP and HFP, and to allow volume over 100%. Part-of: <pulseaudio/pulseaudio!519>
02027518