JOIN OUR TELEGRAM SUPPORT:
Python controller, player and recorder via pipewire's commands.
- Pipewire is a project that aims to greatly improve handling of audio and video under Linux. (Better than pulseaudio or jack)
-
A pipewire version installed (clean or via pulseaudio) is needed, to check if you have pipewire installed and running, run this command, if the output is different, you'll need to install pipewire:
- Pipewire versions supported: 0.3.30, 0.3.32+
pw-cli info 0# Example output
id: 0
permissions: rwxm
type: PipeWire:Interface:Core/3
cookie: 134115873
user-name: "user"
host-name: "user"
version: "0.3.30" # Possibly more actual than this version
name: "pipewire-0"
...To uninstall pipewire clic here.
- Python 3.7+
- Ubuntu 20.04+
pip3 install pipewire_python # or pipfrom pipewire_python.controller import Controller
# [PLAYBACK]: normal way
audio_controller = Controller(verbose=True)
audio_controller.set_config(rate=384000,
channels=2,
_format='f64',
volume=0.98,
quality=4)
audio_controller.playback(audio_filename='docs/beers.wav')
# [RECORD]: normal way
audio_controller = Controller(verbose=True)
audio_controller.record(audio_filename='docs/5sec_record.wav',
timeout_seconds=5)You can check the automatic builded documentation HERE
Future implementations, next steps, API implementation and Control over pipewire directly from python in the ROADMAP.
PR, FR and issues are welcome. Changes with PR in dev branch please due documentation runs after each commit in main branch. Check more here