Mercurial > code > home > repos > racc
view volume_linux.py @ 1:04c8a1b3976b
volume r/w on linux+osx
author | drewp@bigasterisk.com |
---|---|
date | Fri, 03 Mar 2023 21:24:53 -0800 |
parents | |
children |
line wrap: on
line source
from pulsectl_asyncio import PulseAsync _pulse = None async def _init(): global _pulse if _pulse is not None: return _pulse = PulseAsync('racc') await _pulse.connect() async def _get_sink(): [sink] = [ s for s in (await _pulse.sink_list()) if s.description == 'Built-in Audio Analog Stereo' ] return sink async def get_volume(): await _init() return (await _get_sink()).volume.value_flat async def set_volume(v: float): await _init() sync = await _get_sink() await _pulse.volume_set_all_chans(sink, v)