Linux: Воспроизведение звука с запускаемого systemd демона - PullRequest
0 голосов
/ 04 марта 2019

В моем Ubuntu 18.10 у меня при запуске системы запускается демон через systemd, он получает доступ ко многим датчикам через последовательный порт и USB.

При определенных условиях требуется воспроизводить звук через звук по умолчаниюраковина, но всякий раз, когда он пытается, демон выходит.

Состояние systemctl показывает следующее сообщение:

PulseAudioService: pa_context_connect() failed 
Assertion 'c' failed at pulse/context.c:1062, function pa_context_get_state(). Aborting.

Если я запускаю демона из командной строки, звук воспроизводится без проблем., но если он запускается через запуск / перезапуск systemctl, он падает всякий раз, когда должен воспроизводиться звук.

Это заставило меня поверить, что проблема связана с некоторыми настройками ресурса в файле .service, но яневозможно найти настройку для решения проблемы.

Мой файл .service:

[Unit]  
Description=Vejrstation server  
After=mysql.service  

[Install]  
WantedBy=default.target   

[Service]  
type=forking
RemainAfterExit=yes 
ExecStart=/usr/bin/vejrstationd 
Restart=on-failure 
DeviceAllow=char-alsa rw  
DeviceAllow=char-ttyACM rw  
DeviceAllow=char-ttyUSB rw  
DeviceAllow=char-ttyS rw

Есть идеи?


После долгих исследований я достигвывод, что эта проблема, вероятно, не проблема программирования, а скорее проблема конфигурации systemd или pulseaudio, так что это, вероятно, не тот форум.

...