볼륨 알림 OSD를 펄스 오디오 및 ALSA와 함께 사용할 수있는 멋진 방법이 있습니까? 현재 표준 데스크탑은 펄스 오디오에서만 작동합니다. 수직 드롭 다운 OSD를 사용하거나 명령 줄에서 호출하여 임의의 백분율로 변경 사항을 그래픽으로 위아래로 움직이는 막대로보고 할 수 있습니까?
ALSA와 pulseaudio 모두에서 작동 해야하는 이유는 펄스와 잘 어울리지 않는 WINE 응용 프로그램을 사용하고 있기 때문에 추가 추상화 계층없이 ALSA를 사용하기 위해 Windows 앱을 시작하기 전에 펄스를 죽입니다. 내 키보드의 볼륨 키 펄스없이 일을하지 않았다는 것을 깨달았을 때, 나는에서 출구 신호를 잡으려고 컴 피즈 또는 (각각 CCSM 및 LXDE - rc.xml를 통해 구성) OPENBOX 중 하나에 전화를 몇 가지 bash는 스크립트를 작성 pulseaudio --check
하고 그런 다음 그에 따라 볼륨을 조정하십시오.
vol_step_up
#!/bin/bash
pulseaudio --check
if [ $? -eq 0 ] ; then
pactl set-sink-volume 0 -- +3db
else
amixer -c0 set Master playback 3+
fi
vol_step_down
#!/bin/bash
pulseaudio --check
if [ $? -eq 0 ] ; then
pactl set-sink-volume 0 -- -3db
else
amixer -c0 set Master playback 3-
fi
스크립트는 훌륭하게 작동하고 버튼에 잘 매핑되지만 버튼 이벤트 (XF86AudioLowerVolume 등)를 잡기 때문에 펄스 오디오조차도 시각적 피드백을 더 이상 볼 수있는 좋은 방법이 없습니다. 분명히 ALSA 볼륨 키를 다른 것으로 매핑 할 수 있지만 바로 가기 키를 복제하는 것은 의미가 없습니다.
위의 스크립트에서 호출 할 수있는 파이썬 볼륨 컨트롤을 찾았습니다 :
https://github.com/fishman/utils/blob/master/pvol.py
pvol.py -s
ALSA와 펄스 오디오의 화면에 현재 볼륨 레벨을 보여 주지만, 사용했던 그놈 OSD에 비해 상당히 작고 수직이 아닙니다 (맨 위 막대, 맨 아래 오래된 OSD) :
그래서 나는 그것을 더 크게 만들고 주위를 펄럭였다.
그러나 방향을 세로 방향으로 전환하더라도 파란색 기본 GTK 테마는 VLC만큼 매끄럽지 않습니다 (아래 참조).
OSD 구현 검색에서 찾은 대부분은 전체 진행 표시 줄 개념이없는 알림 보내기 명령에 대한 게시물입니다. 그렇지 않으면 주로 가로 막대이며 bash 스크립트 내에 많은 계산 자리 표시자가 있습니다. 실제로 내가해야 할 일은 amix & pactl을 호출하는 것이므로 pvol.py의 gtk 진행률 표시 줄과 같은 간단한 것은 훌륭합니다.
VLC에는 마우스 휠을 전체 화면 모드로 스크롤 할 때 염두에 두는 좋은 예가 있습니다.
화면 중앙에있는 일반적인 상자보다 훨씬 덜 방해가됩니다.
전체 수평 슬라이더 비유는 왼쪽 및 오른쪽 스피커 사이의 패닝 오디오 외부에서 나에게 의미가 없었습니다.
어쨌든 기본 데스크탑 알림 (특히 LXDE)이 어떻게 호출됩니까? 주요 프레스 이벤트 구성에 대한 많은 게시물을 보았지만 해당 이벤트가 트리거하는 스크립트에 대해서는별로 언급하지 않았습니다. 세로로 멋진 부서에 다른 옵션이 있습니까?
또한 스크립팅 및 compiz 또는 openbox 명령을 통해 처리하는 이벤트간에 충돌이 발생하지 않도록 제거해야 할 패키지가 있습니까?
업데이트 : 현재 사용중인 OSD를 파악하기 위해 음소거 버튼을 처리하는 방식을 즉시 변경하지 않았습니다. xfce4 알림을 종료 한 다음 음소거 버튼을 누르면 새로운 xfce4 알림 프로세스가 생성되므로 큰 스피커 아이콘이 xfce4 볼륨과 같은 것에서 나온 것 같지만 실제로는 해당 패키지가 설치되어 있지 않습니다 ... 아! gnome-settings-deemon을 종료하면 화면 중앙의 큰 OSD가 중지됩니다.