[polybar] module pipewire

Applications, problèmes de configuration réseau
Avatar de l’utilisateur
Breizil29
yeomen
Messages : 233
Inscription : dim. 13 juin 2021, 15:04

[polybar] module pipewire

Message par Breizil29 »

Bonjour à tous,

Je suis dans Archlinux + Bspwm + Polybar et Pipewire
Problème avec mon module son.
Mon module polybar :
[module/pipewire]
type = custom/script
label = "%output%"
label-font = 2
format-prefix = " "
format-prefix-foreground = ${xresources.red}
format-foreground = ${xresources.blu}
interval = 2.0
exec = ~/.config/polybar/sound.sh
click-right = exec pavucontrol &
click-left = ~/.config/polybar/sound.sh mute &
scroll-up = ~/.config/polybar/sound.sh up &
scroll-down = ~/.config/polybar/sound.sh down &
Le script :
#!/bin/bash

function main() {
# Pipewire
SOURCE=$(pw-record --list-targets | sed -n 's/^*.*"\(.*\)" prio=.*$/\1/p')
SINK=$(pw-play --list-targets | sed -n 's/^*.*"\(.*\)" prio=.*$/\1/p')
VOLUME=$(pactl list sinks | sed -n "/${SINK}/,/Volume/ s!^[[:space:]]\+Volume:.* \([[:digit:]]\+\)%.*!\1!p")
IS_MUTED=$(pactl list sinks | sed -n "/${SINK}/,/Mute/ s/Mute: \(yes\)/\1/p")

action=$1
if [ "${action}" == "up" ]; then
pactl set-sink-volume @DEFAULT_SINK@ +10%
elif [ "${action}" == "down" ]; then
pactl set-sink-volume @DEFAULT_SINK@ -10%
elif [ "${action}" == "mute" ]; then
pactl set-sink-mute @DEFAULT_SINK@ toggle
else
if [ "${IS_MUTED}" != "" ]; then
echo " ${SOURCE} |  MUTED ${SINK}"
else
echo " ${SOURCE} |  ${VOLUME}% ${SINK}"
fi
fi
}

main $@
J'ai un message d'erreur dans ma barre :
pw-record:unrecognized option '--list-targets'
- Desktop - Arch Linux x86_64
CPU : i7-12700KF
GPU: NVIDIA T600
Audio : SSL 2+610
- Desktop - Arch Linux x86_64
CPU : Intel® Pentium® G4560
GPU : Intel HD graphics 610
- Laptop -HP Compaq 6830s - Arch Linux x86_64
CPU : Intel® Core™2 Duo T5870 × 2
GPU : AMD RV620
Avatar de l’utilisateur
papajoke
Elfe
Messages : 783
Inscription : sam. 30 août 2014, 19:54

Re: [polybar] module pipewire

Message par papajoke »

bonjour

Tu donnes la réponse dans ta question, cette option n'existe pas (tu as au moins testé en ligne de commande ? lu le man ?)
Tu as récupéré un script qui est obsolète depuis 2 ans ! voir avec son propriétaire me semble logique ? ou à la limite, le modifier par toi même (mais il faut lire des man type: pactl list et aplay )
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
Avatar de l’utilisateur
Breizil29
yeomen
Messages : 233
Inscription : dim. 13 juin 2021, 15:04

Re: [polybar] module pipewire

Message par Breizil29 »

Tu donnes la réponse dans ta question, cette option n'existe pas (tu as au moins testé en ligne de commande ? oui et j'ai essayé de corriger en remplaçant '--list-targets ' par '--target' réponse : 'pw-record: option '--target' requires an argument' et je sais pas quoi mettre comme argument.>>obsolète
Maintenant :
#!/bin/sh

function main() {
DEFAULT_SOURCE=$(arecord --target | sed -n 's/^*[[:space:]]*[[:digit:]]\+: source description="\(.*\)" prio=[[:digit:]]\+$/\1/p')
DEFAULT_SINK=$(aplay --target | sed -n 's/^*[[:space:]]*[[:digit:]]\+: sink description="\(.*\)" prio=[[:digit:]]\+$/\1/p')
VOLUME=$(pactl --get-source-volume)

case $1 in
"up")
pactl --increase 10
;;
"down")
pactl --decrease 10
;;
"mute")
pactl --toggle-mute
;;
*)
echo "Source: ${DEFAULT_SOURCE} | Sink: ${VOLUME} ${DEFAULT_SINK}"
esac
}

main "$@"
lu le man ?)oui

Tu as récupéré un script qui est obsolète depuis 2 ans ! voir avec son propriétaire me semble logique ? il n'a pas d'issues sur son github.
ou à la limite, le modifier par toi même (mais il faut lire des man type: pactl list et aplay ) je vais faire mais je ne métrise pas bien
- Desktop - Arch Linux x86_64
CPU : i7-12700KF
GPU: NVIDIA T600
Audio : SSL 2+610
- Desktop - Arch Linux x86_64
CPU : Intel® Pentium® G4560
GPU : Intel HD graphics 610
- Laptop -HP Compaq 6830s - Arch Linux x86_64
CPU : Intel® Core™2 Duo T5870 × 2
GPU : AMD RV620
Avatar de l’utilisateur
Breizil29
yeomen
Messages : 233
Inscription : dim. 13 juin 2021, 15:04

Re: [polybar] module pipewire

Message par Breizil29 »

Resolu.
Avec :
[module/pipewire]
type = internal/volume
format-volume-prefix = "  "
format-volume-prefix-foreground = ${xresources.red}
format-volume-foreground = ${xresources.blu}
format-volume = <label-volume>
format-padding = 2
label-volume = "%percentage%%"
label-muted = muted
label-muted-foreground = ${colors.trim}
- Desktop - Arch Linux x86_64
CPU : i7-12700KF
GPU: NVIDIA T600
Audio : SSL 2+610
- Desktop - Arch Linux x86_64
CPU : Intel® Pentium® G4560
GPU : Intel HD graphics 610
- Laptop -HP Compaq 6830s - Arch Linux x86_64
CPU : Intel® Core™2 Duo T5870 × 2
GPU : AMD RV620
Répondre