Опции для Pulseaudio:
1 )Поток вывода mpg123
в paplay
, например, что-то вроде
mpg123 --stdout... | paplay --rate=44100 --format=s16le --channels=2 --stream-name=Music --client-name=Musicplayer --volume=65536
Вы можете установить громкость в командной строке, как указано выше, или установить громкость один раз в pavucontrol
по имени клиента -, и при следующем запуске того же приложения оно запомнит громкость. Поэтому, если вы используете разные имена клиентов, скажем Musicplayer
и Bellringer
, вы можете предварительно -установить громкость раз и навсегда, не меняя ее из Python.
2 )Используйте другую программу для воспроизведения файлов MP3, которая использует Pulseaudio и либо может установить имя клиента, либо имеет узнаваемое имя клиента, либо имеет возможность установить громкость. Например.
mplayer -volume=......
Затем у вас есть те же варианты, что и выше.
3 )Используйте pamcd
или pactl
для установки громкости воспроизводимого потока, например,.
pacmd set-sink-input-volume 42 50%
Вы можете использовать что-то похожее на
pacmd list-sink-inputs | egrep '(index)|(name)'
, чтобы найти порядковый номер для данного потока или имени клиента. Или проанализируйте полный вывод в Python.
4 )Используйте интерфейс DBUS Pulseaudio из Python. Это потребует некоторого программирования.
Я бы не советовал использовать Python с pexpect
, чтобы каким-то образом изменить громкость через пользовательский интерфейс, это выглядит как ужасный хлам и на самом деле не является «более высоким уровнем».
Если у вас есть доступ только через терминал, как у меня, вам нужно добавить следующую строку в файл конфигурации libreoffice в папке пользователя, которая будет использоваться для преобразования файлов odt. В моем случае/home/www-data/.config/libreoffice/4/user/registrymodifications.xcu
:
<item
oor:path="/org.openoffice.Office.Common/Filter/PDF/Export"><prop
oor:name="IsSkipEmptyPages"
oor:op="fuse"><value>false</value></prop></item>